summaryrefslogtreecommitdiffstats
path: root/lldb/source/Expression
Commit message (Collapse)AuthorAgeFilesLines
* Fix compilation errors after clang modules checkin.Zachary Turner2014-12-051-2/+3
| | | | llvm-svn: 223484
* Added CMake support so all the Clang modules codeSean Callanan2014-12-051-0/+1
| | | | | | | will at least be built by non-OS X builders. This should head off some build breakage at the pass. llvm-svn: 223437
* Changes to the expression parser to actually useSean Callanan2014-12-052-3/+81
| | | | | | the types that we find in Clang modules. llvm-svn: 223436
* Additional changes required by r223433.Sean Callanan2014-12-051-34/+27
| | | | llvm-svn: 223435
* This is the meat of the code to add Clang modulesSean Callanan2014-12-051-0/+370
| | | | | | | | | | | | | | support to LLDB. It includes the following: - Changed DeclVendor to TypeVendor. - Made the ObjCLanguageRuntime provide a DeclVendor rather than a TypeVendor. - Changed the consumers of TypeVendors to use DeclVendors instead. - Provided a few convenience functions on ClangASTContext to make that easier. llvm-svn: 223433
* Revert "Fix a build breakage. Looks like the LLVM side of this change has ↵David Majnemer2014-12-041-1/+1
| | | | | | | | | been reverted" This reverts commit r223375. We need to use unique_ptr to build with LLVM r223183. llvm-svn: 223388
* Fix a build breakage. Looks like the LLVM side of this change has been revertedEnrico Granata2014-12-041-1/+1
| | | | llvm-svn: 223375
* Update setMCJITMemoryManager call to keep in line with llvm r223183.Jason Molenda2014-12-031-1/+1
| | | | | | Patch from Ryan Goodfellow. llvm-svn: 223196
* Revert "Update for LLVM API change in r221024"Duncan P. N. Exon Smith2014-11-122-2/+2
| | | | | | This reverts commit r221073 to match upstream revert in r221711. llvm-svn: 221749
* Made the expression parser more resilient againstSean Callanan2014-11-111-0/+21
| | | | | | | | | being asked about symbols it doesn't know about. If it's asked about a symbol by mangled name and it finds nothing, then it will try again with the demangled base name. llvm-svn: 221660
* Fix comments to match the current reality.Greg Clayton2014-11-101-2/+2
| | | | llvm-svn: 221633
* Fix selectors not being objc-uniquified in the expression parser after a ↵Greg Clayton2014-11-101-1/+1
| | | | | | recent renaming in clang (clang change for revision 221451). This broke all objective C expressions in LLDB. llvm-svn: 221632
* Fix LLDB build as a result of upstream LLVM changes.Zachary Turner2014-11-051-2/+1
| | | | llvm-svn: 221378
* Update for LLVM API change in r221024Ed Maste2014-11-022-2/+2
| | | | llvm-svn: 221073
* Don't allow the expression parser to magicallySean Callanan2014-10-202-2/+0
| | | | | | | | | look through 'self' at its ivars. It produces surprising results. <rdar://problem/18698760> llvm-svn: 220220
* Don't use mkstemp, as it doesn't exist on Windows.Zachary Turner2014-10-201-5/+6
| | | | | | | Differential Revision: http://reviews.llvm.org/D5849 Reviewed by: Jason Molenda llvm-svn: 220218
* Fixed the expression parser to handle cases whereSean Callanan2014-10-171-1/+1
| | | | | | | | | GetValueForVariableExpressionPath returns NULL and doesn't set an error. <rdar://problem/18682916> llvm-svn: 220070
* Change a use of mktemp() to mkstemp() for better security.Jason Molenda2014-10-161-4/+4
| | | | | | | | We have two more uses of mktemp still in the source base but they'll take a little more consideration. clang static analyzer fixit. llvm-svn: 219983
* Only call RemovePersistentVariable on expr_result if that sharedJason Molenda2014-10-161-1/+1
| | | | | | pointer contains something. llvm-svn: 219966
* Another logical-or vrs. bitwise-or mixup in ClangUserExpression.Jason Molenda2014-10-161-4/+4
| | | | | | clang unreachable code warning. llvm-svn: 219918
* A series of bit-flag values should be bitwise-or'ed not logical-or'ed.Jason Molenda2014-10-161-4/+4
| | | | | | clang unreachable code warning. llvm-svn: 219916
* Ryan Brown's patch to handle DW_OP_call_frame_cfa addressesJason Molenda2014-10-161-1/+1
| | | | | | | as load addreses instead of host addresses. http://reviews.llvm.org/D5735 llvm-svn: 219896
* Ah, accidentally committed a patch I didn't mean to. Jason Molenda2014-10-161-1/+1
| | | | llvm-svn: 219888
* It's possible for long_options[long_options_index].definition to be nullJason Molenda2014-10-161-1/+1
| | | | | | | | from the previous for() loop - check that it is non-null before trying to deref it. clang static analyzer fixit. llvm-svn: 219887
* Check that process is non-null before calling a method in it.Jason Molenda2014-10-161-1/+1
| | | | | | clang static analyzer fixit. llvm-svn: 219886
* Rework the way we pass "run multiple command" options to the various API's thatJim Ingham2014-10-111-0/+2
| | | | | | | | | | | | | | | do that (RunCommandInterpreter, HandleCommands, HandleCommandsFromFile) to gather the options into an options class. Also expose that to the SB API's. Change the way the "-o" options to the lldb driver are processed so: 1) They are run synchronously - didn't really make any sense to run the asynchronously. 2) The stop on error 3) "quit" in one of the -o commands will not quit lldb - not the command interpreter that was running the -o commands. I added an entry to the run options to stop-on-crash, but I haven't implemented that yet. llvm-svn: 219553
* Add a new disassembly-format specification so that the disassemblerJason Molenda2014-10-101-1/+10
| | | | | | | | | | | | | | | | | | | | | output style can be customized. Change the built-in default to be more similar to gdb's disassembly formatting. The disassembly-format for a gdb-like output is ${addr-file-or-load} <${function.name-without-args}${function.concrete-only-addr-offset-no-padding}>: The disassembly-format for the lldb style output is {${function.initial-function}{${module.file.basename}`}{${function.name-without-args}}:\n}{${function.changed}\n{${module.file.basename}`}{${function.name-without-args}}:\n}{${current-pc-arrow} }{${addr-file-or-load}}: The two backticks in the lldb style formatter triggers the sub-expression evaluation in CommandInterpreter::PreprocessCommand() so you can't use that one as-is ... changing to use ' characters instead of ` would work around that. <rdar://problem/9885398> llvm-svn: 219544
* 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
OpenPOWER on IntegriCloud