Skip to content
  1. Sep 04, 2012
  2. Sep 01, 2012
  3. Aug 31, 2012
    • Greg Clayton's avatar
      <rdar://problem/12202862> · 7036425c
      Greg Clayton authored
      Added a fix for incorrect dynamic typing. Before when asking if a C++ class could be dynamic, we would answer yes for incomplete C++ classes. This turned out to have issues where if a class was not virtual, yet had its first ivar be an instance of a virtual class, we would incorrectly say that a class was virtual and we would downcast it to be a pointer to the first ivar. We now ask the class to complete itself prior to answering the question. We need to test the effects on memory of this change prior to submission. It is the safest and best fix, but it does have a potential downside of higher memory consumption.
      
      llvm-svn: 163014
      7036425c
    • Greg Clayton's avatar
      Fix indentation. · facebca6
      Greg Clayton authored
      llvm-svn: 163011
      facebca6
    • Greg Clayton's avatar
      Added command lists that can be executed on launch, stop, crash and exit.... · 97e44a0c
      Greg Clayton authored
      Added command lists that can be executed on launch, stop, crash and exit. Added code to auto import the lldb module that we can use on many stand alone modules.
      
      llvm-svn: 162972
      97e44a0c
    • Greg Clayton's avatar
      c769722a
  4. Aug 30, 2012
    • Greg Clayton's avatar
      Added the ability to verify the LLDB API on MacOSX using a script. Usage is: · 0274766b
      Greg Clayton authored
      ./verify_api.py --library ./LLDB.framework/LLDB --api-regex lldb --arch x86_64 /Applications/Xcode.app/Contents/PlugIns/DebuggerLLDB.ideplugin/Contents/MacOS/DebuggerLLDB
      
      So you specify a library with the "--library" option, then you specify an API regular expression that you want to match the executables against with "--api-regex <regex>", here we specify "lldb" to catch all undefined external API functions from the binary we want to test, then we specify the architectures to check with "--arch <arch>" (this can be specified more than once), and you give one or more executables.
      
      llvm-svn: 162941
      0274766b
    • Greg Clayton's avatar
      OptionValueFileSpec had an accessor to read the contents of the file and... · 0b0b512f
      Greg Clayton authored
      OptionValueFileSpec had an accessor to read the contents of the file and return the data. This can end up being used to get the string contents of a text file and could end up not being NULL terminated. I added accessors to get the file contents raw, or with a null terminator. Added the needed calls to make this happen in the FileSpec and File classes.
      
      llvm-svn: 162921
      0b0b512f
    • Sean Callanan's avatar
      Fixed a potential crash in PlatformLinux if · e635db49
      Sean Callanan authored
      ModuleList::GetSharedModule() returned NULL.
      
      <rdar://problem/12182971>
      
      llvm-svn: 162871
      e635db49
  5. Aug 29, 2012
    • Greg Clayton's avatar
      <rdar://problem/11757916> · 1f746071
      Greg Clayton authored
      Make breakpoint setting by file and line much more efficient by only looking for inlined breakpoint locations if we are setting a breakpoint in anything but a source implementation file. Implementing this complex for a many reasons. Turns out that parsing compile units lazily had some issues with respect to how we need to do things with DWARF in .o files. So the fixes in the checkin for this makes these changes:
      - Add a new setting called "target.inline-breakpoint-strategy" which can be set to "never", "always", or "headers". "never" will never try and set any inlined breakpoints (fastest). "always" always looks for inlined breakpoint locations (slowest, but most accurate). "headers", which is the default setting, will only look for inlined breakpoint locations if the breakpoint is set in what are consudered to be header files, which is realy defined as "not in an implementation source file". 
      - modify the breakpoint setting by file and line to check the current "target.inline-breakpoint-strategy" setting and act accordingly
      - Modify compile units to be able to get their language and other info lazily. This allows us to create compile units from the debug map and not have to fill all of the details in, and then lazily discover this information as we go on debuggging. This is needed to avoid parsing all .o files when setting breakpoints in implementation only files (no inlines). Otherwise we would need to parse the .o file, the object file (mach-o in our case) and the symbol file (DWARF in the object file) just to see what the compile unit was.
      - modify the "SymbolFileDWARFDebugMap" to subclass lldb_private::Module so that the virtual "GetObjectFile()" and "GetSymbolVendor()" functions can be intercepted when the .o file contenst are later lazilly needed. Prior to this fix, when we first instantiated the "SymbolFileDWARFDebugMap" class, we would also make modules, object files and symbol files for every .o file in the debug map because we needed to fix up the sections in the .o files with information that is in the executable debug map. Now we lazily do this in the DebugMapModule::GetObjectFile()
      
      Cleaned up header includes a bit as well.
      
      llvm-svn: 162860
      1f746071
    • Jason Molenda's avatar
      Instead of using re.split and requiring two spaces between the "regname: regvalue" pairs, · e5ad3859
      Jason Molenda authored
      use re.findall and specify the regexp of regname: regvalue that we're interested in.
      <rdar://problem/12188752> 
      
      llvm-svn: 162806
      e5ad3859
    • Johnny Chen's avatar
      rdar://problem/11374963 · 1083b0de
      Johnny Chen authored
      Fix a subtle ArchSpec::cores_match() logic issue which prevents the add-dsym command
      to add a debug symbol file to one of the target's current modules.
      
      llvm-svn: 162802
      1083b0de
  6. Aug 28, 2012
  7. Aug 27, 2012
  8. Aug 25, 2012
    • Filipe Cabecinhas's avatar
      Added SBDebugger's log callbacks to Python-land · c5041918
      Filipe Cabecinhas authored
      - Tweaked a parameter name in SBDebugger.h so my typemap will catch it;
      - Added a SBDebugger.Create(bool, callback, baton) to the swig interface;
      - Added SBDebugger.SetLoggingCallback to the swig interface;
      - Added a callback utility function for log callbacks;
      - Guard against Py_None on both callback utility functions;
      
      - Added a FIXME to the SBDebugger API test;
      - Added a __del__() stub for SBDebugger.
      
      We need to be able to get both the log callback and baton from an
      SBDebugger if we want to protect against memory leaks (or make the user
      responsible for holding another reference to the callback).
      Additionally, it's impossible to revert from a callback-backed log
      mechanism to a file-backed log mechanism.
      
      llvm-svn: 162633
      c5041918
    • Jim Ingham's avatar
      Add the "expr" command to the gdb command equivalents. · b520a104
      Jim Ingham authored
      llvm-svn: 162617
      b520a104
  9. Aug 24, 2012
Loading