summaryrefslogtreecommitdiffstats
path: root/lldb/source/Expression
Commit message (Collapse)AuthorAgeFilesLines
...
* Reverse out r219169 related to quote handling.Todd Fiala2014-10-104-15/+3
| | | | | | | | | Addresses pr/21190 (http://llvm.org/bugs/show_bug.cgi?id=21190). r219169 implemented this change list: http://reviews.llvm.org/D5472 for more details. llvm-svn: 219461
* Add "target.expr-parser-compiler-args" setting.Todd Fiala2014-10-064-3/+15
| | | | | | | | | | | | | This setting contains the following: A list containing all the arguments to be passed to the expression parser compiler. This change also ensures quoted arguments are handled appropriately. See http://reviews.llvm.org/D5472 for more details. Change by Tong Shen. llvm-svn: 219169
* This checkin is the first step in making the lldb thread stepping mechanism ↵Jim Ingham2014-09-292-17/+17
| | | | | | | | | | | | more accessible from the user level. It adds the ability to invent new stepping modes implemented by python classes, and to view the current thread plan stack and to some extent alter it. I haven't gotten to documentation or tests yet. But this should not cause any behavior changes if you don't use it, so its safe to check it in now and work on it incrementally. llvm-svn: 218642
* Adjust to LLVM JIT API changeTodd Fiala2014-09-241-111/+2
| | | | | | | | | | | | | | | | | | Those wrapper functions seems not used by lldb... Removed Reference for replacing JITMemoryManager with SectionMemoryManager replacing "llvm::JITMemoryManager::CreateDefaultMemManager()" with "new llvm::SectionMemoryManager()" http://llvm.org/viewvc/llvm-project/llvm/trunk/tools/llvm-jitlistener/llvm-jitlistener.cpp?r1=218316&r2=218315&pathrev=218316 Change by Tong Shen. Tested: Ubuntu 14.04 x86_64 MacOSX 10.9.5 with Xcode Version 6.1 (6A1030) (Beta) llvm-svn: 218383
* Clean-up warnings on Linux/GCCDavid Majnemer2014-09-161-0/+1
| | | | llvm-svn: 217862
* Fix -Werror,-Wcovered-switch-default warning in DWARFExpressionEric Christopher2014-09-091-5/+0
| | | | | | | as part of an attempt to get lldb building inside llvm with -Werror enabled. llvm-svn: 217418
* Really fix the LLDB buildReid Kleckner2014-09-031-4/+1
| | | | llvm-svn: 217003
* Fixed a build problem dueo to changes in theSean Callanan2014-08-301-1/+1
| | | | | | | way ownership of memory buffers is handled in clang's SourceManager. llvm-svn: 216810
* Update for LLVM API change.Rafael Espindola2014-08-271-2/+2
| | | | llvm-svn: 216603
* Initialize LLVM when LLDB is initialized, andSean Callanan2014-08-231-10/+0
| | | | | | | | install a crash handler. <rdar://problem/18083226> llvm-svn: 216309
* Fixes a few more places where we were manually setting the filename.Zachary Turner2014-08-211-1/+1
| | | | llvm-svn: 216247
* Move Host::GetLLDBPath to HostInfo.Zachary Turner2014-08-211-1/+2
| | | | | | | | This continues the effort to get Host code moved over to HostInfo, and removes many more instances of preprocessor defines along the way. llvm-svn: 216195
* Move some Host logic into HostInfo class.Zachary Turner2014-08-191-2/+2
| | | | | | | | | | | | | | | | | | This patch creates a HostInfo class, a static class used to answer basic queries about the host platform. As part of this change, some functionality is moved from Host to HostInfo, and relevant fixups are performed in the rest of the codebase. This is part of a larger effort to isolate more code in the Host layer into platform-specific groups, to make it easier to make platform specific changes for a particular Host without breaking other hosts. Reviewed by: Greg Clayton Differential Revision: http://reviews.llvm.org/D4963 llvm-svn: 215992
* Update for llvm api change.Rafael Espindola2014-08-191-5/+1
| | | | llvm-svn: 215969
* Fix typo in error message.Eric Christopher2014-08-141-1/+1
| | | | llvm-svn: 215681
* Patch to enable LLDB to extract value bytes from DWARF block forms and ↵Enrico Granata2014-08-111-3/+30
| | | | | | udata/sdata forms. By Greg Clayton llvm-svn: 215379
* Fix some typos:Sylvestre Ledru2014-08-111-1/+1
| | | | | | | | * transfered => transferred * unkown => unknown * sucessfully => successfully llvm-svn: 215367
* Revert "Fix the build broken as a result of deleting jit from LLVM."Zachary Turner2014-08-071-1/+3
| | | | | | | jit was re-added back to LLVM, so now we require to link against it again. Should it get removed again, then revert this revert. llvm-svn: 215170
* Fix the build broken as a result of deleting jit from LLVM.Zachary Turner2014-08-071-3/+1
| | | | llvm-svn: 215119
* Fixed the build broken by the r215046.Hafiz Abid Qadeer2014-08-071-2/+2
| | | | llvm-svn: 215107
* Rewrote the initial DW_OP_piece support to be able to support opcodes like:Greg Clayton2014-07-311-108/+145
| | | | | | | | | | | | | | | | | | DW_OP_fbreg(N) DW_OP_piece(4) DW_OP_fbreg(M) DW_OP_piece(8) DW_OP_fbreg(N) DW_OP_piece(4) DW_OP_piece(8) The first grabs 4 bytes from FP+N followed by 8 bytes from FP+M, the second grabs 4 bytes from FP+N followed by zero filling 8 bytes which are unavailable. Of course regiters are stuff supported: DW_OP_reg3 DW_OP_piece(4) DW_OP_reg8 DW_OP_piece(8) The fix does the following: 1 - don't push the full piece value onto the stack, keep it on the side 2 - fill zeros for DW_OP_piece(N) opcodes that have nothing on the stack (instead of previously consuming the full piece that was pushed onto the stack) 3 - simplify the logic <rdar://problem/16930524> llvm-svn: 214415
* lldb is a scope, not a labelEd Maste2014-07-301-1/+1
| | | | llvm-svn: 214327
* Use Process::ReadMemoryFromPointer() instead of manually reading the pointer.Greg Clayton2014-07-301-6/+3
| | | | llvm-svn: 214323
* (no commit message)Greg Clayton2014-07-301-1/+1
| | | | llvm-svn: 214319
* Attempt to fix the expression parser after r214119Reid Kleckner2014-07-291-10/+10
| | | | | | | __INT?_TYPE__ is now explicitly, so adding an explicit 'signed' specifier causes errors. llvm-svn: 214233
* Update lldb to track recent Triple arm64 enum removal and collapse into aarch64.Todd Fiala2014-07-231-1/+1
| | | | | | | | | | | See the following llvm change for details: r213743 | tnorthover | 2014-07-23 05:32:47 -0700 (Wed, 23 Jul 2014) | 9 lines AArch64: remove arm64 triple enumerator. This change fixes build breaks on Linux and MacOSX lldb. llvm-svn: 213755
* Add the ability to suppress the creation of a persistentJim Ingham2014-07-191-0/+5
| | | | | | | | result variable and use in in "Process::LoadImage" so that, for instance, "process load" doesn't increment the return variable number. llvm-svn: 213440
* lldb needs to support DW_op_piece masks for values in subregister and also ↵Greg Clayton2014-07-121-2/+76
| | | | | | | | | | to be able to piece together a value that is spread across multiple registers. Patch from Adrian Prantl. <rdar://problem/16040521> llvm-svn: 212867
* Remove code that was merged incorrectly.Greg Clayton2014-07-111-2/+0
| | | | llvm-svn: 212791
* Cleanup the iOS simulator code.Greg Clayton2014-07-101-0/+2
| | | | | | | | | | | Fixes include: - Don't say that "<arch>-apple-ios" is compatible with "<arch>-apple-macosx" - Fixed DynamicLoaderMacOSXDYLD so specify an architecture that was converted solely from a cputype and subtype, just specify the file + UUID. - Fixed PlatformiOSSimulator::GetSupportedArchitectureAtIndex() so it returns the correct archs - Fixed SymbolFileDWARFDebugMap to load .o files correctly by just specifying the architecture without the vendor and OS now that "<arch>-apple-ios" is not compatible with "<arch>-apple-macosx" so we can load .o files correctly for DWARF with debug map - Fixed the coded in TargetList::CreateTarget() so it does the right thing with an underspecified triple where just the arch is specified. llvm-svn: 212783
* Dont' use a random probe & alloc strategy for the IRMemoryMap.Zachary Turner2014-07-091-30/+8
| | | | | | | | | | | | | | | | | | | | | | | The current strategy for host allocation is to choose a random address and attempt to allocate there, eventually failing if the allocation cannot be satisfied. The C standard only guarantees that RAND_MAX >= 32767, so for platforms that use a very small RAND_MAX allocations will fail with very high probability. On such platforms (Windows is one), you can reproduce this trivially by running lldb, typing "expr (3)" and then hitting enter you see a failure. Failures generally happen with a frequency of about 1 failure every 5 evaluations. There is no good reason that allocations need to look like "real" pointers, so this patch changes the allocation scheme to simply jump straight to the end and grab a free chunk of memory. Reviewed By: Sean Callanan Differential Revision: http://reviews.llvm.org/D4300 llvm-svn: 212630
* Correct indentation level for one line.Jason Molenda2014-07-091-1/+1
| | | | llvm-svn: 212582
* If a hand-called function is interrupted by hitting a breakpoint, then Jim Ingham2014-07-081-7/+13
| | | | | | | when you continue to finish off the function call, the expression result will be included as part of the thread stop info. llvm-svn: 212506
* remove trailing whitespace + remove some useless commentsSylvestre Ledru2014-07-0613-2056/+2038
| | | | llvm-svn: 212411
* Update lldb code to match the change in clang r212386Sylvestre Ledru2014-07-061-1/+1
| | | | llvm-svn: 212410
* Track changes from clang r212388Alp Toker2014-07-061-3/+3
| | | | llvm-svn: 212391
* Start converting usages of off_t to other types.Zachary Turner2014-07-022-8/+8
| | | | | | | | | | | | | | | | | | | | | | | off_t is a type which is used for file offsets. Even more specifically, it is only used by a limited number of C APIs that deal with files. Any usage of off_t where the variable is not intended to be used with one of these APIs is a bug, by definition. This patch corrects some easy mis-uses of off_t, generally by converting them to lldb::offset_t, but sometimes by using other types such as size_t, when appropriate. The use of off_t to represent these offsets has worked fine in practice on linux-y platforms, since we used _FILE_OFFSET_64 to guarantee that off_t was a uint64. On Windows, however, _FILE_OFFSET_64 is unrecognized, and off_t will always be 32-bit. So the usage of off_t on Windows actually leads to legitimate bugs. Reviewed by: Greg Clayton Differential Revision: http://reviews.llvm.org/D4358 llvm-svn: 212192
* Replace uint32_t by lldb::RegisterKing in register context API.Jean-Daniel Dupas2014-07-021-2/+2
| | | | llvm-svn: 212172
* Add lldb-gdbserver support for Linux x86_64.Todd Fiala2014-06-301-1/+6
| | | | | | | | | | | | | | | | | | | | | This change brings in lldb-gdbserver (llgs) specifically for Linux x86_64. (More architectures coming soon). Not every debugserver option is covered yet. Currently the lldb-gdbserver command line can start unattached, start attached to a pid (process-name attach not supported yet), or accept lldb attaching and launching a process or connecting by process id. The history of this large change can be found here: https://github.com/tfiala/lldb/tree/dev-tfiala-native-protocol-linux-x86_64 Until mid/late April, I was not sharing the work and continued to rebase it off of head (developed via id tfiala@google.com). I switched over to user todd.fiala@gmail.com in the middle, and once I went to github, I did merges rather than rebasing so I could share with others. llvm-svn: 212069
* Don't truncate the target triple when initializing clang.Zachary Turner2014-06-271-13/+0
| | | | | | | | Reviewed by: Sean Callanan Differential Revision: http://reviews.llvm.org/D4282 llvm-svn: 211968
* Fix silly compilation error.Zachary Turner2014-06-251-2/+2
| | | | llvm-svn: 211728
* Fix a bug in the IRMemoryMap which generated bogus allocations.Zachary Turner2014-06-251-16/+31
| | | | | | | | | | | | | Previously, only the starting locations of the candidate interval and the existing interval were compared. To correctly detect range intersections, it is necessary to compare the entire range of both intervals against each other. Reviewed by: scallanan Differential Revision: http://reviews.llvm.org/D4286 llvm-svn: 211726
* Patch from Keno Fischer to enable JITLoaderGDB with mach-o file support.Greg Clayton2014-06-241-0/+1
| | | | | | The patch is as is with the functionality left disabled for apple vendors because of performance regressions. If this is enabled it ends up searching for symbols in all shared libraries that are loadeded. llvm-svn: 211638
* Don't set the ABI to apcs-gnu for non-ARM iOS targets (i.e., theSean Callanan2014-06-231-2/+3
| | | | | | | | simulator). <rdar://problem/17399406> llvm-svn: 211536
* Don't dereference target if it is NULL. Greg Clayton2014-06-131-1/+1
| | | | | | Caught by the clang static analyzer by Jason Molenda. llvm-svn: 210941
* Remove unused variablesSaleem Abdulrasool2014-06-131-9/+0
| | | | | | | | Address the 'variable set but not used' warning from GCC. In some cases a few additional calls were removed where there should be no visible side effects of the calls (i.e. should not effect any cached state). llvm-svn: 210879
* Track clang changes from r210764Alp Toker2014-06-121-3/+5
| | | | llvm-svn: 210765
* Fix r209807 which inadvertently removed thingsArnaud A. de Grandmaison2014-05-291-0/+3
| | | | llvm-svn: 209809
* Fix build. Method was renamed in r209800.Nikola Smiljanic2014-05-291-5/+2
| | | | llvm-svn: 209807
* Remove unused variable.Greg Clayton2014-05-281-2/+0
| | | | llvm-svn: 209703
OpenPOWER on IntegriCloud