History log of /external/lldb/examples/python/symbolication.py
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
9bb6d255db5fb13c983cb0fa470248fc1242c05f 27-Jun-2013 Greg Clayton <gclayton@apple.com> Update the platform options help strings.



git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@185028 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/examples/python/symbolication.py
4bb82ac1db085a11d22df3dff6def07119643255 05-Apr-2013 Greg Clayton <gclayton@apple.com> <rdar://problem/13477795>

crashlog.py was always subtracting 1 to point to the previous instruction when symbolicating ARM backtraces. Many times the backtraces will include bit zero set to 1 to indicate thumb, so we need to make sure we mask the address and then backup one for non frame zero frames.



git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@178812 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/examples/python/symbolication.py
d6445b00b6895fcd2a93f8c42fe4cea2d0fcd783 25-Feb-2013 Greg Clayton <gclayton@apple.com> Added missing lldb module namespace.



git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@176049 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/examples/python/symbolication.py
afa3138a5057cd2959183ebad0dd07a1b396297f 25-Feb-2013 Greg Clayton <gclayton@apple.com> <rdar://problem/13286937>

Make sure to not look in self.images when we have a symbolicator with a live process.



git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@176040 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/examples/python/symbolication.py
49ce8969d3154e1560106cfe530444c09410f217 29-Aug-2012 Greg Clayton <gclayton@apple.com> <rdar://problem/11757916>

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.



git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@162860 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/examples/python/symbolication.py
0d0f56d5b81afb0f3d2e71c53947658a4c667f35 07-Jul-2012 Greg Clayton <gclayton@apple.com> Make const result value objects able to return dynamic types.

Modified the heap.py to be able to correctly indentify the exact ivar for the "ptr_refs" command no matter how deep the ivar is in a class hierarchy. Also fixed the ability for the heap command to symbolicate the stack backtrace when MallocStackLogging is set in the environment and the "--stack" option was specified.



git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@159883 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/examples/python/symbolication.py
2b69a2bac83a9163903934eedd1a2264e8558f8b 28-Jun-2012 Greg Clayton <gclayton@apple.com> Listen to the "--verbose" flag when running "crashlog" and if verbose is enabled, then dump full paths to source files and modules.

Changed much of the output that was coming out with "--verbose" over to use the new "--debug" flag.



git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@159363 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/examples/python/symbolication.py
1b62f5967aa04ebde2ae163f12c739a6740596e2 05-Jun-2012 Greg Clayton <gclayton@apple.com> Cleaned up some stuff in symbolication where we can now lazily get images when symbolicating after loading a crash log file.

Added colorization to the gdbremote.py output and also added the ability to symbolicate the addresses in registers.



git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@157965 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/examples/python/symbolication.py
d8056e20e5a06bd0f7185f962fda3f5a179f71ab 11-May-2012 Greg Clayton <gclayton@apple.com> Modified the symbolication.Image object to store its uuid as a uuid.UUID object and made an accessor for getting a normalized UUID value out of the image object.

Modified the crashlog darwin module to always create a uuid.UUID object when making the symbolication.Image objects. Also modified it to handle some more types of crash log files and improved the register reading for thread registers of crashed threads.




git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@156596 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/examples/python/symbolication.py
9d01042727a9c52cbab76237c8d290f2e337067d 04-May-2012 Greg Clayton <gclayton@apple.com> Added an interactive mode to the "crashlog" command so that we can look at multiple crash logs at once and do some data mining. Added an interactive command prompt that allows you to do:

% PYTHONPATH=./build/Debug/LLDB.framework/Resources/Python ; ./build/Debug//LLDB.framework/Resources/Python/lldb/macosx/crashlog.py -i ~/Downloads/crashes2/*.crash )

then you get an interactive prompt where you can search for data within all crash logs. For example you can do:

% list

which will list all crash logs

And you can search for all images given an image basename, or full path:

% image LLDB
% image /Applications/Xcode.app/Contents/SharedFrameworks/LLDB.framework/Versions/A/LLDB
% image LLDB.framework

Which would all produce an output listing like:

40CD4430-7D27-3248-BE4C-71B1F36FC5D0 (1.132 - 132) /Applications/Xcode.app/Contents/SharedFrameworks/LLDB.framework/Versions/A/LLDB, __TEXT=[0x000000011f8bc000 - 0x0000000120d3efbf)
B727A528-FF1F-3B20-9E4F-BBE96C7D922D (1.136 - 136) /Applications/Xcode.app/Contents/SharedFrameworks/LLDB.framework/Versions/A/LLDB, __TEXT=[0x000000011e7f7000 - 0x000000011fc7ff87)
4D6F8DC2-5757-39C7-96B0-1A5B5171DC6B (1.137 - 137) /Applications/Xcode.app/Contents/SharedFrameworks/LLDB.framework/Versions/A/LLDB, __TEXT=[0x000000012bd7f000 - 0x000000012d1fcfef)
FBF8786F-92B9-31E3-8BCD-A82148338966 (1.137 - 137) /Applications/Xcode.app/Contents/SharedFrameworks/LLDB.framework/Versions/A/LLDB, __TEXT=[0x0000000122d78000 - 0x00000001241f5fd7)
7AE082E3-3BB7-3F64-A308-063E559DFC45 (1.143 - 143) /Applications/Xcode.app/Contents/SharedFrameworks/LLDB.framework/Versions/A/LLDB, __TEXT=[0x0000000119b8d000 - 0x000000011b02ef5f)
7AE082E3-3BB7-3F64-A308-063E559DFC45 (1.143 - 143) /Applications/Xcode.app/Contents/SharedFrameworks/LLDB.framework/Versions/A/LLDB, __TEXT=[0x0000000111497000 - 0x0000000112938f5f)
7AE082E3-3BB7-3F64-A308-063E559DFC45 (1.143 - 143) /Applications/Xcode.app/Contents/SharedFrameworks/LLDB.framework/Versions/A/LLDB, __TEXT=[0x0000000116680000 - 0x0000000117b21f5f)





git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@156201 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/examples/python/symbolication.py
1dae6f39248e38ac84fc20c8b4c26e11bfcc19b7 25-Apr-2012 Greg Clayton <gclayton@apple.com> Remove the "-x" from the finish-swig-Python-LLDB.sh shell options so it doesn't print out all of the commands when executing the shell script.

Cleaned up the lldb.utils.symbolication, lldb.macosx.heap and lldb.macosx.crashlog. The lldb.macosx.heap can now build a dylib for the current triple into a temp directory and use it from there.



git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@155577 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/examples/python/symbolication.py
4c983c8b32996ac4543dcd95d76a0ecbeb1c6bbd 21-Apr-2012 Greg Clayton <gclayton@apple.com> Fixed some issues with symbolicating things. Fixed symbolication.add_module() to not use the resolved_path before we have tried to locate it. Fixed crashlog.locate_module_and_debug_symbols() to return true and false correctly.



git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@155255 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/examples/python/symbolication.py
3d39f83d308f4c147cff81e07c8059eb52dab89d 03-Apr-2012 Greg Clayton <gclayton@apple.com> Added a platform agnostic symbolication python module that can be used by any targets. Then modified the darwin "crashlog.py" to use this agnostic info and the new functionality and classes.



git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@153969 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/examples/python/symbolication.py