- Oct 07, 2011
-
-
Greg Clayton authored
Re-organized the contents of RangeMap.h to be more concise and also allow for a Range, RangeArray, RangeData (range + data), or a RangeDataArray. We have many range implementations in LLDB and I will be converting over to using the classes in RangeMap.h so we can have one set of code that does ranges and searching of ranges. Fixed up DWARFDebugAranges to use the new range classes. Fixed the enumeration parsing to take a lldb_private::Error to avoid a lot of duplicated code. Now when an invalid enumeration is supplied, an error will be returned and that error will contain a list of the valid enumeration values. llvm-svn: 141382
-
Jim Ingham authored
llvm-svn: 141375
-
Greg Clayton authored
Since we use address ranges a lot I added a templatized class that allows us to easily control the base address type, the size type, and the data that is stored with each range. It is designed to be populated by appending all needed items, then sorting the resulting list, and optionally minimizing the list when done. I adopted this new list in the DWARFDebugAranges for even further memory savings. llvm-svn: 141352
-
rdar://problem/10226227Greg Clayton authored
Fixed the root cause of what was causing an assertion to fire during single stepping. We had an issue with the inlined stack frames where when we had inlined frames that were not in the first concrete frame where we passed the wrong PC down. We needed to decrement the PC by one for these frames to make sure we are using the same address that did the symbol context lookup. llvm-svn: 141349
-
Greg Clayton authored
llvm-svn: 141348
-
Johnny Chen authored
llvm-svn: 141347
-
Johnny Chen authored
llvm-svn: 141340
-
rdar://problem/10226227Greg Clayton authored
Fixed an assertion that was causing a crash. The bug describes a case where we have an inlined block that doesn't contain the frame PC that was used to lookup the symbol context in the first place. This really shouldn't happen, so now we log if we run into this and don't assert. llvm-svn: 141338
-
Johnny Chen authored
llvm-svn: 141326
-
- Oct 06, 2011
-
-
Johnny Chen authored
llvm-svn: 141307
-
Jason Molenda authored
set up yet, if we're talking to an Apple arm device set the register set based on the arm device's attributes; this is a safe assumption to make in this particular environment. llvm-svn: 141265
-
Johnny Chen authored
llvm-svn: 141264
-
Greg Clayton authored
(lldb) log enable dwarf lookups This allows us to see when lookups are being done on functions, addresses, and types by both name and regular expresssion. llvm-svn: 141259
-
Johnny Chen authored
An lldb-enhanced gud.el is located under utils/emacs. llvm-svn: 141241
-
Greg Clayton authored
Stop spurious "DW_AT_specification(0x%8.8x) has no decl" warnings that were due to not parsing the function types when the function blocks are made and parsed. Cached the Function object's m_type value after it has been calculated. llvm-svn: 141225
-
Greg Clayton authored
"const char *" is NULL. Also cleaned up the display of strings when you have an array of chars that are all NULL. Previously we were showing: ""... We now show: "" llvm-svn: 141223
-
Greg Clayton authored
and statics when no arguments are given. llvm-svn: 141222
-
- Oct 05, 2011
-
-
Johnny Chen authored
watchpoint ignore -i <count> [<watchpt-id | watchpt-id-list>] Add tests of watchpoint ignore_count for command line as well as API. llvm-svn: 141217
-
Greg Clayton authored
using the mutex. llvm-svn: 141160
-
Johnny Chen authored
when newly created threads were subsequently stopped due to breakpoint hit. The stop-hook mechanism delegates to CommandInterpreter::HandleCommands() to execuet the commands. Make sure the execution context is switched only once at the beginning of HandleCommands() only and don't update the context while looping on each individual command to be executed. rdar://problem/10228156 llvm-svn: 141144
-
Greg Clayton authored
llvm-svn: 141130
-
Greg Clayton authored
index the DWARF. Also fixed an issue with memory accelerator tables with a size of 1 where we would loop infinitely. Added support for parsing the new .apple_namespaces section which gives us a memory hash table for looking up namespaces. llvm-svn: 141128
-
- Oct 04, 2011
-
-
Johnny Chen authored
llvm-svn: 141044
-
Johnny Chen authored
llvm-svn: 141041
-
Johnny Chen authored
llvm-svn: 141039
-
Johnny Chen authored
llvm-svn: 141036
-
Johnny Chen authored
llvm-svn: 141035
-
- Oct 03, 2011
-
-
Johnny Chen authored
llvm-svn: 141033
-
Johnny Chen authored
llvm-svn: 141021
-
- Oct 01, 2011
-
-
Greg Clayton authored
and this implemenation that backs our lldb::SBSourceManager should not be exported. llvm-svn: 140930
-
Greg Clayton authored
llvm-svn: 140922
-
Greg Clayton authored
not saying that its children are load addresses. llvm-svn: 140921
-
Greg Clayton authored
DWARF errors and warnings. llvm-svn: 140918
-
Jason Molenda authored
an anonymous struct type (which lacks any name). llvm-svn: 140917
-
Johnny Chen authored
a variable usng the frame as the scope. Add TestSetWatchpoint.py to exercise this API. Also fix some SWIG Python docstrings. llvm-svn: 140914
-
Greg Clayton authored
symbol context that represents an inlined function. This function has been renamed internally to: bool SymbolContext::GetParentOfInlinedScope (const Address &curr_frame_pc, SymbolContext &next_frame_sc, Address &next_frame_pc) const; And externally to: SBSymbolContext SBSymbolContext::GetParentOfInlinedScope (const SBAddress &curr_frame_pc, SBAddress &parent_frame_addr) const; The correct blocks are now correctly calculated. Switched the stack backtracing engine (in StackFrameList) and the address context printing over to using the internal SymbolContext::GetParentOfInlinedScope(...) so all inlined callstacks will match exactly. llvm-svn: 140910
-
Jason Molenda authored
llvm-svn: 140901
-
Greg Clayton authored
llvm-svn: 140893
-
- Sep 30, 2011
-
-
Johnny Chen authored
Add a keyword argument 'endstr' to TestBase.expect() method to assert that the output will end with 'endstr'. Add TestBase.switch_to_thread_with_stop_reason(stop_reason) to select the thread with the stop reason = 'stop_reason' as the current thread. o TestWatchLocation.py: Modified to switch to the stopped thread with stop reason = watchpoint and to evaluate an expression with expected output for stronger assertion. llvm-svn: 140890
-
Greg Clayton authored
Also reduce the size of the lldb_private::Symbol objects by removing the lldb_private::Function pointer that was in each symbol. Running Instruments has shown that when debugging large applications with DWARF in .o files that lldb_private::Symbol objects are one of the highest users of memory. No one was using the Symbol::GetFunction() call anyway. llvm-svn: 140881
-