- Jan 25, 2013
-
-
rdar://problem/13072285Jason Molenda authored
Change the GDBRemoteRegisterContext::AddRegister function to take its RegisterInfo argument by value instead of using a reference - it will modify the object and modifying the contents of the g_register_infos table in GDBRemoteRegisterContext.cpp can cause a crash the next time we step through it. llvm-svn: 173406
-
Daniel Malea authored
- introduce new variable ARCHFLAG in make/Makefile.rules to switch between "-arch" on Mac and "-m" everywhere else - update testcase makefiles to use LD_EXTRAS instead of LDFLAGS (the former interacts with Makefile.rules badly) - special treatment for gcc 4.6: replace "-std=c++11" with "-std=c++0x" as the former is not handled correctly - remove hardcoded "-arch" from test Makefile This patch should not have any effect on lldb on Mac OS X. llvm-svn: 173402
-
Daniel Malea authored
- Add new decorator "@skipIfGcc" to lldbtest.py llvm-svn: 173394
-
Jim Ingham authored
handler. Also put in string translations for a couple of exceptions we were missing. llvm-svn: 173390
-
- Jan 24, 2013
-
-
Daniel Malea authored
- since the test program needs to link with LLDB, the test is invalid in 32-bit mode. llvm-svn: 173372
-
Daniel Malea authored
- PR 15038: missing wide char support on Linux - PR 14600 - Exception state registers not supported on Linux - PR 15039: SBProcess.GetSTDOUT() returns an empty buffer - PR 15037: stop-hooks sometimes fail to fire on Linux llvm-svn: 173363
-
Daniel Malea authored
llvm-svn: 173362
-
Jim Ingham authored
Check for NULL breakpoint option thread name & queue name before comparing their values to the new value. <rdar://problem/13065198> llvm-svn: 173308
-
- Jan 23, 2013
-
-
Jason Molenda authored
for non-x86 builds. llvm-svn: 173226
-
Jason Molenda authored
reply to be hex encoded, not decimal. Fix the whitespace in the container-regs/invalidate-regs documentation, fix one ambiguous hex/decimal number in an example. llvm-svn: 173225
-
rdar://problem/12711206Enrico Granata authored
Extending ValueObjectDynamicValue so that it stores a TypeAndOrName instead of a TypeSP. This change allows us to reflect the notion that a ValueObject can have a dynamic type for which we have no debug information. Previously, we would coalesce that to the static type of the object, potentially losing relevant information or even getting it wrong. This fix ensures we can correctly report the class name for Cocoa objects whose types are hidden classes that we know nothing about (e.g. __NSArrayI for immutable arrays). As a side effect, our --show-types argument to frame variable no longer needs to append custom dynamic type information. llvm-svn: 173216
-
- Jan 22, 2013
-
-
Enrico Granata authored
llvm-svn: 173119
-
Sean Callanan authored
Avoids an error about an ambiguous constructor call. llvm-svn: 173118
-
Enrico Granata authored
llvm-svn: 173111
-
Greg Clayton authored
Clear up the documentation for the "container-regs" and "invalidate-regs" key/value pair responses for qRegisterInfo with examples of single and multiple registers for each. llvm-svn: 173107
-
Greg Clayton authored
Changed the register number lists for the qRegisterInfo packet response to be raw hex to match all other register reading and writing APIs. llvm-svn: 173105
-
Greg Clayton authored
Modified the ARM register context to invalidate r8 - r14 when the CPSR register is modified. llvm-svn: 173104
-
Greg Clayton authored
Updated the LLDB qRegisterInfo documentation to contain information on the new "invalidate-regs" and "container-regs" keys that can be returned in response to a qRegisterInfo packet. llvm-svn: 173102
-
- Jan 21, 2013
-
-
rdar://problem/13020634Greg Clayton authored
Fixed the 32, 16, and 8 bit pseudo regs for x86_64 (real reg of "rax" which subvalues "eax", "ax", etc...) to correctly get updated when stepping. Also fixed it so actual registers can specify what other registers must be invalidated when a register is modified. Previously, only pseudo registers could invalidate other registers. Modified the LLDB qRegisterInfo extension to the GDB remote interface to support specifying the containing registers with the new "container-regs" key whose value is a comma separated list of register numbers. Also added a "invalidate-regs" key whose value is also a comma separated list of register numbers. Removed the hack GDBRemoteDynamicRegisterInfo::Addx86_64ConvenienceRegisters() function and modified "debugserver" to specify the registers correctly using the new "container-regs" and "invalidate-regs" keys. llvm-svn: 173096
-
rdar://problem/12437929Enrico Granata authored
Providing a special mode of operator for "memory read -f c-str" which actually works in most common cases Where the old behavior would provide: (lldb) mem read --format s `foo` 0x100000f5d: NULL Now we do: (lldb) mem read --format s `foo` 0x100000f5d: "hello world" You can also specify a count and that many strings will be showed starting at the initial address: (lldb) mem read -c 2 -f c-str `foo` 0x100000f1d: "hello world" 0x100000f29: "short" llvm-svn: 173076
-
- Jan 19, 2013
-
-
rdar://problem/12350715Jason Molenda authored
Modify UnwindLLDB::SearchForSavedLocationForRegister so if the register save locations for a register mid-stack is in another register (or in the same register, indicating the reg wasn't modified in this frame), don't return that as a found location. Keep iterating down the array of frames until a concrete location/value for the register is found, or until we get to frame 0 where the reg value can be used as-is. If lldb was trying to backtrace a program that blew out its stack via recursion and the unwind instructions had some kind of this-reg-is-saved-in-that-reg instruction, lldb would revert to doing a recursive search for a concrete value and blow out its own stack. llvm-svn: 172887
-
Sean Callanan authored
in an Objective-C class method. Before, errors of the form error: cannot find interface declaration for '$__lldb_objc_class' would appear when running any expression when the current frame is a block that captures 'self' from an Objective-C class method. <rdar://problem/12905561> llvm-svn: 172880
-
rdar://problem/13011717Greg Clayton authored
Fixed a compilation error that occurs when "lldb.macosx.heap" is imported and "ptr_refs" is used. llvm-svn: 172876
-
rdar://problem/13010007Greg Clayton authored
Added the ability for OS plug-ins to lazily populate the thread this. The python OS plug-in classes can now implement the following method: class OperatingSystemPlugin: def create_thread(self, tid, context): # Return a dictionary for a new thread to create it on demand This will add a new thread to the thread list if it doesn't already exist. The example code in lldb/examples/python/operating_system.py has been updated to show how this call us used. Cleaned up the code in PythonDataObjects.cpp/h: - renamed all classes that started with PythonData* to be Python*. - renamed PythonArray to PythonList. Cleaned up the code to use inheritance where - Centralized the code that does ref counting in the PythonObject class to a single function. - Made the "bool PythonObject::Reset(PyObject *)" function be virtual so each subclass can correctly check to ensure a PyObject is of the right type before adopting the object. - Cleaned up all APIs and added new constructors for the Python* classes to they can all construct form: - PyObject * - const PythonObject & - const lldb::ScriptInterpreterObjectSP & Cleaned up code in ScriptInterpreterPython: - Made calling python functions safer by templatizing the production of value formats. Python specifies the value formats based on built in C types (long, long long, etc), and code often uses typedefs for uint32_t, uint64_t, etc when passing arguments down to python. We will now always produce correct value formats as the templatized code will "do the right thing" all the time. - Fixed issues with the ScriptInterpreterPython::Locker where entering the session and leaving the session had a bunch of issues that could cause the "lldb" module globals lldb.debugger, lldb.target, lldb.process, lldb.thread, and lldb.frame to not be initialized. llvm-svn: 172873
-
Greg Clayton authored
llvm-svn: 172871
-
rdar://problem/12976277Han Ming Ong authored
Swap in index ids for thread ids in GDBRemoteCommunicationClient. Besides dealing with the async logic, I have to take care of the situation when the inferior paused as well. llvm-svn: 172869
-
Jason Molenda authored
mach port namespace in addition to the mach port # in examine-threads' own port namespace, and print it (when -v is used). llvm-svn: 172867
-
- Jan 18, 2013
-
-
Sean Callanan authored
DW_AT_const_value instead of a location. Also added a testcase covering "frame variable," "expr" using the IR interpreter, and "expr" using the LLVM JIT. <rdar://problem/12978195> llvm-svn: 172848
-
Matt Kopec authored
llvm-svn: 172840
-
rdar://problem/12243932Jason Molenda authored
Change RNBSocket from using lockdown's lockdown_secure_checkin() function to using lockdown's secure_lockdown_checkin() function. llvm-svn: 172775
-
Enrico Granata authored
The wchar_t and char1632_t test cases were erroneously running as x86_64 only even if you tried to run them in i386 mode Courtesy of Daniel Malea for discovering this. llvm-svn: 172764
-
- Jan 17, 2013
-
-
rdar://problem/12786725Enrico Granata authored
If there is any alive process being debugged, the user is asked for confirmation before quitting LLDB This should prevent situations where the user mistakenly types "q" and LLDB slaughters their process without any mercy whatsoever Since it can quickly get tedious, there is a new setting on the command interpreter to disable this and replicate the previous behavior llvm-svn: 172757
-
Enrico Granata authored
llvm-svn: 172755
-
Sylvestre Ledru authored
llvm-svn: 172728
-
Daniel Malea authored
llvm-svn: 172724
-
Jason Molenda authored
llvm-svn: 172702
-
Enrico Granata authored
vector<bool> is specialized and the existing general summary for vectors would lie to the user. Tackling libstdc++ and synthetic children is the following, less critical, part of this task llvm-svn: 172671
-
- Jan 16, 2013
-
-
Enrico Granata authored
Changing the Python reference document to be more explicit in discouraging usage of lldb.{debugger,...} convenience variables for formatters and other non-interactive Python extensions llvm-svn: 172663
-
Greg Clayton authored
llvm-svn: 172662
-
Greg Clayton authored
llvm-svn: 172647
-