5577ce043b8d766d5a12ed12a1223385eadb6da1 |
|
03-Jul-2013 |
Jason Molenda <jmolenda@apple.com> |
Remove lldb's custom copy of the C++ demangler, used only on Mac OS X. Testsuite shows no change in results using the system runtime's demangler. <rdar://problem/12029914> git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@185510 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/source/Core/Mangled.cpp
|
ae8c27bd66a5c8aaafff262209abd09095808b07 |
|
31-May-2013 |
Daniel Malea <daniel.malea@intel.com> |
Use C-style include to match style in file (instead of C++ style) - as per review comment from Dimitry Andric! git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@183039 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/source/Core/Mangled.cpp
|
b05e4bb17ebcadbc4fd8ccbf4c5461e4f390bd66 |
|
31-May-2013 |
Daniel Malea <daniel.malea@intel.com> |
FreeBSD cmake build fixes. - missing #include <cstdlib> in Mangled.cpp - missing include dirs in FreeBSD CMakeLists.txt Patch by Ed Maste! git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@183032 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/source/Core/Mangled.cpp
|
4e17f306c144419eb4ec2c14e17a11dca89895b2 |
|
11-Sep-2012 |
Filipe Cabecinhas <me@filcab.net> |
Make size_t known before including cxxabi.h (FreeBSD fix) git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@163640 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/source/Core/Mangled.cpp
|
e8c020c0b9a19ea088c473d502e8ffa7236e7d1f |
|
06-Aug-2012 |
Greg Clayton <gclayton@apple.com> |
<rdar://problem/12029894> Use the built in demangler for Apple builds for now which has needed demangling fixes, and make the cxa_demangle.cpp use rtti in the Xcode project settings as it requires it be enabled. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@161323 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/source/Core/Mangled.cpp
|
5016669dbf02ab7e7f94ba5dae942e731ef00d0e |
|
04-Aug-2012 |
Johnny Chen <johnny.chen@apple.com> |
Pull in cxa_demangle.cpp/.h from llvm's libcxxabi project. Change the namespace to lldb_cxxabiv1 for the time being. Mangled.cpp is not wired in to call it yet. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@161293 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/source/Core/Mangled.cpp
|
c02400422d5e644a2a486bce5517d46d435a3f02 |
|
19-Jul-2012 |
Greg Clayton <gclayton@apple.com> |
Cleaned up the lldb_private::Mangled class to get rid of the tokenizing code that has bit rotted and isn't being used. Also cleaned up the API to the "lldb_private::Mangled" to always take "const ConstString &" arguments instead of both "const ConstString &" and "const char *". git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@160466 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/source/Core/Mangled.cpp
|
9b98ffdf151138af70f184c8b5b0b32c8e5c3e31 |
|
18-Jul-2012 |
Greg Clayton <gclayton@apple.com> |
<rdar://problem/10998370> Improved the error message when we can find a function in the current program by printing the demangled name. Also added the ability to create lldb_private::Mangled instances with a ConstString when we already have a ConstString for a mangled or demangled name. Also added the ability to call SetValue with a ConstString and also without a boolean to indicate if the string is mangled where we will now auto-detect if the string is mangled. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@160450 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/source/Core/Mangled.cpp
|
3f69eacbb218a37390822c89d3675bd740590382 |
|
03-Dec-2011 |
Greg Clayton <gclayton@apple.com> |
Added new symbol types for Objective C classes, metaclasses, and ivars. Each object file can correctly make these symbols which will abstract us from the file format and ABI and we can then ask for the objective C class symbol for a class and find out which object file it was defined in. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@145744 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/source/Core/Mangled.cpp
|
9d479442c0a521983328faa799883e967a6d5252 |
|
10-Jun-2011 |
Greg Clayton <gclayton@apple.com> |
I modified the StringMap that was being used to unique our debugger C strings to have the value for the map be a "const char *" instead of an unused uint32_t. This allows us to store the uniqued mangled/demangled counterpart in this map for mangled names. This also speeds up the mangled/demangled counterpart lookup that used to be maintained in a STL map by having direct access to the data. If we eventually need to associate other strings to strings to more data, we can make the value of the StringMap have a more complex value. Added the start of a history source and history event class. It isn't being used by anything yet, but might be shortly. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@132813 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/source/Core/Mangled.cpp
|
17cd995147b3324680d845b3fc897febcc23c9e0 |
|
22-Apr-2011 |
Greg Clayton <gclayton@apple.com> |
Did some work on the "register read" command to only show the first register set by default when dumping registers. If you want to see all of the register sets you can use the "--all" option: (lldb) register read --all If you want to just see some register sets, you can currently specify them by index: (lldb) register read --set 0 --set 2 We need to get shorter register set names soon so we can specify the register sets by name without having to type too much. I will make this change soon. You can also have any integer encoded registers resolve the address values back to any code or data from the object files using the "--lookup" option. Below is sample output when stopped in the libc function "puts" with some const strings in registers: Process 8973 stopped * thread #1: tid = 0x2c03, 0x00007fff828fa30f libSystem.B.dylib`puts + 1, stop reason = instruction step into frame #0: 0x00007fff828fa30f libSystem.B.dylib`puts + 1 (lldb) register read --lookup General Purpose Registers: rax = 0x0000000100000e98 "----------------------------------------------------------------------" rbx = 0x0000000000000000 rcx = 0x0000000000000001 rdx = 0x0000000000000000 rdi = 0x0000000100000e98 "----------------------------------------------------------------------" rsi = 0x0000000100800000 rbp = 0x00007fff5fbff710 rsp = 0x00007fff5fbff280 r8 = 0x0000000000000040 r9 = 0x0000000000000000 r10 = 0x0000000000000000 r11 = 0x0000000000000246 r12 = 0x0000000000000000 r13 = 0x0000000000000000 r14 = 0x0000000000000000 r15 = 0x0000000000000000 rip = 0x00007fff828fa30f libSystem.B.dylib`puts + 1 rflags = 0x0000000000000246 cs = 0x0000000000000027 fs = 0x0000000000000000 gs = 0x0000000000000000 As we can see, we see two constant strings and the PC (register "rip") is showing the code it resolves to. I fixed the register "--format" option to work as expected. Added a setting to disable skipping the function prologue when setting breakpoints as a target settings variable: (lldb) settings set target.skip-prologue false Updated the user settings controller boolean value handler funciton to be able to take the default value so it can correctly respond to the eVarSetOperationClear operation. Did some usability work on the OptionValue classes. Fixed the "image lookup" command to correctly respond to the "--verbose" option and display the detailed symbol context information when looking up line table entries and functions by name. This previously was only working for address lookups. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@129977 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/source/Core/Mangled.cpp
|
5d1ff1451fedb9c89b17ba5cf9cfccc73e145513 |
|
15-Dec-2010 |
Jason Molenda <jmolenda@apple.com> |
Move the demangle-failed indication out a bit so other failing cases also get marked as having failed (so we don't try to demangle the same symbol multiple times). git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@121835 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/source/Core/Mangled.cpp
|
6983cda4216e0e8d69dc821cfd65af3b6c521b1f |
|
15-Dec-2010 |
Jason Molenda <jmolenda@apple.com> |
Fix a crash on some platforms where a dSYM for a system library lists a DW_AT_mips_linkage_name for a non-mangled function - we pass the non mangled string down through abi::__cxa_demangle and it crashes. Usually passing non mangled strings to abi::__cxa_demangle works out fine but not always, apparently. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@121834 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/source/Core/Mangled.cpp
|
3bc52d0a96c18be384028a90914f534ac252fbe4 |
|
14-Nov-2010 |
Greg Clayton <gclayton@apple.com> |
Just like functions can have a basename and a mangled/demangled name, variable can too. So now the lldb_private::Variable class has support for this. Variables now have support for having a basename ("i"), and a mangled name ("_ZN12_GLOBAL__N_11iE"), and a demangled name ("(anonymous namespace)::i"). Nowwhen searching for a variable by name, users might enter the fully qualified name, or just the basename. So new test functions were added to the Variable and Mangled classes as: bool NameMatches (const ConstString &name); bool NameMatches (const RegularExpression ®ex); I also modified "ClangExpressionDeclMap::FindVariableInScope" to also search for global variables that are not in the current file scope by first starting with the current module, then moving on to all modules. Fixed an issue in the DWARF parser that could cause a varaible to get parsed more than once. Now, once we have parsed a VariableSP for a DIE, we cache the result even if a variable wasn't made so we don't do any re-parsing. Some DW_TAG_variable DIEs don't have locations, or are missing vital info that stops a debugger from being able to display anything for it, we parse a NULL variable shared pointer for these DIEs so we don't keep trying to reparse it. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@119085 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/source/Core/Mangled.cpp
|
beea05256239bec8be05786fbd2a432bdc11b5da |
|
15-Sep-2010 |
Jim Ingham <jingham@apple.com> |
The Mangled name comparision should prefer the mangled name. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@113908 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/source/Core/Mangled.cpp
|
0298782b17345e3f30c3fc9d6bc1fd8aec4ec8a7 |
|
15-Sep-2010 |
Greg Clayton <gclayton@apple.com> |
Fixed a case where Mangled::GetName(...) could return a invalid demangled name when one could be calculated. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@113900 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/source/Core/Mangled.cpp
|
251de2acc7c269a1168ce906a269f4ab1b999f09 |
|
15-Sep-2010 |
Greg Clayton <gclayton@apple.com> |
Fixed a compiler warning. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@113899 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/source/Core/Mangled.cpp
|
17454cfc6a757305a7d9d4c31313c38981b57b01 |
|
15-Sep-2010 |
Jim Ingham <jingham@apple.com> |
Add the ability for "ThreadPlanRunToAddress" to run to multiple addresses. Added the ability to specify a preference for mangled or demangled to Mangled::GetName. Changed one place where mangled was prefered in GetName. The Dynamic loader should look up the target of a stub by mangled name if it exists. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@113869 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/source/Core/Mangled.cpp
|
e33bdd301b775bbcc4526d409bc37b435c02a843 |
|
04-Sep-2010 |
Greg Clayton <gclayton@apple.com> |
Improved name demangling performance by 20% on darwin. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@113032 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/source/Core/Mangled.cpp
|
99e79dfa17a063bb7a4b05fb9e0981978cfee19d |
|
02-Jul-2010 |
Greg Clayton <gclayton@apple.com> |
Removed the thread specific data that was being used for demangling since removing it didn't cause any performance loss, and leaks were showing up when run under instruments when we tried to re-use the buffer. We are now leak free and still just as performant. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@107453 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/source/Core/Mangled.cpp
|
86c73c1d5fa79d5eb6bd278427a3fe2a37f73b98 |
|
22-Jun-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
Turns out __cxa_demangle returns the size of the buffer instead of the size of the demangled name. Fall back to strlen. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@106579 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/source/Core/Mangled.cpp
|
7d25348cb402972997bf0f5feca26bb3167ca8e1 |
|
22-Jun-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
Ensure GetDemangledName's thread safety by making the demangle buffer thread specific. I'm not sure when multiple threads enter this method but a race-condition causing a crash in malloc can be reproduced with this little script: echo file $(which lldb) > cmd echo "run\nbreak set -n main\nrun\nexit" >> cmd lldb -s cmd It may need a few runs before it crashes though. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@106544 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/source/Core/Mangled.cpp
|
a408326b499c3ffdfed2378738598c4ad0cf745f |
|
09-Jun-2010 |
Eli Friedman <eli.friedman@gmail.com> |
Add missing includes. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@105712 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/source/Core/Mangled.cpp
|
24943d2ee8bfaa7cf5893e4709143924157a5c1e |
|
08-Jun-2010 |
Chris Lattner <sabre@nondot.org> |
Initial checkin of lldb code from internal Apple repo. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@105619 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/source/Core/Mangled.cpp
|