- Feb 16, 2013
-
-
Sean Callanan authored
- removed an unnecessary variable - fixed an issue where we sometimes wrote too much data into a buffer - made the recognition of variables as "this" a little more conservative <rdar://problem/13216268> llvm-svn: 175318
-
- Feb 14, 2013
-
-
Filipe Cabecinhas authored
llvm-svn: 175213
-
Greg Clayton authored
llvm-svn: 175108
-
- Feb 13, 2013
-
-
rdar://problem/13210494Greg Clayton authored
Parse objective C information as efficiently as possible and without taking dangerous runtime locks. Reworked the way objective C information is parsed by: 1 - don't read all class names up front, this is about 500K of data with names 2 - add a 32 bit hash map that maps a hash of a name to the Class pointer (isa) 3 - Improved name lookups by using the new hash map 4 - split up reading the objc runtime info into dynamic and shared cache since the shared cache only needs to be read once. 5 - When reading all isa values, also get the 32 bit hash instead of the name 6 - Read names lazily now that we don't need all names up front 7 - Allow the hash maps to not be there and still have this function correctly There is dead code in here with all of the various methods I tried. I want to check this in first to not lose any of it in case we need to revert to any of the extra code. I will promptly cleanup and commit again. llvm-svn: 175101
-
Sean Callanan authored
builtins. <rdar://problem/13204027> llvm-svn: 175091
-
- Feb 12, 2013
-
-
Sean Callanan authored
changing the ClangASTSource to return a bool instead of returning a list of results. Our testsuite mostly works with this change, but some minor issues may remain both on LLDB's side and on Clang's side. llvm-svn: 174949
-
Sean Callanan authored
up variables in the current stack frame to avoid mutual recursion between the expression parser and the synthetic child providers. Variables should only be looked up in a very simple way, using no synthetic anything. <rdar://problem/13173454> llvm-svn: 174947
-
- Feb 09, 2013
-
-
Jim Ingham authored
Reworked the way Process::RunThreadPlan and the ThreadPlanCallFunction interoperate to fix problems where hitting auto-continue signals while running a thread plan would cause us to lose control of the debug session. <rdar://problem/12993641> llvm-svn: 174793
-
- Feb 07, 2013
-
-
- Feb 01, 2013
-
-
Jim Ingham authored
be "signed char" not "int". <rdar://problem/13131126> llvm-svn: 174209
-
Sean Callanan authored
support reporting "this" as a templated class. The expression parser wraps expressions in C++ methods as methods with the signature $__lldb_class::$__lldb_expr(...) and previously responded to clang's queries about $__lldb_class with the type of *this. This didn't work if *this was a ClassTemplateSpecializationDecl because ClassTemplateSpecializationDecls can't be the result of simple name queries. Instead what we do now is respond that $__lldb_class is a typedef and that the target of the typedef is the (potentially templated) type of *this. That is much more robust. Thanks to John McCall for key insights. <rdar://problem/10987183> llvm-svn: 174153
-
- Jan 31, 2013
-
-
Jim Ingham authored
Add "thread return -x" to unwind the innermost user called expression (if you happen to have stopped in it due to a crash.) Make the message when you hit an crash while evaluating an expression a little clearer, and mention "thread return -x". rdar://problem/13110464 llvm-svn: 174095
-
- Jan 29, 2013
-
-
rdar://problem/13107904Greg Clayton authored
wchar_t causes problem with certain compilers. Removing it for now. llvm-svn: 173823
-
Greg Clayton authored
llvm-svn: 173731
-
- Jan 28, 2013
-
-
Greg Clayton authored
Always define types from stdint.h so they are always available for use in expressions no matter what debug info you have. Types added are: int8_t uint8_t int16_t uint16_t int32_t uint32_t int64_t uint64_t intptr_t uintptr_t size_t ptrdiff_t whar_t llvm-svn: 173724
-
- Jan 25, 2013
-
-
rdar://problem/13069948Greg Clayton authored
Major fixed to allow reading files that are over 4GB. The main problems were that the DataExtractor was using 32 bit offsets as a data cursor, and since we mmap all of our object files we could run into cases where if we had a very large core file that was over 4GB, we were running into the 4GB boundary. So I defined a new "lldb::offset_t" which should be used for all file offsets. After making this change, I enabled warnings for data loss and for enexpected implicit conversions temporarily and found a ton of things that I fixed. Any functions that take an index internally, should use "size_t" for any indexes and also should return "size_t" for any sizes of collections. llvm-svn: 173463
-
- Jan 22, 2013
-
-
Sean Callanan authored
Avoids an error about an ambiguous constructor call. llvm-svn: 173118
-
- Jan 19, 2013
-
-
Sean Callanan authored
in an Objective-C class method. Before, errors of the form error: cannot find interface declaration for '$__lldb_objc_class' would appear when running any expression when the current frame is a block that captures 'self' from an Objective-C class method. <rdar://problem/12905561> llvm-svn: 172880
-
- Jan 18, 2013
-
-
Sean Callanan authored
DW_AT_const_value instead of a location. Also added a testcase covering "frame variable," "expr" using the IR interpreter, and "expr" using the LLVM JIT. <rdar://problem/12978195> llvm-svn: 172848
-
- Jan 16, 2013
-
-
Sean Callanan authored
handling multiple clients. However, occasionally an expression must be run in the service of another expression, and in this case two parsers need to access the same list of persistent variables. To allow this, persistent variables now provide state for multiple parsers, and parsers must allocate, access, and deallocate this state by providing their own ID (at the moment, simply the value of the "this" pointer). <rdar://problem/12914539> llvm-svn: 172573
-
- Jan 15, 2013
-
-
Jim Ingham authored
Separated the "expr --unwind-on-error" behavior into two parts, actual errors (i.e. crashes) which continue to be controlled by the --unwind-on-error flag, and --ignore-breakpoint which separately controls behavior when a called function hits a breakpoint. For breakpoints, we don't unwind, we either stop, or ignore the breakpoint, which makes more sense. Also make both these behaviors globally settable through "settings set". Also handle the case where a breakpoint command calls code that ends up re-hitting the breakpoint. We were recursing and crashing. Now we just stop without calling the second command. <rdar://problem/12986644> <rdar://problem/9119325> llvm-svn: 172503
-
- Jan 14, 2013
-
-
Sean Callanan authored
JIT it again. llvm-svn: 172477
-
- Jan 09, 2013
-
-
Sean Callanan authored
<rdar://problem/12978619> llvm-svn: 172013
-
- Jan 02, 2013
-
-
Chandler Carruth authored
llvm-svn: 171381
-
Chandler Carruth authored
migration in r171366. I don't know anything about lldb, but a force run of the build bot indicated it would need this patch. I'll try to watch the build bot to get it green. llvm-svn: 171374
-
- Dec 21, 2012
-
-
Sean Callanan authored
the IR interpreter. <rdar://problem/12921700> llvm-svn: 170934
-
Sean Callanan authored
The results from Clang name lookups changed to be ArrayRefs, so I had to change the way we check for the presence of a result and the way we iterate across results. llvm-svn: 170927
-
- Dec 20, 2012
-
-
Sean Callanan authored
for reporting class types from Objective-C runtime class symbols. Instead, LLDB now queries the Objective-C runtime for class types. We have also added a (minimal) Objective-C runtime type vendor for Objective-C runtime version 1, to prevent regressions when calling class methods in the V1 runtime. Other components of this fix include: - We search the Objective-C runtime in a few more places. - We enable enumeration of all members of Objective-C classes, which Clang does in certain circumstances. - SBTarget::FindFirstType and SBTarget::FindTypes now query the Objective-C runtime as needed. - I fixed several test cases. <rdar://problem/12885034> llvm-svn: 170601
-
- Dec 18, 2012
-
-
Sean Callanan authored
the AST result synthesizer's logging. <rdar://problem/12889053> llvm-svn: 170396
-
- Dec 14, 2012
-
-
Greg Clayton authored
Fix a parser_type to get created with the right AST, and also make variables made from symbols to not be "void * const", but just "void *". llvm-svn: 170165
-
- Dec 11, 2012
-
-
Sean Callanan authored
"self" when those pointers are in registers. Previously in this case the IRInterpreter would handle them just as if the user had typed in "$rdi", which isn't safe because $rdi is passed in through the argument struct. Now we correctly break out all three cases (i.e., normal variables in registers, $reg, and this/self), and handle them in a way that's a little bit easier to read and change. This results in more accurate printing of "this" and "self" pointers all around. I have strengthened the optimized-code test case for Objective-C to ensure that we catch regressions in this area reliably in the future. <rdar://problem/12693963> llvm-svn: 169924
-
- Dec 07, 2012
-
-
Daniel Malea authored
- remove unused members - add NO_PEDANTIC to selected Makefiles - fix return values (removed NULL as needed) - disable warning about four-char-constants - remove unneeded const from operator*() declaration - add missing lambda function return types - fix printf() with no format string - change sizeof to use a type name instead of variable name - fix Linux ProcessMonitor.cpp to be 32/64 bit friendly - disable warnings emitted by swig-generated C++ code Patch by Matt Kopec! llvm-svn: 169645
-
Jim Ingham authored
Now that we set ThreadPlanCallFunction to private in the constructor, it is confusing that we set it again in client code after creating the plans. So remove those unnecessary calls. llvm-svn: 169625
-
- Dec 06, 2012
-
-
Sean Callanan authored
of the "self"/"this" pointer for the current stack frame before wrapping expressions in C++ or Objective-C methods. This works around bad debug info where the compiler emits a "this" or "self" but doesn't give any way to find its location. <rdar://problem/12809985> llvm-svn: 169461
-
- Dec 05, 2012
-
-
Daniel Malea authored
- add new header lldb-python.h to be included before other system headers - short term fix (eventually python dependencies must be cleaned up) Patch by Matt Kopec! llvm-svn: 169341
-
- Dec 01, 2012
-
-
Sean Callanan authored
interpreter. <rdar://problem/12657742> llvm-svn: 169063
-
Sean Callanan authored
whether the current frame is in a C++/Objective-C class or instance method. llvm-svn: 169062
-
- Nov 29, 2012
-
-
Daniel Malea authored
- use macros from inttypes.h for format strings instead of OS-specific types Patch from Matt Kopec! llvm-svn: 168945
-
- Nov 28, 2012
-
-
Sean Callanan authored
a type, and we find it in the origin for that type, don't look anywhere else; just report it. <rdar://problem/12675970> llvm-svn: 168766
-
- Nov 27, 2012
-
-
rdar://problem/12106825Greg Clayton authored
Allow the expression parser to see more than just data symbols. We now accept any symbol that has an address. We take precautions to only accept symbols by their mangled or demangled names only if the demangled name was not synthesized. If the demangled name is synthesized, then we now mark symbols accordingly and only compare against the mangled original name. llvm-svn: 168668
-