summaryrefslogtreecommitdiffstats
path: root/lldb/source/Core
Commit message (Collapse)AuthorAgeFilesLines
...
* Make the Expression Execution result enum available to the SB API layer.Jim Ingham2014-05-051-0/+29
| | | | | | | | | Add a callback that will allow an expression to be cancelled between the expression evaluation stages (for the ClangUserExpressions.) <rdar://problem/16790467>, <rdar://problem/16573440> llvm-svn: 207944
* LLDB_INVALID_OFFSET can be large than a size_t on ILP32 systems, so useJoerg Sonnenberger2014-05-021-2/+2
| | | | | | SIZE_MAX here. llvm-svn: 207855
* Fixed CTRL+C related issues:Greg Clayton2014-05-023-25/+64
| | | | | | | | | | | | - CTRL+C wasn't clearing the command in lldb - CTRL+C doesn't work in python macros in lldb - Ctrl+C no longer interrupts the running process that you attach to <rdar://problem/15949205> <rdar://problem/16778652> <rdar://problem/16774411> llvm-svn: 207816
* Make sure that the CommandInterpreter::m_command_io_handler_sp gets reset ↵Greg Clayton2014-04-251-0/+2
| | | | | | | | | | when we quit. Currently if you run _any_ python, python has the "lldb.debugger" global variable and it has a strong reference to a lldb_private::Debugger since it is a lldb::SBDebugger object with a shared pointer. This makes sure that your LLDB command interpreter history is saved each time you quit command line LLDB. llvm-svn: 207164
* Fixed a case where if someone added a "bind -v" to their ~/.editrc file, key ↵Greg Clayton2014-04-231-0/+1
| | | | | | | | | | mappings would get messed up. I fixed this by only doing el_set(e, EL_BIND, ...) calls before sourcing the .editrc files. <rdar://problem/16614095> llvm-svn: 207005
* <rdar://problem/16477472>Enrico Granata2014-04-091-4/+3
| | | | | | | | | Set the correct FormatManager revision before starting to figure out the new formatters This can avoid entering some corner cases where as part of figuring out formatters we try to figure out dynamic types, and in turn that causes us to go back in trying to fetch new formatters - it is not only a futile exercise, it's also prone to endless recursion This would only cause a behavior change if getting this chain started would eventually cause something to run and alter the formatters, a very unlikely if at all possible sequence of events llvm-svn: 205928
* Use the default TID format in curses UIEd Maste2014-04-091-3/+7
| | | | | | | | | | TIDs are conventionally shown as decimal values on FreeBSD and Linux. Thus, use the ${thread.id%tid} format string to display the thread ID, instead of a fixed hex format. llvm.org/pr19380 llvm-svn: 205912
* Revert r205769 as it breaks the build on FreeBSD:Ed Maste2014-04-081-13/+7
| | | | | | | error: declaration of constexpr static data member 'spec' requires an initializer llvm-svn: 205776
* Added i686 architecture (ArchSpec::Core::eCore_x86_32_i686).Virgile Bello2014-04-081-0/+1
| | | | llvm-svn: 205770
* Improve demangler to compile with MSVC.Virgile Bello2014-04-081-7/+13
| | | | llvm-svn: 205769
* Fixed a case where we could spin indefinitely if we got an error from fgets ↵Greg Clayton2014-04-071-0/+6
| | | | | | | | that isn't EINTR. <rdar://problem/16535437> llvm-svn: 205740
* Don’t exit the command interpreter if we get interrupted by an EINTR when ↵Greg Clayton2014-04-041-1/+4
| | | | | | calling fgets(). llvm-svn: 205638
* sweep up -Wformat warnings from gccSaleem Abdulrasool2014-04-0413-264/+287
| | | | | | | This is a purely mechanical change explicitly casting any parameters for printf style conversion. This cleans up the warnings emitted by gcc 4.8 on Linux. llvm-svn: 205607
* Workaround for collision between enum members in LLVM's MachO.h and system ↵Jim Ingham2014-04-021-1/+1
| | | | | | | | | | headers on Mac OS X (in particular mach/machine.h). <rdar://problem/16494607> llvm-svn: 205480
* sanitise sign comparisonsSaleem Abdulrasool2014-04-024-34/+37
| | | | | | | | This is a mechanical change addressing the various sign comparison warnings that are identified by both clang and gcc. This helps cleanup some of the warning spew that occurs during builds. llvm-svn: 205390
* <rdar://problem/16424592>Enrico Granata2014-03-311-1/+1
| | | | | | | | For some reason, the libc++ vector<bool> data formatter was essentially a costly no-up, doing everything required of it, except actually generating the child values! This restores its functionality llvm-svn: 205259
* lldb arm64 import.Jason Molenda2014-03-293-1/+8
| | | | | | | | | | | | | | | | These changes were written by Greg Clayton, Jim Ingham, Jason Molenda. It builds cleanly against TOT llvm with xcodebuild. I updated the cmake files by visual inspection but did not try a build. I haven't built these sources on any non-Mac platforms - I don't think this patch adds any code that requires darwin, but please let me know if I missed something. In debugserver, MachProcess.cpp and MachTask.cpp were renamed to MachProcess.mm and MachTask.mm as they picked up some new Objective-C code needed to launch processes when running on iOS. llvm-svn: 205113
* <rdar://problem/14862302>Enrico Granata2014-03-251-3/+18
| | | | | | | For small structs, the frame format now prints them as one-liners This follows the same definition that frame variable does for deciding what a "small struct" is, and as such should be fairly consistent with the variable display in general llvm-svn: 204762
* <rdar://problem/14515139>Enrico Granata2014-03-251-1/+1
| | | | | | | Add a GetFoundationVersion() to AppleObjCRuntime This API is used to return and cache the major version of Foundation.framework, which is potentially a useful piece of data to key off of to enable or disable certain ObjC related behaviors (especially in data formatters) llvm-svn: 204756
* JITed functions can now have debug info and be debugged with debug and ↵Greg Clayton2014-03-241-0/+57
| | | | | | | | | | | | | | | | | | | source info: (lldb) b puts (lldb) expr -g -i0 -- (int)puts("hello") First we will stop at the entry point of the expression before it runs, then we can step over a few times and hit the breakpoint in "puts", then we can continue and finishing stepping and fininsh the expression. Main features: - New ObjectFileJIT class that can be easily created for JIT functions - debug info can now be enabled when parsing expressions - source for any function that is run throught the JIT is now saved in LLDB process specific temp directory and cleaned up on exit - "expr -g --" allows you to single step through your expression function with source code <rdar://problem/16382881> llvm-svn: 204682
* Include <mutex> for std::once.Greg Clayton2014-03-241-0/+2
| | | | llvm-svn: 204632
* Modified patch from Piotr Rak that makes GetSharedModuleList() more thread ↵Greg Clayton2014-03-241-10/+34
| | | | | | safe and also fixed a missed member initialization on the copy contractor and also makes the assignment operator safer. llvm-svn: 204622
* Cleanup some dead assignements reported by scan-buildArnaud A. de Grandmaison2014-03-221-1/+1
| | | | | | No functionnal change. llvm-svn: 204545
* Switch over to use the ArchSpec::GetMachine() instead of ArchSpec::GetCore() ↵Greg Clayton2014-03-201-6/+3
| | | | | | to keep the code more portable as we add new core types to ArchSpec. llvm-svn: 204400
* Guard against reading from host address of 0 in getting the data from a Value.Jim Ingham2014-03-201-1/+6
| | | | llvm-svn: 204359
* cleanup unreferenced functionsSaleem Abdulrasool2014-03-201-18/+2
| | | | | | | | | | | | | This is a mechanical cleanup of unused functions. In the case where the functions are referenced (in comment form), I've simply commented out the functions. A second pass to clean that up is warranted. The functions which are otherwise unused have been removed. Some of these were introduced in the initial commit and not in use prior to that point! NFC llvm-svn: 204310
* Core: preprocess out TestPromptFormatsSaleem Abdulrasool2014-03-201-0/+2
| | | | | | | | | | TestPromptFormats appears as though it may be a useful unit test. Unfortunately, there is no invocation mechanism in place right now. It is unclear how to add a unit test for this scenario to the existing tests. It would be ideal to remove this entirely, but I am hopeful that this can/will be pulled out into a test still since it uses a user accessible interface. llvm-svn: 204309
* Change the backtrace view into a process tree view where you can expand the ↵Greg Clayton2014-03-191-87/+219
| | | | | | process, its threads and see all frames under each thread. llvm-svn: 204251
* This commit reworks how the thread plan's ShouldStopHere mechanism works, so ↵Jim Ingham2014-03-131-3/+2
| | | | | | | | | | | | | | | that it is useful not only for customizing "step-in" behavior (e.g. step-in doesn't step into code with no debug info), but also the behavior of step-in/step-out and step-over when they step out of the frame they started in. I also added as a proof of concept of this reworking a mode for stepping where stepping out of a frame into a frame with no debug information will continue stepping out till it arrives at a frame that does have debug information. This is useful when you are debugging callback based code where the callbacks are separated from the code that initiated them by some library glue you don't care about, among other things. llvm-svn: 203747
* Replace some _MSC_VER with _WIN32.Hafiz Abid Qadeer2014-03-121-2/+2
| | | | | | | This allows to use some code for mingw which was previously only used for MSVC. llvm-svn: 203651
* After doing all the work to compute the target ValueObject we want to ↵Jim Ingham2014-03-111-0/+7
| | | | | | | | | | evaluate, make sure we actually got something before proceeding. <rdar://problem/16282875> llvm-svn: 203591
* update for renaming in LLVMSaleem Abdulrasool2014-03-111-1/+1
| | | | llvm-svn: 203533
* Fix Mingw build error by using lower case name for windows header files.Hafiz Abid Qadeer2014-03-101-1/+1
| | | | llvm-svn: 203505
* Don't hold the ThreadList lock over calls to the GetStatus (Process or ↵Jim Ingham2014-03-071-53/+58
| | | | | | | | | | Thread) calls or the lower levels of the Process won't be able to restart. <rdar://problem/16244835> llvm-svn: 203233
* Allow line numbers to be shown in multi-line expressions.Greg Clayton2014-03-071-0/+23
| | | | llvm-svn: 203185
* Moved JITLoader.cpp and JITLoaderList.cpp over into "source/Target" since ↵Greg Clayton2014-03-063-109/+0
| | | | | | | | the header files were in "include/lldb/Target". Also enabled the ELF Core file support in all builds since the header files have been properly separated from ProcessMonitor. llvm-svn: 203035
* Add support for JIT debugging on Linux using the GDB JIT interface. Patch ↵Andrew MacPherson2014-03-055-3/+235
| | | | | | written with Keno Fischer. llvm-svn: 202956
* Fixed SBDebugger.CreateTarget("filename") and also make sure remote targets ↵Greg Clayton2014-03-041-13/+42
| | | | | | | | | don't pickup bogus locally cached files. <rdar://problem/16217254> <rdar://problem/16078651> llvm-svn: 202890
* Temporarily revert part of Greg's changes in r202738 which are causing ↵Jason Molenda2014-03-041-42/+13
| | | | | | problems with the testsuite and SBDebugger::CreateTarget(). llvm-svn: 202776
* "size_t" isn't always 64 bit, it is 32 bit on 32 bit systems. All printf ↵Greg Clayton2014-03-032-14/+46
| | | | | | | | style statements that were assuming size_t were 64 bit were changed, and they were also changed to display them as unsigned values as "size_t" isn't signed. If you print anything with 'size_t', please cast it to "uint64_t" in the printf and use PRIu64 or PRIx64. llvm-svn: 202738
* Fix Windows build using portable types for formatting the log outputsDeepak Panickal2014-03-036-23/+23
| | | | llvm-svn: 202723
* Better error reporting when a variable can't beSean Callanan2014-02-281-4/+5
| | | | | | | | | | | read during materialization. First of all, report if we can't read the data for some reason. Second, consult the ValueObject's error and report that if there's some problem. <rdar://problem/16074201> llvm-svn: 202552
* Fixed "process launch --tty" on MacOSX.Greg Clayton2014-02-281-8/+8
| | | | llvm-svn: 202535
* Fixed all overlapping prompt issues.Greg Clayton2014-02-281-53/+81
| | | | | | | | I carefully reviewed exactly how the IOHandlers interact and found places where we weren't properly controlling things. There should be no overlapping prompts and all output should now come out in a controlled fashion. <rdar://problem/16111293> llvm-svn: 202525
* remove useless declarations found thanks to scan-buildSylvestre Ledru2014-02-271-3/+1
| | | | llvm-svn: 202440
* Fixed the command line LLDB so that "CTRL+C" will interrupt a running ↵Greg Clayton2014-02-242-1/+12
| | | | | | process again. llvm-svn: 202086
* Initial patch for supporting Hexagon DSPDeepak Panickal2014-02-191-1/+10
| | | | llvm-svn: 201665
* <rdar://problem/16006373>Enrico Granata2014-02-151-12/+4
| | | | | | | Revert the spirit of r199857 - a convincing case can be made that overriding a summary's format markers behind its back is not the right thing to do This commit reverts the behavior of the code to the previous model, and changes the test case to validate the opposite of what it was validating before llvm-svn: 201455
* Fixed deadlocks that could occur when using python for breakpoints, ↵Greg Clayton2014-02-131-8/+17
| | | | | | | | | operating system plugins, and other async python usage. <rdar://problem/16054348> <rdar://problem/16040833> llvm-svn: 201372
* Modified ObjectFile::SetLoadAddress() to now be:Greg Clayton2014-02-072-3/+4
| | | | | | | | | | | | | | ObjectFile::SetLoadAddress (Target &target, lldb::addr_t value, bool value_is_offset); Now "value" is a slide if "value_is_offset" is true, and "value" is an image base address otherwise. All previous usage of this API was using slides. Updated the ObjectFileELF and ObjectFileMachO SetLoadAddress methods to do the right thing. Also updated the ObjectFileMachO::SetLoadAddress() function to not load __LINKEDIT when it isn't needed and to only load sections that belong to the executable object file. llvm-svn: 201003
OpenPOWER on IntegriCloud