- Mar 29, 2012
-
-
Enrico Granata authored
Fixing an issue where Unicode characters in an NSString were printed as escape sequences by the summary provider shipping with LLDB - Added relevant test case code. Bonus points for identifying the source of the quotes :-) llvm-svn: 153624
-
Enrico Granata authored
Fixing an issue where saying 'po foo' made both the summary and the description for foo come out. If one is po'ing something they most probably only care about the description - We will not omit the summary llvm-svn: 153608
-
- Mar 28, 2012
-
-
Greg Clayton authored
Converted commented out printf statements for dynamic type logging to use the log for "log enabe lldb types". llvm-svn: 153583
-
Greg Clayton authored
llvm-svn: 153582
-
Sean Callanan authored
with recent Clang. Clang is now stricter about presence of complete types and about use of the "template" keyword in C++ for template-dependent types. llvm-svn: 153563
-
Enrico Granata authored
llvm-svn: 153559
-
- Mar 27, 2012
-
-
Enrico Granata authored
llvm-svn: 153541
-
Johnny Chen authored
llvm-svn: 153540
-
Greg Clayton authored
indicates that the section is thread specific. Any functions the load a module given a slide, will currently ignore any sections that are thread specific. lldb_private::Section now has: bool Section::IsThreadSpecific () const { return m_thread_specific; } void Section::SetIsThreadSpecific (bool b) { m_thread_specific = b; } The ELF plug-in has been modified to set this for the ".tdata" and the ".tbss" sections. Eventually we need to have each lldb_private::Thread subclass be able to resolve a thread specific section, but for now they will just not resolve. The code for that should be trivual to add, but the address resolving functions will need to be changed to take a "ExecutionContext" object instead of just a target so that thread specific sections can be resolved. llvm-svn: 153537
-
Greg Clayton authored
1 - sections only get a valid VM size if they have SHF_ALLOC in the section flags 2 - symbol names are marked as mangled if they start with "_Z" Also fixed the DWARF parser to correctly use the section file size when extracting the DWARF. llvm-svn: 153496
-
Enrico Granata authored
Synthetic values are now automatically enabled and active by default. SBValue is set up to always wrap a synthetic value when one is available. A new setting enable-synthetic-value is provided on the target to disable this behavior. There also is a new GetNonSyntheticValue() API call on SBValue to go back from synthetic to non-synthetic. There is no call to go from non-synthetic to synthetic. The test suite has been changed accordingly. Fallout from changes to type searching: an hack has to be played to make it possible to use maps that contain std::string due to the special name replacement operated by clang Fixing a test case that was using libstdcpp instead of libc++ - caught as a consequence of said changes to type searching llvm-svn: 153495
-
rdar://problem/11113279Greg Clayton authored
Fixed type lookups to "do the right thing". Prior to this fix, looking up a type using "foo::bar" would result in a type list that contains all types that had "bar" as a basename unless the symbol file was able to match fully qualified names (which our DWARF parser does not). This fix will allow type matches to be made based on the basename and then have the types that don't match filtered out. Types by name can be fully qualified, or partially qualified with the new "bool exact_match" parameter to the Module::FindTypes() method. This fixes some issue that we discovered with dynamic type resolution as well as improves the overall type lookups in LLDB. llvm-svn: 153482
-
Johnny Chen authored
If creation of watchpoint failed on the device, make sure the list maintained by the target reflects that by cleaning it up. llvm-svn: 153477
-
- Mar 26, 2012
-
-
rdar://problem/11022964Sean Callanan authored
Patched LLVM to handle generic i386 relocations. This avoids some sudden termination problems on i386 where the JIT would exit() out reporting "Invalid CPU type!" llvm-svn: 153467
-
- Mar 25, 2012
-
-
Eric Christopher authored
if it's there and we may not have a cached die yet. This fixes a bunch of false positives on "die has no decl". llvm-svn: 153417
-
Eric Christopher authored
llvm-svn: 153416
-
- Mar 24, 2012
-
-
Jason Molenda authored
llvm-svn: 153374
-
Jason Molenda authored
llvm-svn: 153371
-
Johnny Chen authored
llvm-svn: 153365
-
Enrico Granata authored
Adding a new API call IsTypeComplete() to SBType. This call is meant to check if the type has been previously completed or not (which is mostly interesting from a performance point of view) Adding a test case that checks that we do not complete types before due time. This should help us track cases similar to the cascading data formatters. llvm-svn: 153363
-
rdar://problem/11101372Sean Callanan authored
We now reject binaries built with LTO and print an error, rather than crashing later while trying to parse them. llvm-svn: 153361
-
- Mar 23, 2012
-
-
Johnny Chen authored
llvm-svn: 153301
-
Johnny Chen authored
We do this by delegating to two available Watchpoint Register Pairs (wvr, wcr). With each pair handling the 4 bytes of (uint64_t)variable. llvm-svn: 153300
-
Greg Clayton authored
llvm-svn: 153298
-
Greg Clayton authored
Fixed up the command so that it doesn't dump the first arguments when run from the command line which was causing this script to dump the script itself. llvm-svn: 153294
-
Greg Clayton authored
parse the output from "log enable --timestamp ...." and converts it to be relative to the first timestamp and shows the time deltas between log lines. This can also be used as a stand along script outside of lldb: ./delta.py log.txt llvm-svn: 153288
-
- Mar 22, 2012
-
-
rdar://problem/11095005Greg Clayton authored
Fixed a performance regression when dynamic types are enable where we would ask a C++ type if it can possibly be dynamic. Previously we would force the type to complete itself and then anwwer the question definitively. Now we ask the type if it is already complete and only definitively answer the question for completed types and just say "yes" for non-complete C++ types. We also always now answer yes for Objective C classes and do not complete those types either. llvm-svn: 153284
-
Jason Molenda authored
NULL instead of false if no valid name (fixes compiler warning). llvm-svn: 153282
-
Sean Callanan authored
- Addresses with no description were given comments, leading to useless comments like "; , " - Addresses weren't resolved with respect to the correct module. llvm-svn: 153274
-
Johnny Chen authored
that the inferior cannot execute past the watchpoint-triggering instruction. The solution is disable the watchpoint before resuming the inferior and make it hardware single step; when the inferior stops again due to single step, re-enable the watchpoint and disable the single step to make the inferior able to continue again without obstacle. rdar://problem/9667960 llvm-svn: 153273
-
Enrico Granata authored
This is the feature that allowed the user to have things like: class Base { ... }; class Derived : public Base { ... }; and have formatters defined for Base work automatically for Derived. This feature turned out to be too expensive since it requires completing types. This patch takes care of removing cascading (other than typedefs chain cascading), updating the test suite accordingly, and adding required Cocoa class names to keep the AppKit formatters working llvm-svn: 153272
-
Johnny Chen authored
llvm-svn: 153268
-
Greg Clayton authored
when using the "frame variable" or "target variable" commands. llvm-svn: 153266
-
Sean Callanan authored
crash in disassembly of VST instructions. llvm-svn: 153265
-
Johnny Chen authored
member variables were not reset appropriately. llvm-svn: 153239
-
Sean Callanan authored
not properly print the load addresses for PC-relative jumps. llvm-svn: 153233
-
Greg Clayton authored
them both installed with the LLVM MC version being the default. I renamed the name of the LLVM MC disassembler plug-in to "llvm-mc" and the LLVM enhanced disassembly plug-in to "llvm-edis" and they can both be installed for now. To use the "llvm-edis" disassembler, you can just specify it while disassembling: (lldb) disassemble --plugin llvm-edis --name main (lldb) disassemble --plugin llvm-mc --name main This will allow us to compare the output of the two disassembler and eventually deprecate the old one when the new one is ready. But it does use the new disassembler by default so we continue to test it on a daily basis. llvm-svn: 153231
-
Johnny Chen authored
However, the debugserver cannot get past the instruction which triggered the watchpoint. So a workaround is in place for the time being which disables the triggered watchpoint before resuming. Lots of commented out printf's remain in the source which needs to be cleaned up. WIP rdar://problem/9667960 llvm-svn: 153228
-
- Mar 21, 2012
-
-
Greg Clayton authored
llvm-svn: 153223
-
Johnny Chen authored
WIP for rdar://problem/9667960 llvm-svn: 153206
-