summaryrefslogtreecommitdiffstats
path: root/lldb/scripts
Commit message (Collapse)AuthorAgeFilesLines
* Fixed a Linux building bug pointed out by Daniel Malea.Filipe Cabecinhas2012-08-221-1/+1
| | | | llvm-svn: 162373
* Added a typemap and wrappers for SBInputReader callbacksFilipe Cabecinhas2012-08-223-1/+87
| | | | | | | | | | | | | | Now it's possible to use SBInputReader callbacks in Python. We leak the callback object, unfortunately. A __del__ method can be added to SBInputReader, but we have no way to check the callback function that is on the reader. So we can't call Py_DECREF on it when we have our PythonCallback function. One way to do it is to assume that reified SBInputReaders always have a Python callback (and always call Py_DECREF). Another one is to add methods or properties to SBInputReader (or make the m_callback_function property public). llvm-svn: 162356
* Fix a crash (_wrap_SBDebugger_SetInputFileHandle -> PyString_AsString) ↵Johnny Chen2012-08-201-2/+9
| | | | | | | | running the test suite. Also modify the boundary condition test case SBDebugger.DispatchInput(None) to be wrapped inside a try-except clause for now. llvm-svn: 162228
* A baton isn't needed to dispatch input.Filipe Cabecinhas2012-08-202-1/+17
| | | | | | I also added a typemap to make DispatchInput usable in Python. llvm-svn: 162204
* Add FILE* typemaps for SBDebugger.GetInputFileHandle() and friends.Filipe Cabecinhas2012-08-201-0/+35
| | | | llvm-svn: 162203
* Merge python-GIL bracnh (by filcab) back into trunk!Johnny Chen2012-08-181-1/+1
| | | | llvm-svn: 162161
* rdar://problem/11457143 [ER] need "watchpoint command ..."Johnny Chen2012-08-091-0/+79
| | | | | | Add 'watchpoint command add/delete/list' to lldb, plus two .py test files. llvm-svn: 161638
* On Mac OS X, lldb will now build c++11 and useSean Callanan2012-08-091-4/+4
| | | | | | | | | | | | | | libc++. We also no longer use the GNU extensions to C++ and C (we didn't use them anyway). This also means that the LLVM we use must be built with the new libc++. I will commit llvm.zip next. <rdar://problem/11930775> llvm-svn: 161562
* Made lldb.swig include <string>, which it requires.Sean Callanan2012-08-091-0/+5
| | | | llvm-svn: 161560
* <rdar://problem/11275622>Greg Clayton2012-07-311-1/+86
| | | | | | | | | | | | | | | | | | | | | | | | | Added new API to lldb::SBTypeMember for bitfields: bool SBTypeMember::IsBitfield(); uint32_t SBTypeMember::GetBitfieldSizeInBits(); Also added new properties for easy access. Now SBTypeMember objects in python have a "fields" property for all type fields, "bases" for all direct bases, "vbases" for all virtual base classes and "members" for a combo of all three organized by bit offset. They all return a python list() of SBTypeMember objects. Usage: (lldb) script >>> t = lldb.target.FindFirstType("my_type") >>> for field in t.fields: ... print field >>> for vbase in t.vbases: ... print vbase >>> for base in t.bases: ... print base >>> for member in t.members: ... print member Also added new "is_bitfield" property to the SBTypeMember objects that will return the result of SBTypeMember::IsBitfield(), and "bitfield_bit_size" which will return the result of SBTypeMember::GetBitfieldSizeInBits(); I also fixed "SBTypeMember::GetOffsetInBytes()" to return the correct byte offset. llvm-svn: 161091
* Added an lldb_private & equivalent SB API to send an AsyncInterrupt to the ↵Jim Ingham2012-07-271-0/+3
| | | | | | | | | | | | | | event loop. Convert from calling Halt in the lldb Driver.cpp's input reader's sigint handler to sending this AsyncInterrupt so it can be handled in the event loop. If you are attaching and get an async interrupt, abort the attach attempt. Also remember to destroy the process if get interrupted while attaching. Getting this to work also required handing the eBroadcastBitInterrupt in a few more places in Process WaitForEvent & friends. <rdar://problem/10792425> llvm-svn: 160903
* Integrated a fix to LLVM's disassembler thatSean Callanan2012-07-261-1/+1
| | | | | | | | | corrected the offsets for x86_64 conditional branch instructions. <rdar://problem/11502148> llvm-svn: 160769
* Added a fix to LLVM that corrects PC-relativeSean Callanan2012-07-201-0/+26
| | | | | | | | branch address printing in the x86 disassembler. <rdar://problem/11925357> llvm-svn: 160588
* Add "vAttachOrWait" to debugserver, so you can implement "attach to the ↵Jim Ingham2012-07-201-0/+6
| | | | | | process if it exists OR wait for it" without race conditions. Use that in lldb. llvm-svn: 160578
* Add accessors on process to get & set the selected thread by IndexID (useful ↵Jim Ingham2012-07-132-0/+27
| | | | | | since that's the one that "thread list" shows and it won't get reused even if the underlying system thread ID gets reused. llvm-svn: 160187
* Updated LLVM and added a fix to LLDB which allowsSean Callanan2012-07-131-0/+195
| | | | | | | | | LLDB to distinguish between multiple anonymous structs/unions in the same class. <rdar://problem/11466212> llvm-svn: 160186
* Added documentation for many of our python properties and also made the ↵Greg Clayton2012-06-2927-238/+239
| | | | | | property help show up by declaring the properties correctly. We previosly declared properties into a local "x" variable, what I didn't realize is that the help will use this as the property name for the help output. llvm-svn: 159468
* Added the ability to read the dSYM plist file with source remappings even ↵Greg Clayton2012-06-271-0/+3
| | | | | | | | when DebugSymbols isn't used to find the dSYM. We now parse the plist as XML in the MacOSX symbol vendor. Added the ability to get a section load address given a target which is needed for a previous checking which saves crashlogs. llvm-svn: 159298
* Modify the ranges_access() helper function to be able to lookup the address ↵Greg Clayton2012-06-271-0/+4
| | | | | | | | range in a block given an address. Since blocks can have multiple discontiguous ranges, it helps to be able to get the current address range for the current block in a frame. This can be used in code like: curr_block_range = lldb.frame.block.range[lldb.frame.addr] llvm-svn: 159289
* Fixed the get_process_thread_list function to correctly return a list of all ↵Greg Clayton2012-06-271-1/+1
| | | | | | threads in a process. llvm-svn: 159288
* Make a way to set the result status for Python defined commands, and don't ↵Jim Ingham2012-06-271-0/+3
| | | | | | | | overwrite the status of the result if the python command has set it. llvm-svn: 159273
* Make raw & parsed commands subclasses of CommandObject rather than having ↵Jim Ingham2012-06-081-0/+3
| | | | | | | | | | | | | | | | the raw version implement an Execute which was never going to get run and another ExecuteRawCommandString. Took the knowledge of how to prepare raw & parsed commands out of CommandInterpreter and put it in CommandObject where it belongs. Also took all the cases where there were the subcommands of Multiword commands declared in the .h file for the overall command and moved them into the .cpp file. Made the CommandObject flags work for raw as well as parsed commands. Made "expr" use the flags so that it requires you to be paused to run "expr". llvm-svn: 158235
* rdar://problem/11584012Johnny Chen2012-06-043-6/+4
| | | | | | | | | | | Refactorings of watchpoint creation APIs so that SBTarget::WatchAddress(), SBValue::Watch(), and SBValue::WatchPointee() now take an additional 'SBError &error' parameter (at the end) to contain the reason if there is some failure in the operation. Update 'watchpoint set variable/expression' commands to take advantage of that. Update existing test cases to reflect the API change and add test cases to verify that the SBError mechanism works for SBTarget::WatchAddress() by passing an invalid watch_size. llvm-svn: 157964
* For dump_register_value() sub-routine, issue a return after an error ↵Johnny Chen2012-05-301-0/+1
| | | | | | condition occurs. llvm-svn: 157656
* Fix the comments about LLDB_DISABLE_PYTHON in the python swig shell scripts ↵Jim Ingham2012-05-262-3/+8
| | | | | | to be more clear. llvm-svn: 157506
* Fix missing Resources/Python directory for macosx build.Johnny Chen2012-05-242-3/+3
| | | | llvm-svn: 157405
* Change the "Debug" build to use the current MacOSX SDK. Fix the swig ↵Jim Ingham2012-05-241-5/+6
| | | | | | | | builder to have an explicit short-circuit of the Python SWIG building, rather than relying on the SDKROOT being set. llvm-svn: 157363
* Add SBProcess::GetNumSupportedHardwareWatchpoints() API and export it ↵Johnny Chen2012-05-231-0/+3
| | | | | | | | through the Python scripting bridge. Add/modify some test cases. llvm-svn: 157353
* Integrated a fix for an ARM disassembler crashSean Callanan2012-05-221-3/+29
| | | | | | (0xd 0xd 0xa0 0xf4, or "vld2hs.8 {d0[], d1[]}, [r0]!") llvm-svn: 157289
* Integrated a check into Clang that make sure thatSean Callanan2012-05-211-0/+18
| | | | | | | it doesn't try to call LookupDestructor on an incomplete class. llvm-svn: 157199
* Updated LLVM to take a disassembler fix that causesSean Callanan2012-05-194-494/+533
| | | | | | | the LOCK prefix to be printed explicitly when it's the first prefix on the instruction. llvm-svn: 157096
* I have updated Clang to include support for Objective-CSean Callanan2012-05-177-99/+1723
| | | | | | | | | | boxed expressions returning numbers and strings. I also added boxed expressions to our testcases, and enabled boxed expressions when libarclite is linked into the inferior. llvm-svn: 157026
* Disassemble the signal number and also the mach exceptions when dumping stop ↵Greg Clayton2012-05-161-8/+71
| | | | | | reply packets. llvm-svn: 156946
* Updated LLVM to fix a problem where the ThumbSean Callanan2012-05-161-35/+54
| | | | | | | disassembler improperly sign-extended the target for BL instructions in certain cases. llvm-svn: 156944
* Add GetID to the .i file.Jim Ingham2012-05-161-0/+3
| | | | llvm-svn: 156927
* Found one more place where the OkayToDiscard needs to be consulted.Jim Ingham2012-05-111-0/+3
| | | | | | | Also changed the defaults for SBThread::Step* to not delete extant plans. Also added some test cases to test more complex stepping scenarios. llvm-svn: 156667
* Make every Python API __len__() method return a PyIntObject.Filipe Cabecinhas2012-05-119-11/+12
| | | | | | | swig 2.0+ seems to default to using PyLongObjects, but the __len__() method _must_ return a PyIntObject. llvm-svn: 156639
* Fix SBProcess::ReadMemory's typemap to handle PyLongObjects.Filipe Cabecinhas2012-05-111-5/+8
| | | | llvm-svn: 156638
* Updated LLVM/Clang to force the record layout engineSean Callanan2012-05-101-0/+19
| | | | | | | to complete C++ classes before traversing their base classes. llvm-svn: 156570
* Print out a notification when the process of a target other than the ↵Jim Ingham2012-05-081-0/+3
| | | | | | currently selected target stops. llvm-svn: 156433
* <rdar://problem/11239650> Fixing a bug where the SetValueFromCString() ↵Enrico Granata2012-05-081-0/+3
| | | | | | method failed to operate on dynamic values. The fix consists in making the set operation fall through to the parent. We only actually allow this if the dynamic value is at a 0-offset from the parent, or the new value is 0. Other scenarios would need agreement on the actual meaning of the set operation (do we keep offsetting? do we just assume the user knows what they are doing?) so we prevent them, and let the expression parser deal with the complexity llvm-svn: 156422
* <rdar://problem/11358639>Greg Clayton2012-05-081-1/+1
| | | | | | | | Switch over to the "*-apple-macosx" for desktop and "*-apple-ios" for iOS triples. Also make the selection process for auto selecting platforms based off of an arch much better. llvm-svn: 156354
* Updated LLVM to take a fix for disassembly ofSean Callanan2012-05-081-1/+1
| | | | | | Thumb branch operands. llvm-svn: 156344
* Updated LLVM to fix bad disassembly of operandsSean Callanan2012-05-071-172/+191
| | | | | | | and occasionally failure to recognize instructions. This problem affects ARM and Thumb BLX instructions. llvm-svn: 156307
* Patched our local Clang to fix a crash when parsingSean Callanan2012-05-021-0/+26
| | | | | | | classes/structs that have variable-length arrays at the end. llvm-svn: 156026
* Remove the "-x" from the finish-swig-Python-LLDB.sh shell options so it ↵Greg Clayton2012-04-251-1/+1
| | | | | | | | doesn't print out all of the commands when executing the shell script. Cleaned up the lldb.utils.symbolication, lldb.macosx.heap and lldb.macosx.crashlog. The lldb.macosx.heap can now build a dylib for the current triple into a temp directory and use it from there. llvm-svn: 155577
* Returning data formatters to their previous working condition - Plus fixing ↵Enrico Granata2012-04-251-0/+4
| | | | | | an issue that was preventing Python oneliners from executing llvm-svn: 155563
* Now that we have an LLDB package, make the "lldb.macosx.crashlog" module ↵Greg Clayton2012-04-251-5/+17
| | | | | | work with all of the new module paths. llvm-svn: 155528
* Ensure that lldb/runtime is not a dead point in the Python package hierarchy ↵Enrico Granata2012-04-251-2/+6
| | | | | | - This is a first preliminary step in fixing data formatters after Greg's changes to the Python resources on-disk layout llvm-svn: 155525
* Maked LLDB into a package so we can import things without poluting the ↵Greg Clayton2012-04-251-409/+100
| | | | | | | | global namespace. Enrico will follow this up with fixing the data formatter test cases that are failing. llvm-svn: 155514
OpenPOWER on IntegriCloud