a3f653492b61ea1d836101d06b7ff439acfd5b3b |
|
30-Jan-2013 |
Enrico Granata <egranata@apple.com> |
<rdar://problem/12552374> & <rdar://problem/13100674> The vtable pointer field is not necessarily a pointer and hence cannot be used for validation git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@173947 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/examples/summaries/cocoa/objc_runtime.py
|
209473a3e32a515f28cde69464ba2e625ae8f55c |
|
16-Jan-2013 |
Enrico Granata <egranata@apple.com> |
Replacing reference to radar number with svn revision git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@172641 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/examples/summaries/cocoa/objc_runtime.py
|
62dca4b379a209429629957c35c8d6dfd7982ac1 |
|
16-Jan-2013 |
Enrico Granata <egranata@apple.com> |
Greg created a new API on SBProcess to get an ID that is guaranteed to be unique even in situations where underlying platforms would actually duplicate or hardcode PIDs The Python data formatters use a per-process cache that was previously keying off the PID. Moving that to be based on this new notion of unique ID. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@172633 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/examples/summaries/cocoa/objc_runtime.py
|
00f9ebe460fd6e9c226f4ba3f6610fbed7b0ef29 |
|
18-Sep-2012 |
Enrico Granata <egranata@apple.com> |
<rdar://problem/11398693> Making sure we do not attempt to run code on zombie objects when attempting to format them git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@164156 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/examples/summaries/cocoa/objc_runtime.py
|
3b031d93d53b509c43d592cbcdc17a862f3508b8 |
|
18-Sep-2012 |
Enrico Granata <egranata@apple.com> |
Fix a potential issue where data formatters can get confused over malformed UUIDs git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@164151 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/examples/summaries/cocoa/objc_runtime.py
|
ee1747d7ae79fdce19b3807c39f81ee8b63c13a0 |
|
01-Aug-2012 |
Filipe Cabecinhas <me@filcab.net> |
Make the objc-runtime work with Python 2.6 git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@161111 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/examples/summaries/cocoa/objc_runtime.py
|
d0a098024ae5cd6e98429682590e687cecb6b0fe |
|
21-May-2012 |
Enrico Granata <egranata@apple.com> |
Fixes for performance to data formatters - Python < 3.0 is much slower when using True/False as compared to 1/0 for logical values. Wexploit this to our advantage. Other minor tweaks git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@157209 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/examples/summaries/cocoa/objc_runtime.py
|
6bf058b8054a1152bb227d37d6fe7c6b21a14dd3 |
|
18-May-2012 |
Enrico Granata <egranata@apple.com> |
Optimizations to the Python ObjC formatters - Benchmarking infrastructure git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@157066 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/examples/summaries/cocoa/objc_runtime.py
|
a5c2ce05705f784fd4ada97823af6ff7006fea58 |
|
25-Apr-2012 |
Enrico Granata <egranata@apple.com> |
Returning data formatters to their previous working condition - Plus fixing an issue that was preventing Python oneliners from executing git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@155563 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/examples/summaries/cocoa/objc_runtime.py
|
0d235d5864e996d95f485df1a0df406126e1ccde |
|
25-Apr-2012 |
Enrico Granata <egranata@apple.com> |
Making the Cocoa formatters comply with the new on-disk layout of the Python resources - This is one of the steps towards making the data formatters work again git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@155526 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/examples/summaries/cocoa/objc_runtime.py
|
8f18240a09893310c43673901d863892ae7b0611 |
|
02-Apr-2012 |
Enrico Granata <egranata@apple.com> |
Logging for data formatters. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@153878 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/examples/summaries/cocoa/objc_runtime.py
|
67812172eecc4426c17b25354af072f6a4a9aad9 |
|
27-Mar-2012 |
Enrico Granata <egranata@apple.com> |
adding a summary for Objective-C type 'Class' git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@153541 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/examples/summaries/cocoa/objc_runtime.py
|
579a296e7566b7b6d24b51e383bca1fe1e62086f |
|
13-Mar-2012 |
Enrico Granata <egranata@apple.com> |
The Cocoa formatters now provide error messages for many of the common things-went-wrong situations. Previously they would say nothing or log failures to the Python console git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@152673 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/examples/summaries/cocoa/objc_runtime.py
|
f2a84671ff78bee1f82b60698f3ee9791585f8ac |
|
05-Mar-2012 |
Enrico Granata <egranata@apple.com> |
Several performance-oriented changes to the introspecting data formatters: (a) the SystemParameters object is now passed around to the formatters; doing so enables the formatters to reuse computed values for things such as pointer-size and endianness instead of repeatedly computing these on their own (b) replacing the global ISA cache with a per-process one (c) providing a per-process types cache where each formatter can store the types it needs to operate, and be sure to find them the next time without recalculating them this also enables formatters to share types if they agree on a local naming convention (d) lazy fetching of data from Objective-C runtime data structures data is fetched as needed and we stop reading as soon as we determine that an ISA is actually garbage git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@152052 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/examples/summaries/cocoa/objc_runtime.py
|
de3b25b645e4b4d97a87ebf059056a6c696d4e9c |
|
03-Mar-2012 |
Enrico Granata <egranata@apple.com> |
added a new formatter for CF(Mutable)BitVector fixed a few potential NULL-pointer derefs in ValueObject we have a way to provide docstrings for properties we add to the SWIG layer - a few of these properties have a docstring already, more will come in future commits added a new bunch of properties to SBData to make it more natural and Python-like to access the data they contain git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@151962 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/examples/summaries/cocoa/objc_runtime.py
|
3069c62fc7d3c0b857cd1e9269ff22011ed418fb |
|
01-Mar-2012 |
Enrico Granata <egranata@apple.com> |
1) solving a bug where, after Jim's fixes to stack frames, synthetic children were not recalculated when necessary, causing them to get out of sync with live data 2) providing an updated list of tagged pointers values for the objc_runtime module - hopefully this one is final 3) changing ValueObject::DumpValueObject to use an Options class instead of providing a bulky list of parameters to pass around this change had been laid out previously, but some clients of DumpValueObject() were still using the old prototype and some arguments were treated in a special way and passed in directly instead of through the Options class 4) providing new GetSummaryAsCString() and GetValueAsCString() calls in ValueObject that are passed a formatter object and a destination string and fill the string by formatting themselves using the formatter argument instead of the default for the current ValueObject 5) removing the option to have formats and summaries stick to a variable for the current stoppoint after some debate, we are going with non-sticky: if you say frame variable --format hex foo, the hex format will only be applied to the current command execution and not stick when redisplaying foo the other option would be full stickiness, which means that foo would be formatted as hex for its whole lifetime we are open to suggestions on what feels "natural" in this regard git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@151801 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/examples/summaries/cocoa/objc_runtime.py
|
a0e904189172b6748935e4d00bc05d21f340caaa |
|
29-Feb-2012 |
Enrico Granata <egranata@apple.com> |
Fixing a problem with v1 runtime - plus hopefully finalizing the code to check for tagged pointers git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@151753 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/examples/summaries/cocoa/objc_runtime.py
|
1328b1410eb0f5e03c3b3ee302e9adca3e1b0361 |
|
29-Feb-2012 |
Enrico Granata <egranata@apple.com> |
This commit: a) adds a Python summary provider for NSDate b) changes the initialization for ScriptInterpreter so that we are not passing a bulk of Python-specific function pointers around c) provides a new ScriptInterpreterObject class that allows for ref-count safe wrapping of scripting objects on the C++ side d) contains much needed performance improvements: 1) the pointer to the Python function generating a scripted summary is now cached instead of looked up every time 2) redundant memory reads in the Python ObjC runtime wrapper are eliminated 3) summaries now use the m_summary_str in ValueObject to store their data instead of passing around ( == copying) an std::string object e) contains other minor fixes, such as adding descriptive error messages for some cases of summary generation failure git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@151703 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/examples/summaries/cocoa/objc_runtime.py
|
b2dd15e8d8b6404dfc80a003c9ada3bab53e3f7e |
|
24-Feb-2012 |
Enrico Granata <egranata@apple.com> |
Fixing an if condition which was causing issues in detecting the correct runtime version git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@151388 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/examples/summaries/cocoa/objc_runtime.py
|
e859697139685b7bbe27d3d420e77c727af2080a |
|
24-Feb-2012 |
Enrico Granata <egranata@apple.com> |
fixing a syntax error with objc_runtime.py git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@151304 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/examples/summaries/cocoa/objc_runtime.py
|
b370df27c76fd875f3312be487868528121a4838 |
|
24-Feb-2012 |
Enrico Granata <egranata@apple.com> |
This patch provides a set of formatters for most of the commonly used Cocoa classes. The formatter for NSString is an improved version of the one previously shipped as an example, the others are new in design and implementation. A more robust and OO-compliant Objective-C runtime wrapper is provided for runtime versions 1 and 2 on 32 and 64 bit. The formatters are contained in a category named "AppKit", which is not enabled at startup. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@151300 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/examples/summaries/cocoa/objc_runtime.py
|