- May 16, 2011
-
-
Caroline Tice authored
Fix places that were writing directly to the debugger's output handles to go through the appropriate channels instead. llvm-svn: 131415
-
Johnny Chen authored
llvm-svn: 131412
-
Greg Clayton authored
If we are asked to restore all register values, we need to fall back to restoring each register one by one. llvm-svn: 131398
-
Greg Clayton authored
packets in GDB remote. Also fixed a compiler warning for an unhandled case for a switch. llvm-svn: 131397
-
Greg Clayton authored
Correctly handle invalid 32-bit mmap fail return value in ProcessGDBRemote. llvm-svn: 131394
-
Greg Clayton authored
Prior to this fix we would often call SendPacketAndWaitForResponse() which returns the number of bytes in the response. The UNSUPPORTED response in the GDB remote protocol is zero bytes and we were checking for it inside an if statement: if (SendPacketAndWaitForResponse(...)) { if (response.IsUnsupportedResponse()) { // UNSUPPORTED... // This will never happen... } } We now handle is properly as: if (SendPacketAndWaitForResponse(...)) { } else { // UNSUPPORTED... } llvm-svn: 131393
-
Greg Clayton authored
ABIMacOSX_arm plugin. Modified darwin-debug to print out the exectuable, working directory and arguments a bit differently. llvm-svn: 131392
-
Sean Callanan authored
changes. llvm-svn: 131391
-
- May 15, 2011
-
-
Greg Clayton authored
definitions and names. llvm-svn: 131387
-
Greg Clayton authored
the appropriate registers for arm and x86_64. The register names for the arguments that are the size of a pointer or less are all named "arg1", "arg2", etc. This allows you to read these registers by name: (lldb) register read arg1 arg2 arg3 ... You can also now specify you want to see alternate register names when executing the read register command: (lldb) register read --alternate (lldb) register read -A llvm-svn: 131376
-
Greg Clayton authored
for lldb-core. llvm-svn: 131371
-
Greg Clayton authored
thread plan. In order to get the return value, you can call: void ThreadPlanCallFunction::RequestReturnValue (lldb::ValueSP &return_value_sp); This registers a shared pointer to a return value that will get filled in if everything goes well. After the thread plan is run the return value will be extracted for you. Added an ifdef to be able to switch between the LLVM MCJIT and the standand JIT. We currently have the standard JIT selected because we have some work to do to get the MCJIT fuctioning properly. Added the ability to call functions with 6 argument in the x86_64 ABI. Added the ability for GDBRemoteCommunicationClient to detect if the allocate and deallocate memory packets are supported and to not call allocate memory ("_M") or deallocate ("_m") if we find they aren't supported. Modified the ProcessGDBRemote::DoAllocateMemory(...) and ProcessGDBRemote::DoDeallocateMemory(...) to be able to deal with the allocate and deallocate memory packets not being supported. If they are not supported, ProcessGDBRemote will switch to calling "mmap" and "munmap" to allocate and deallocate memory instead using our trivial function call support. Modified the "void ProcessGDBRemote::DidLaunchOrAttach()" to correctly ignore the qHostInfo triple information if any was specified in the target. Currently if the target only specifies an architecture when creating the target: (lldb) target create --arch i386 a.out Then the vendor, os and environemnt will be adopted by the target. If the target was created with any triple that specifies more than the arch: (lldb) target create --arch i386-unknown-unknown a.out Then the target will maintain its triple and not adopt any new values. This can be used to help force bare board debugging where the dynamic loader for static files will get used and users can then use "target modules load ..." to set addressses for any files that are desired. Added back some convenience functions to the lldb_private::RegisterContext class for writing registers with unsigned values. Also made all RegisterContext constructors explicit to make sure we know when an integer is being converted to a RegisterValue. llvm-svn: 131370
-
- May 14, 2011
-
-
Greg Clayton authored
llvm-svn: 131334
-
Jim Ingham authored
Breakpoint::Description with eDescriptionLevelBrief should just print the number of locations, printing the list of locations is pointless. llvm-svn: 131333
-
Jim Ingham authored
For the purposes of setting breakpoints treat methods defined in the class and methods defined in a category on the class as the same. llvm-svn: 131331
-
Johnny Chen authored
Clean up the test a little bit; and use lldbutil.get_GPRs(frame) to retrieve the general purpose register set. llvm-svn: 131324
-
- May 13, 2011
-
-
Johnny Chen authored
llvm-svn: 131319
-
Johnny Chen authored
solve the build break due to the lack of this method. It also propose a solution to the API changes in RegisterContext. I upgraded also the the python version in the makefile. My linux installation has python2.7 and AFAIK also the latest ubuntu has this version of python so maybe is worth upgrading. Patch by Marco Minutoli <mminutoli@gmail.com> [Note: I had to hand merge in the diffs since patch thinks it is a corrupt patch.] llvm-svn: 131313
-
Johnny Chen authored
reflects this change. Marco Minutoli <mminutoli@gmail.com> llvm-svn: 131306
-
Johnny Chen authored
Patch by Marco Minutoli <mminutoli@gmail.com> llvm-svn: 131304
-
Johnny Chen authored
breakage due to its presence. Patch by Marco Minutoli <mminutoli@gmail.com> llvm-svn: 131303
-
Sean Callanan authored
as non-const in the debug information, added a fallback to GetFunctionAddress, adding the const qualifier after the fact and searching again. llvm-svn: 131299
-
Johnny Chen authored
from the frame is not valid, try look for the symbol in the symbol table. llvm-svn: 131273
-
Sean Callanan authored
representing variables whose type must be inferred from the way they are used. Functions without debug information now return UnknownAnyTy and must be cast. Variables with no debug information are not yet using UnknownAnyTy; instead they are assumed to be void*. Support for variables of unknown type is coming (and, in fact, some relevant support functions are included in this commit) but will take a bit of extra effort. The testsuite has also been updated to reflect the new requirement that the result of printf be cast, i.e. expr (int) printf("Hello world!") llvm-svn: 131263
-
Johnny Chen authored
of the current instruction plus 8. And for Triple::thumb, it is plus 4. rdar://problem/9170971 lldb disassembly's symbol information not correct (off by 2?) llvm-svn: 131256
-
- May 12, 2011
-
-
Johnny Chen authored
llvm-svn: 131253
-
Johnny Chen authored
Construction of the RegisterReaderArg instance should happen after we have a valid base_addr, not before. llvm-svn: 131236
-
Greg Clayton authored
pointers: virtual bool PrepareTrivialCall (Thread &thread, lldb::addr_t sp, lldb::addr_t functionAddress, lldb::addr_t returnAddress, lldb::addr_t *arg1_ptr, lldb::addr_t *arg2_ptr, lldb::addr_t *arg3_ptr) const = 0; Prior to this it was: virtual bool PrepareTrivialCall (Thread &thread, lldb::addr_t sp, lldb::addr_t functionAddress, lldb::addr_t returnAddress, lldb::addr_t arg, lldb::addr_t *this_arg, lldb::addr_t *cmd_arg) const = 0; This was because the function that called this slowly added more features to be able to call a C++ member function that might have a "this" pointer, and then later added "self + cmd" support for objective C. Cleaning this code up and the code that calls it makes it easier to implement the functions for new targets. The MacOSX_arm::PrepareTrivialCall() is now filled in and ready for testing. llvm-svn: 131221
-
Jim Ingham authored
llvm-svn: 131219
-
Greg Clayton authored
llvm-svn: 131218
-
Jim Ingham authored
llvm-svn: 131217
-
Johnny Chen authored
o get_parent_frame(frame) o get_args_as_string(frame) to lldbutil.py and create TestFrameUtils.py to exercise the utils. Plus re-arrange the test/python_api/lldbutil to have three directories for testing iteration, process stack traces, and the just added frame utils. llvm-svn: 131213
-
- May 11, 2011
-
-
Greg Clayton authored
respective ABI plugins as they were plug-ins that supplied ABI specfic info. Also hookep up the UnwindAssemblyInstEmulation so that it can generate the unwind plans for ARM. Changed the way ABI plug-ins are handed out when you get an instance from the plug-in manager. They used to return pointers that would be mananged individually by each client that requested them, but now they are handed out as shared pointers since there is no state in the ABI objects, they can be shared. llvm-svn: 131193
-
Caroline Tice authored
Add ability to recognize/handle quotes around commands (e.g. '"target" create' works as well as 'target create'). llvm-svn: 131185
-
Johnny Chen authored
llvm-svn: 131168
-
Johnny Chen authored
llvm-svn: 131165
-
- May 10, 2011
-
-
Johnny Chen authored
compile unit, which has an external reference to symbols defined in foo.m, the type query: in this case, 'expression (NSArray*)array_token' continues to work. This test is to accompany http://llvm.org/viewvc/llvm-project?rev=131145&view=rev. llvm-svn: 131154
-
Sean Callanan authored
looked up. Queries for global types were made too specific -- including the current module and compile unit in the query was limiting the search when we wanted a truly global search. llvm-svn: 131145
-
Johnny Chen authored
Add a utility function get_registers(frame, kind) to get the registers of a given frame and of a given kind. Also add three convenience functions get_GPRs(frame), get_FPRs(frame), and get_ESRs(frame) to get the general purpose registers, the floating point registers, and the exception state registers. Add TestRegistersIterator.py to test these added functions of lldbutil.py. llvm-svn: 131144
-
Johnny Chen authored
llvm-svn: 131111
-