summaryrefslogtreecommitdiffstats
path: root/lldb/source
Commit message (Collapse)AuthorAgeFilesLines
* NetBSD doesn't provide struct statfs, make use of struct statvfsStephane Sezer2015-09-091-0/+22
| | | | | | | | | | | | Reviewers: joerg, sas Subscribers: labath, lldb-commits Differential Revision: http://reviews.llvm.org/D12661 Change by Kamil Rytarowski <n54@gmx.com> llvm-svn: 247115
* Prevent from a redefinition of _GLIBCXX_USE_NANOSLEEPStephane Sezer2015-09-091-0/+2
| | | | | | | | | | | | | | Summary: Build warning caught on NetBSD. Reviewers: joerg, sas Subscribers: lldb-commits Differential Revision: http://reviews.llvm.org/D12662 Change by Kamil Rytarowski <n54@gmx.com> llvm-svn: 247114
* Data formatter candidate matches can be generated in a number of ways; ↵Enrico Granata2015-09-094-34/+61
| | | | | | | | | | language-based dynamic type discovery being one of them (for instance, this is what takes an 'id' and discovers that it truly is an __NSArrayI, so it should probably use the NSArray formatter) This used to be hardcoded in the FormatManager, but in a pluginized world that is not the right way to go So, move this step to the Language plugin such that appropriate language plugins for a type get a say about adding candidates to the formatters lookup tables llvm-svn: 247112
* Fix log message warning in SBThread.Bruce Mitchener2015-09-091-1/+1
| | | | | | | | | | | | | | | Summary: The format string was not set up correctly as it was missing the %. This resulted in a warning (correctly) that the data arguments were not all used. Reviewers: clayborg, jingham Subscribers: lldb-commits Differential Revision: http://reviews.llvm.org/D12714 llvm-svn: 247111
* ExpressionVariable now uses llvm::cast() instead of As...() for RTTI.Sean Callanan2015-09-084-24/+29
| | | | | | | | As part of our overall switch from hand-rolling RTTI to using LLVM-compatible methods, I've done the same for ExpressionVariable. The main documentation for how to do this is in TypeSystem.h, so I've simply referred to that. llvm-svn: 247085
* Implement a Target::GetTypeSystemForLanguage API, as well as provide helpers ↵Enrico Granata2015-09-083-32/+56
| | | | | | on the TypeSystem to get numeric types of specific sizes and signedness llvm-svn: 247082
* SBThread::StepOutOfFrame should check that the SBStackFrame it gets passedJim Ingham2015-09-081-1/+15
| | | | | | is valid, and that its thread is the same as this SBThread. llvm-svn: 247046
* Use LLVM casting for TypeSystem so you can cast it to subclasses.Greg Clayton2015-09-0811-71/+84
| | | | | | | | | | | | | | This will keep our code cleaner and it removes the need for intrusive additions to TypeSystem like: class TypeSystem { virtual ClangASTContext * AsClangASTContext() = 0; } As you can now just use the llvm::dyn_cast and other casts. llvm-svn: 247041
* Fix debugger shutdown when Python interpreter is loaded.Oleksiy Vyalov2015-09-081-1/+5
| | | | | | http://reviews.llvm.org/D12683 llvm-svn: 247023
* Fix assertion failure caused by a bug in 128bit register handling in ↵Tamas Berghammer2015-09-081-1/+1
| | | | | | RegisterValue llvm-svn: 247022
* Fix the handling of FPR offsets in Linux arm/aarch64 register contextsTamas Berghammer2015-09-075-9/+32
| | | | | | Differential revision: http://reviews.llvm.org/D12636 llvm-svn: 246959
* Use eAddressClassCode for address lookup for opcodes for stack framesTamas Berghammer2015-09-074-8/+16
| | | | | | | | | | | | | | | It is required because of the following edge case on arm: bx <addr> Non-tail call in a no return function [data-pool] Marked with $d mapping symbol The return address of the function call will point to the data pool but we have to treat it as code so the StackFrame can calculate the symbols correctly. Differential revision: http://reviews.llvm.org/D12556 llvm-svn: 246958
* Bug 24457 - X87 FPU Special Purpose RegistersAbhishek Aggarwal2015-09-072-4/+25
| | | | | | | | | | | | | | | | | | | | Summary: - For 'register read --all' command on x86_64-Linux Platform: -- Provide correct values of X87 FPU Special Purpose Registers -- Both 32-bit & 64-bit inferiors give correct values on this Platform - Added a Test Vector: -- To verify the expected behaviour of the command Signed-off-by: Abhishek Aggarwal <abhishek.a.aggarwal@intel.com> Reviewers: ashok.thirumurthi, granata.enrico, tfiala, clayborg Differential Revision: http://reviews.llvm.org/D12592 llvm-svn: 246955
* Fix Makefile buildKeno Fischer2015-09-055-0/+60
| | | | llvm-svn: 246932
* Check for null compile unit so we don't crash.Greg Clayton2015-09-041-0/+3
| | | | llvm-svn: 246887
* Add a --language (-l) option to type category {enable|disable} to allow ↵Enrico Granata2015-09-042-8/+179
| | | | | | people to turn on and off formatters for a given language llvm-svn: 246884
* Never mind, I see what the problem is on the Windows build. Attempt a fixEnrico Granata2015-09-042-2/+2
| | | | llvm-svn: 246876
* Move the C++ data formatters to the C++ language pluginEnrico Granata2015-09-0418-206/+524
| | | | llvm-svn: 246873
* This patch separates the generic portion of ClangExpressionVariable, whichSean Callanan2015-09-0415-456/+223
| | | | | | | | | stores information about a variable that different parts of LLDB use, from the compiler-specific portion that only the expression parser cares about. http://reviews.llvm.org/D12602 llvm-svn: 246871
* Use correct #ifdef check for ProcessWindowsLog::Terminate() call.Hafiz Abid Qadeer2015-09-041-1/+1
| | | | | | | | | | The call to ProcessWindowsLog::Initialize() is protected by #if defined(_MSC_VER). But the call to ProcessWindowsLog::Terminate() was using __WIN32__. This commit makes it use _MSC_VER too. Committing as it seems obvious change. llvm-svn: 246859
* Fix TestLoadUnload.test_load_unload for android API > 21Tamas Berghammer2015-09-042-2/+6
| | | | | | | | | | | | * Change Module::MatchesModuleSpec to return true in case the file spec in the specified module spec matches with the platform file spec, but not with the local file spec * Change the module_resolver used when resolving a remote shared module to always set the platform file spec to the file spec requested Differential revision: http://reviews.llvm.org/D12601 llvm-svn: 246852
* Move GetOptInc to the common namespacePavel Labath2015-09-042-13/+16
| | | | | | | | | | | | | | | | | | | Summary: GetOptInc provides getopt(), getopt_long() and getopt_long_only(). Windows (for defined(_MSC_VER)) doesn't ship with all of the getopt(3) family members and needs all of them. NetBSD requires only getopt_long_only(3). While there fix the code for clang diagnostics. Author: Kamil Rytarowski Reviewers: joerg Subscribers: labath, zturner, lldb-commits Differential Revision: http://reviews.llvm.org/D12582 llvm-svn: 246843
* RenderScript pending kernel breakpoints.Ewan Crawford2015-09-042-59/+109
| | | | | | | | | | | | Currently the RS breakpoint command can only find a kernel if it's in an already loaded RS module. This patch allows users to set pending breakpoints on RenderScript kernels which will be loaded in the future. Implemented by creating a RS breakpoint resolver, to limit search scope to only RS modules. Reviewed by: clayborg, jingham Subscribers: lldb-commits, ADodds, domipheus Differential Revision: http://reviews.llvm.org/D12360 llvm-svn: 246842
* SysV ABI for i386 ArchitectureAbhishek Aggarwal2015-09-041-2/+143
| | | | | | | | | | | | | | | | | | Summary: - Capability to force return user specified values from inside of a function on lldb command terminal - Support for Integral, Pointer and Floating Point values Signed-off-by: Abhishek Aggarwal <abhishek.a.aggarwal@intel.com> Reviewers: jingham, clayborg Subscribers: tberghammer Differential Revision: http://reviews.llvm.org/D12595 llvm-svn: 246841
* Change the (internal to this file only) enum names from gcc_ toJason Molenda2015-09-042-117/+117
| | | | | | | | | | | | | ehframe_ & from gdb_ to stabs_ for clarity. Also document the fact that i386 eh_frame on Darwin has the register numbers swapped for ebp/esp from the DWARF register numbers so no one copies these defines for other i386 ABI plugins. This bug only ever existed on Darwin. No code changes, just renaming variables. llvm-svn: 246834
* Set the default language to use when evaluating to that of the frame's CU.Dawn Perchik2015-09-043-6/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | * Use the frame's context (instead of just the target's) when evaluating, so that the language of the frame's CU can be used to select the compiler and/or compiler options to use when parsing the expression. This allows for modules built with mixed languages to be parsed in the context of their frame. * Add all C and C++ language variants when determining the language options to set. * Enable C++ language options when language is C or ObjC as a workaround since the expression parser uses features of C++ to capture values. * Enable ObjC language options when language is C++ as a workaround for ObjC requirements. * Disable C++11 language options when language is C++03. * Add test TestMixedLanguages.py to check that the language being used for evaluation is that of the frame. * Fix test TestExprOptions.py to check for C++11 instead of C++ since C++ has to be enabled for C, and remove redundant expr --language test for ObjC. * Fix TestPersistentPtrUpdate.py to not require C++11 in C. Reviewed by: clayborg, spyffe, jingham Subscribers: lldb-commits Differential Revision: http://reviews.llvm.org/D11102 llvm-svn: 246829
* Nuke CXXFormatterFunctions.cpp - split the contents of it across different ↵Enrico Granata2015-09-0421-300/+331
| | | | | | | | files, so that things are better organized along the C++/ObjC line This is preparatory work for moving these formatters into language categories llvm-svn: 246827
* Only export public symbols with the cmake build.Bruce Mitchener2015-09-043-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | | Summary: This also moves the xcode support files to be near or the same as the ones used for cmake. The source/API/liblldb.xcodes.exports differs from the source/API/liblldb.exports in that one contains the actual symbol names (_ prefixed) while the other contains the symbol names as they are in the code. The liblldb.exports file is preprocessed by the cmake scripts into the correct per-platform file needed (like a linker script on Linux). This is not enabled on Windows as Windows doesn't use the same name mangling and so it won't be valid there. Also, this is handled already in a different way on Windows (via dll exports). Reviewers: emaste, clayborg, labath, chaoren Subscribers: lldb-commits Differential Revision: http://reviews.llvm.org/D12599 llvm-svn: 246822
* SystemRuntime/MacOSX no longer need ObjCRuntime header.Bruce Mitchener2015-09-033-6/+2
| | | | | | | | | | | | | | | Summary: The AppleGetQueuesHandler code no longer needs to include a header from the AppleObjCRuntime, so we can remove workarounds that were present in the build systems. Reviewers: clayborg, jasonmolenda Subscribers: lldb-commits Differential Revision: http://reviews.llvm.org/D12589 llvm-svn: 246821
* Lookup function using full name if one with mangled name is not found.Siva Chandra2015-09-031-5/+32
| | | | | | | | | | | | | | Summary: Remove expected failure decorators from tests which now should start passing. Reviewers: clayborg, spyffe Subscribers: lldb-commits Differential Revision: http://reviews.llvm.org/D12613 llvm-svn: 246820
* NetBSD ships with paccept(2), a superset of accept4(2)Stephane Sezer2015-09-031-2/+4
| | | | | | | | | | | | | | Summary: accept4(2) and paccept(2) are nonstandard extensions. Reviewers: joerg, sas Subscribers: emaste, sas, lldb-commits Differential Revision: http://reviews.llvm.org/D12485 Change by Kamil Rytarowski <n54@gmx.com> llvm-svn: 246787
* Fix logging messagePavel Labath2015-09-031-1/+1
| | | | llvm-svn: 246776
* Fix deadlock while attaching to inferiorsPavel Labath2015-09-032-148/+159
| | | | | | | | | | | | | | | | | | | | Summary: There was a race condition in the AsyncThread, where we would end up sending a vAttach notification to the thread before it got a chance set up its listener (this can be reproduced by adding a sleep() at the very beginning of ProcessGDBRemote::AsyncThread()). This event would then get lost and we LLDB would deadlock. I fix this by setting up the listener early on, in the ProcessGDBRemote constructor. This should improve the stability of all attach tests. For now, I am removing XTIMEOUT from TestAttachResume, and will watch the buildbots for signs of trouble. Reviewers: clayborg, ovyalov Subscribers: lldb-commits Differential Revision: http://reviews.llvm.org/D12552 llvm-svn: 246756
* Fix rare failure in TestProcessIOPavel Labath2015-09-031-6/+5
| | | | | | | | | | | | | | | | | | | | | Summary: There was a race condition in Process class, where we would not wait for process stdout to propagate fully before we would shut down the connection (repro case: slow down the stdio thread by placing a sleep right at the end of the while loop in Communication::ReadThread). The Process class already tried to solve this problem by synchronizing with the read thread in Process::ShouldBroadcastEvent, but unfortunately the connection got closed before that in Process::SetExitStatus. I solve this issue by delaying the connection shutdown until we get a chance to process the event and synchronize. Alternatively, I could have moved the synchronization point to an earlier point in SetExitStatus, but it seems safer to delay the shutdown until other things get a chance to notice the process has exited. Reviewers: clayborg, ovyalov Subscribers: lldb-commits Differential Revision: http://reviews.llvm.org/D12558 llvm-svn: 246753
* [cmake] Remove LLVM_NO_RTTI.Bruce Mitchener2015-09-0374-149/+1
| | | | | | | | | | | | | | Summary: This doesn't exist in other LLVM projects any longer and doesn't do anything. Reviewers: chaoren, labath Subscribers: emaste, tberghammer, lldb-commits, danalbert Differential Revision: http://reviews.llvm.org/D12586 llvm-svn: 246749
* Fix cmake build.Bruce Mitchener2015-09-035-1/+9
| | | | llvm-svn: 246746
* [MIPS64] Emulate MSA branch instructionsSagar Thakur2015-09-032-36/+314
| | | | | | | | | This patch adds MSA branch instruction emulation for MIPS64. Reviewers: tberghammer, jaydeep Subscribers: tberghammer, lldb-commits, nitesh.jain, mohit.bhakkad (Mohit Bhakkad), bhushan (Bhushan Attarde) Differential: http://reviews.llvm.org/D12356 llvm-svn: 246745
* Purge a few places where *LanguageRuntime.h was being used when it Jim Ingham2015-09-0310-11/+2
| | | | | | wasn't needed. llvm-svn: 246744
* CXXFormatterFunctions.{h|cpp} is not a good thing to have around, so start ↵Enrico Granata2015-09-035-988/+1033
| | | | | | splitting stuff in different files in preparation for removing it and factoring formatters to the plugins where they belong llvm-svn: 246743
* Remove the list of all languages in the help for "help language" sinceJim Ingham2015-09-031-4/+0
| | | | | | | | | | almost all the elements on the list can't actually be passed to the language command and all the ones that can have already been listed in the subcommands list. <rdar://problem/22551082> llvm-svn: 246740
* Jim told me about a cleaner way to include headers from plug-ins.Sean Callanan2015-09-036-6/+6
| | | | | | | | This is still something I need to fix, but at least it's not so ugly, and it's consistent with the other code that does that so we will catch it when we purge all such code. llvm-svn: 246738
* In preparation for factoring persistent variables into a generic part and aSean Callanan2015-09-039-7/+477
| | | | | | | | | | | | Clang-specific part, create the ExpressionVariable source/header file and move ClangExpressionVariable into the Clang expression parser plugin. It is expected that there are some ugly #include paths... these will be resolved by either (1) making that code use generic expression variables (once they're separated appropriately) or (2) moving that code into a plug-in, often the expression parser plug-in. llvm-svn: 246737
* Fix ObjCLanguage::MethodName::GetCategory after r246616; I was just moving ↵Jim Ingham2015-09-031-1/+1
| | | | | | things around too fast... llvm-svn: 246736
* When redirecting stdio, use FILE_SHARE_DELETE.Zachary Turner2015-09-021-1/+1
| | | | | | | | | | Some tests were failing because the test would try to delete the file before inferior had exited, but on Windows this will fail by default unless you specify FILE_SHARE_DELETE when opening the file. Can't think of a good reason not to do this, so here it is. llvm-svn: 246682
* Try to fix FreeBSD build.Zachary Turner2015-09-022-15/+15
| | | | llvm-svn: 246672
* Removed comments that suggested that asserts in the ClangASTImporter should beSean Callanan2015-09-021-2/+2
| | | | | | | debug-only. This is not the case; when they fire we are about to crash or do something horrible anyway, so they should stay in. llvm-svn: 246667
* Improved logging for deported types in the ClangASTImporter.Sean Callanan2015-09-021-2/+10
| | | | llvm-svn: 246666
* Only create alternative thumb disassembler if the main one is armTamas Berghammer2015-09-021-2/+2
| | | | | | | | This fixes a regression caused by r245645 where creating alternative thumb disassembler was enabled even when the main disassembler is already thumb. llvm-svn: 246649
* Fix arm disassambler with specifying armv8.1a architectureTamas Berghammer2015-09-021-10/+18
| | | | | | | | | | | | | | | If no architecture is defined for the disassambler command then it uses the architecture of the target. In case of arm it will be "arm" what is treated as the oldest arm version by the LLVM disassambler causing a lot of invalid opcode in the output. This change forces the use of "armv8.1a" (the newest arm architecture) if no sub architecure was specified (either by the user or by the target) to disassamble all instruction. Differential revision: http://reviews.llvm.org/D12553 llvm-svn: 246648
* Fix tab completion for command arguments containing spacesTamas Berghammer2015-09-022-3/+33
| | | | | | | | | | | If a command argument contains a space then it have to be escaped with backslash signs so the argument parsing logic can parse it properly. This CL fixes the tab completion code for the arguments to create complitions with correctly escaped strings. Differential revision: http://reviews.llvm.org/D12531 llvm-svn: 246639
OpenPOWER on IntegriCloud