Skip to content
  1. Jan 25, 2013
    • Greg Clayton's avatar
      <rdar://problem/13069948> · c7bece56
      Greg 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
      c7bece56
  2. Jan 23, 2013
    • Enrico Granata's avatar
      <rdar://problem/12711206> · f7b1a34e
      Enrico Granata authored
      Extending ValueObjectDynamicValue so that it stores a TypeAndOrName instead of a TypeSP.
      This change allows us to reflect the notion that a ValueObject can have a dynamic type for which we have no debug information.
      Previously, we would coalesce that to the static type of the object, potentially losing relevant information or even getting it wrong.
      This fix ensures we can correctly report the class name for Cocoa objects whose types are hidden classes that we know nothing about (e.g. __NSArrayI for immutable arrays).
      As a side effect, our --show-types argument to frame variable no longer needs to append custom dynamic type information.
      
      llvm-svn: 173216
      f7b1a34e
  3. Jan 17, 2013
  4. Jan 16, 2013
  5. Jan 15, 2013
  6. Jan 12, 2013
    • Jason Molenda's avatar
      Add ifdef LLDB_DISABLE_PYTHON around newly added use of · 1a100cd7
      Jason Molenda authored
      AddCXXSummary in FormatManager::LoadSystemFormatters(); 
      that function pulls in code that assumes python; can't
      be used without the ifdef.
      
      llvm-svn: 172300
      1a100cd7
    • Enrico Granata's avatar
      <rdar://problem/12239827> · e274088d
      Enrico Granata authored
      Making a summary for std::wstring as provided by libstdc++ along with a relevant test case
      
      llvm-svn: 172286
      e274088d
    • Enrico Granata's avatar
      <rdar://problem/12239827> · 3309d881
      Enrico Granata authored
      Providing a data formatter for libc++ std::wstring
      In the process, refactoring the std::string data formatter to be written in C++ so that commonalities between the two can be exploited
      Also, providing a new API on the ValueObject to navigate a hierarchy by index-path
      Lastly, an appropriate test case is included
      
      llvm-svn: 172282
      3309d881
    • Greg Clayton's avatar
      <rdar://problem/12973809> · 91c0e749
      Greg Clayton authored
      Fixed an issue with the auto loading of script resources in debug info files. Any platform can add support for this, and on MacOSX we allow dSYM files to contain python modules that get automatically loaded when a dSYM file is associated with an executable or shared library. 
      
      The modifications will now:
      - Let the module locate the symbol file naturally instead of using a function that only works in certain cases. This helps us to locate the script resources as long as the dSYM file can be found.
      - Don't try and do any of this if the script interpreter has scripting disabled.
      - Allow more than one scripting resource to be found in a symbol file by returning the list
      - Load the scripting resources when a symbol file is added via the "target symbols add" command.
      - Be smarter about matching the dSYM mach-o file to an existing executable in the target images by stripping extensions on the symfile basname if needed.
      
      llvm-svn: 172275
      91c0e749
  7. Jan 11, 2013
    • Greg Clayton's avatar
      <rdar://problem/12990038> · 1e0c8840
      Greg Clayton authored
      Fixed an issue where the platform auto select code was changing the architecture and causing the wrong architecture to be assigned to the target.
      
      llvm-svn: 172251
      1e0c8840
    • Greg Clayton's avatar
      Modified Value.cpp to share the code that gets the values as bytes... · c0e8a85e
      Greg Clayton authored
      Modified Value.cpp to share the code that gets the values as bytes (Value::GetValueAsData()) so now Value::ResolveValue() doesn't do its own thing by reading memory directly.
      
      Also modified the Value class so that you can evaluate expressions without a process, yet with some sections loaded in the target. This allows casting pointers that are in data sections to types and being able to evaluate expressions in the data. For example:
      
      (lldb) target create a.out
      (lldb) target modules load --file a.out --slide 0
      ... find address of something in data ...
      (lldb) script
      expr_opts = lldb.SBExpressionOptions()
      v = lldb.target.EvaluateExpression('(foo *)0x1230000', expr_opts)
      print v
      vv = lldb.value(v)
      print v.pt.x
      
      Above we were able to cast a pointer to an address which was in a.out's data
      section and print out entire structures and navigate to the child ivars of the expression.
      
      llvm-svn: 172227
      c0e8a85e
    • Enrico Granata's avatar
      Making the Unicode formatters visually nicer by using the same prefix... · 2500e767
      Enrico Granata authored
      Making the Unicode formatters visually nicer by using the same prefix characters as the compiler expects in C++ code
      Also, marking the Unicode data formatters test cases as dataformatter related for the benefit for the --category flag in dotest.py
      
      llvm-svn: 172167
      2500e767
    • Enrico Granata's avatar
      <rdar://problem/11383764> · 3835204a
      Enrico Granata authored
      Making a data formatter for wchar_t *
      
      llvm-svn: 172165
      3835204a
  8. Jan 10, 2013
    • Enrico Granata's avatar
      <rdar://problem/12725746> · f68df12f
      Enrico Granata authored
      Providing data formatters for char16_t* and char32_t* C++11-style Unicode strings
      Using this chance to refactor the UTF data reader used for data formatters for added generality
      Added a relevant test case
      
      llvm-svn: 172119
      f68df12f
  9. Jan 09, 2013
  10. Jan 08, 2013
    • Greg Clayton's avatar
      <rdar://problem/12953853> · c1b2ccfd
      Greg Clayton authored
      Setting breakpoints using "breakpoint set --selector <SEL>" previously didn't when there was no dSYM file.
      
      Also fixed issues in the test suite that arose after fixing the bug.
      
      Also fixed the log channels to properly ref count the log streams using weak pointers to the streams. This fixes a test suite problem that would happen when you specified a full path to the compiler with the "--compiler" option.
      
      llvm-svn: 171816
      c1b2ccfd
  11. Jan 05, 2013
    • Jason Molenda's avatar
      <rdar://problem/12389806> · 7a37c1ec
      Jason Molenda authored
      Have the disassembler's Instruction::Dump always insert at least
      one space character between an opcode and its arguments, don't let
      a long opcode name abut the arguments.
      
      llvm-svn: 171561
      7a37c1ec
  12. Dec 14, 2012
  13. Dec 13, 2012
  14. Dec 11, 2012
  15. Dec 10, 2012
    • Greg Clayton's avatar
      <rdar://problem/11844604> · 3b188b17
      Greg Clayton authored
      When displaying function.name-with-args format will now print "varname=<unavailable>" instead of omitting argument names and values when there is an error reading the value.
      
      llvm-svn: 169781
      3b188b17
    • Daniel Malea's avatar
      Enable RTTI for liblldbCore.a when GCC is the compiler · 48b917bc
      Daniel Malea authored
      - gcc does not like -fno-rtti mixed with dynamic_cast<> (in cxa_demangle.cpp)
      
      llvm-svn: 169767
      48b917bc
    • Enrico Granata's avatar
      <rdar://problem/12848118> · ecbabe6d
      Enrico Granata authored
      Making MightHaveChildren() always return true regardless for our own data formatters
      This is meant to optimize performance for common most-often-not-empty container classes
      
      llvm-svn: 169759
      ecbabe6d
    • Enrico Granata's avatar
      <rdar://problem/12817233> · 37c3e910
      Enrico Granata authored
      Change the wording of NSNumber summary from absurd value to unexpected value when a tagged pointer shows up that does not match our knowledge of the internals
      
      llvm-svn: 169751
      37c3e910
  16. Dec 07, 2012
  17. Dec 06, 2012
  18. Dec 05, 2012
  19. Dec 04, 2012
    • Sean Callanan's avatar
      In the data formatters, if we know the result · c7cb3145
      Sean Callanan authored
      type of an Objective-C selector, don't bother
      making the expression parser resolve it all over
      again.  Just send the message straight to the
      object pointer as if it were an id, and cast the
      result.
      
      <rdar://problem/12799087>
      
      llvm-svn: 169300
      c7cb3145
    • Greg Clayton's avatar
      <rdar://problem/12798131> · 3bcdfc0e
      Greg Clayton authored
      Cleaned up the option parsing code to always pass around the short options as integers. Previously we cast this down to "char" and lost some information. I recently added an assert that would detect duplicate short character options which was firing during the test suite.
      
      This fix does the following:
      - make sure all short options are treated as "int"
      - make sure that short options can be non-printable values when a short option is not required or when an option group is mixed into many commands and a short option is not desired
      - fix the help printing to "do the right thing" in all cases. Previously if there were duplicate short character options, it would just not emit help for the duplicates
      - fix option parsing when there are duplicates to parse options correctly. Previously the option parsing, when done for an OptionGroup, would just start parsing options incorrectly by omitting table entries and it would end up setting the wrong option value
      
      llvm-svn: 169189
      3bcdfc0e
  20. Dec 03, 2012
  21. Nov 30, 2012
  22. Nov 29, 2012
Loading