summaryrefslogtreecommitdiffstats
path: root/lldb
Commit message (Collapse)AuthorAgeFilesLines
...
* [LLDB][MIPS] Fix TestLldbGdbServer failure for MIPSNitesh Jain2017-01-102-1/+265
| | | | | | | | | | Reviewers: labath, clayborg Subscribers: jaydeep, bhushan, lldb-commits, slthakur Differential Revision: https://reviews.llvm.org/D27088 llvm-svn: 291549
* Stop limiting the number of TSan backtrace size to 8Kuba Mracek2017-01-101-1/+2
| | | | | | | | We currently limit the length of TSan returned backtraces to 8, which is not necessary (and a bug, most likely). Let's remove this. Differential Revision: https://reviews.llvm.org/D28035 llvm-svn: 291522
* [cmake] Obtain LLVM_CMAKE_PATH from llvm-configMichal Gorny2017-01-091-2/+3
| | | | | | | Use the new --cmakedir option to obtain LLVM_CMAKE_PATH straight from llvm-config instead of reconstructing it locally. llvm-svn: 291500
* Fix dereferencing of pointers to empty classesTamas Berghammer2017-01-074-30/+110
| | | | llvm-svn: 291350
* Remove an incorrect byte size calculation in DWARFASTParserClangTamas Berghammer2017-01-071-1/+1
| | | | llvm-svn: 291349
* Install lldb Python module on Windows.Zachary Turner2017-01-061-6/+9
| | | | | | | Patch by Vadim Chugunov Differential Revision: https://reviews.llvm.org/D27476 llvm-svn: 291291
* Reapply "Fixes for Clang API changes to use std::shared_ptr"David Blaikie2017-01-061-16/+17
| | | | | | | | | Aleksey Shlyapnikov found the memory leak I introduced, recommitted the Clang change with a fix for this. This reapplies r291200 reverted in r291250 llvm-svn: 291271
* Revert "Fixes for Clang API changes to use std::shared_ptr"David Blaikie2017-01-061-17/+16
| | | | | | | | | The original Clang change caused a memory leak detected by asan. Reverting while I investigate. This reverts commit r291200. llvm-svn: 291250
* Another windows build fixPavel Labath2017-01-061-0/+1
| | | | llvm-svn: 291234
* Attempt to fix windows build for r291198Pavel Labath2017-01-061-0/+1
| | | | llvm-svn: 291233
* Fix clang build for r291198Pavel Labath2017-01-061-1/+1
| | | | | | | | | Older clangs (<=3.6) complain about a redefinition when we try to specialize a templace function declared with = delete. Instead, I just don't define the function body, which will trigger a linker error if someone tries to use an unknown function. llvm-svn: 291226
* Revert "XFAIL an lldb-mi test"Pavel Labath2017-01-061-2/+0
| | | | | | The clang bug is fixed now. This reverts commit r291100. llvm-svn: 291225
* Consolidate file handle usage in Editline.cppPavel Labath2017-01-062-10/+39
| | | | | | | | | | | | | | | | | | | | Summary: To implement wide character reading, editline was mixing FILE*-based access with a Connection-based one (plus it did some selects on the raw FD), which is very fragile. Here, I replace it with one which uses only a Connection-based reads. The code is somewhat longer as I had to read characters one by one to detect the end of the multibyte sequence. I've verified that international characters still work in lldb command line on OSX. Reviewers: clayborg, zturner Subscribers: lldb-commits Differential Revision: https://reviews.llvm.org/D28356 llvm-svn: 291220
* Revert part of cleanup to fix a build breakDavid Blaikie2017-01-061-2/+13
| | | | | | | | Wasn't sure I could include ErrorHandling.h here, and evidently I wasn't building this part (must've made the change using sed after getting tired of fixing each compilation error individually). llvm-svn: 291204
* Fixes for Clang API changes to use std::shared_ptrDavid Blaikie2017-01-061-16/+17
| | | | llvm-svn: 291200
* Fix -Wunused-function warning by preprocessor conditionalizing the function ↵David Blaikie2017-01-061-0/+2
| | | | | | the same way as the caller llvm-svn: 291199
* Make lldb -Werror clean for -Wstring-conversionDavid Blaikie2017-01-0626-116/+67
| | | | | | | | | Also found/fixed one bug identified by this warning in RenderScriptx86ABIFixups.cpp where a string literal was being used in an effort to provide a name for an instruction/register, but was instead being passed as the bool 'isVolatile' parameter. llvm-svn: 291198
* Skip a test on darwin.Hafiz Abid Qadeer2017-01-051-0/+1
| | | | | | | My earlier commit today seem to cause a failure on a darwin buildbot. I am skipping the test while I investigate the failure. llvm-svn: 291118
* [lldb-mi] Fix implementation for a few mi commandsHafiz Abid Qadeer2017-01-0514-12/+189
| | | | | | | | | | | | | | | | | | | | | | | | | Summary: Some of the mi commands implemented in lldb-mi are incomplete/not confirming to the spec. - `gdb-show` and `gdb-set` doesn't support getting/setting `disassembly-flavor` - `environment-cd` should also change the working directory for inferior - debugger CLI output should be printed as console-stream-output record, rather than being dumped directly to stdout - `target-select` should provide inner error message in mi response Related bug report: - https://llvm.org/bugs/show_bug.cgi?id=28026 - https://llvm.org/bugs/show_bug.cgi?id=28718 - https://llvm.org/bugs/show_bug.cgi?id=30265 Reviewers: ki.stfu, abidh Subscribers: abidh, ki.stfu, lldb-commits Tags: #lldb Differential Revision: https://reviews.llvm.org/D24711 llvm-svn: 291104
* Fix jModulesInfo handling for cross-path syntax debuggingPavel Labath2017-01-052-3/+11
| | | | | | | We were sending paths with the host path separator, which meant the remote target did not understand our packets correctly. llvm-svn: 291103
* Silence some -Wstring-conversion warningsPavel Labath2017-01-053-3/+3
| | | | | | | | lldbassert(!"foo") -> lldbassert(0 && "foo") In one case, this actually detected a logic error in the assertion (missing !). llvm-svn: 291102
* XFAIL an lldb-mi testPavel Labath2017-01-051-0/+2
| | | | | | the test fails due to a bug in ToT clang llvm-svn: 291100
* Add a debuginfo version check for RenderScript modulesLuke Drummond2017-01-042-1/+53
| | | | | | | | | | Added an extra field parser to the `RSModuleDescriptor` class enabling us to check whether the versions of LLVM used to generated the debug symbols match across the RenderScript compiler frontend (llvm-rs-cc) and backend (bcc); if they do not, we warn the user that the debugging experience may be suboptimal as LLVM IR debug information has no compatibility guarantees. llvm-svn: 290957
* [CMake] Fix install rules for tools included in the frameworkChris Bieneman2017-01-041-1/+1
| | | | | | The logic for install rules was wrong for tools included in the framework if the framework build is disabled. llvm-svn: 290934
* Remove SymbolFilePDBTests.cpp from the list of tests to include in the Jason Molenda2017-01-041-2/+0
| | | | | | | | | | lldb-gtest binary that xcode builds for -scheme lldb-gtest; these tests won't run on macosx systems. Fixes testsuite failures we started seeing after 290819. <rdar://problem/29853778> llvm-svn: 290917
* Improve the performance of jModulesInfo in lldb-serverTamas Berghammer2017-01-032-105/+92
| | | | | | | | | | | | Previously it parsed /proc/<pid>/maps for every module separately resulting in a very slow response time. This CL add some caching and optimizes the implementation to improve the code from O(n*m) to O(n+m) where n is the number of modules requested and m is the number of files mapped into memory. Differential revision: https://reviews.llvm.org/D28233 llvm-svn: 290895
* Fix-up TestLinuxCore for r290874Pavel Labath2017-01-031-0/+8
| | | | | | | | | | | | r290874 enabled the s390x test, which caused the rest of the tests to start misbehaving. This is because this test switches the selected platform and the change persists. This fixes it by explicitly resetting the platform in a similar way to the gcore tests do. Potentially we should consider re-setting the platform globally between each test run to better protect tests from each other. llvm-svn: 290890
* Simplify reading of Linux notes to correctly handle endianess.Howard Hellyer2017-01-032-103/+58
| | | | | | | | | | | | | | | Summary: This patch changes and simplifies the way notes are read from Linux Elf cores. The current implementation copies the bytes from the notes directly over the lldb structure for 64 bit cores and reads field by field for 32 bit cores. Reading the bytes directly only works if the endianess of the core dump and the platform that lldb are running on matches. The case statements for s390x and x86_64 would would only work on big endian systems and little endian systems respectively. That meant that x86_64 generally worked but s390x didn't unless you were on s390x or another big endian platform. This patch just reads field by field on all platform and updates the field by field version to allow for those fields which are word size instead of fixed size. It should also slightly simplify adding support for a new Linux platform. This patch also re-enables the s390x test case in TestLinuxCore.py on all non-s390x platforms as it now passes. Reviewers: uweigand, clayborg Differential Revision: https://reviews.llvm.org/D27571 llvm-svn: 290874
* XFail TestNoreturnUnwind for arm targetsOmair Javaid2017-01-021-0/+1
| | | | | | | | TestNoreturnUnwind fails on arm/aarch32 linux targets. Bug is already described for x86_64 android targets in llvm.org/pr31192. llvm-svn: 290821
* [unittests] Split DWARF tests out of PDB, fix standalone buildMichal Gorny2017-01-027-47/+113
| | | | | | | | | | | | Split the PDB tests into DWARF test and actual PDB tests, the latter requiring DIA SDK. Use the new LLVMConfig.cmake LLVM_ENABLE_DIA_SDK symbol to enable the PDB tests rather than relying on llvm/Config/config.h private include file that is not available when building standalone. Differential Revision: https://reviews.llvm.org/D26249 llvm-svn: 290819
* Fix the variable view in the "gui" curses mode so that variables whose ↵Greg Clayton2016-12-284-22/+182
| | | | | | children change will update correctly. Previously the variable view would update the children once and not change. If you were stepping through code where the dynamic type of a variable would change the value and its children, or a synthetic type (like say for a std::vector<int>), the variable view wouldn't update. Now it caches the children and uses the process stop ID to tell when the children need to be updated. llvm-svn: 290688
* Quiet a warning where we weren't checking if this was the same and rhs.Greg Clayton2016-12-281-1/+2
| | | | llvm-svn: 290687
* Fix a couple of incorrect format string warningsLuke Drummond2016-12-222-5/+4
| | | | | | | | | | | This patch fixes use of incorrect `%zi` to format a plain `int`, and using `%llu` to format a `uint64_t`. The fix is to use the new typesafe `llvm::Formatv` based API. Differential Revision: https://reviews.llvm.org/D28028 Subscribers: lldb-commits llvm-svn: 290359
* specify -DNDEBUG for BNI builds of all targets in the Xcode buildSean Callanan2016-12-211-0/+1
| | | | llvm-svn: 290282
* [CMake] Support distribution install for LLDB.frameworkChris Bieneman2016-12-211-1/+11
| | | | | | | | This patch adds the last bit of support to get LLVM_DISTRIBUTION_COMPONENTS working with libLLDB when built as a framework. This patch adds dummy install targets for binaries built into the framework's Resources directory, and makes the framework's install target depend on all the binaries that get installed with the framework. llvm-svn: 290273
* Ignore SIGPIPE in the mini-driver used by these tests.Jim Ingham2016-12-211-0/+10
| | | | | | | | | | | We're seeing some very occasional failures in these tests where the mini-driver dies with a SIGPIPE. We don't use SIGPIPE for anything, and the main lldb driver program already ignores SIGPIPE, so ignoring it in the mini-driver is a good way to remove these spurious failures. <rdar://problem/29740488> llvm-svn: 290216
* Rollback my commit r290168 to fix linux tests failure. I'll be back!Boris Ulasevich2016-12-209-235/+18
| | | | llvm-svn: 290197
* [CMake] [PR31433] Fix LLDB tool installationChris Bieneman2016-12-201-13/+13
| | | | | | This resolves PR 31433. llvm-svn: 290180
* Bug 30863 - Step doesn't stop with coditional breakpoint on the next lineBoris Ulasevich2016-12-209-18/+235
| | | | | | | | | Fixed by additional completed plans detection, and applying them on breakpoint condition fail. Thread::GetStopInfo reworked. New test added. Review https://reviews.llvm.org/D26497 Many thanks to Jim llvm-svn: 290168
* Change the timeout in CallBoardSystemServiceOpenApplication to Jason Molenda2016-12-201-1/+1
| | | | | | | | 30 seconds to match the old springboard timeout; the launcher should time out before that and we will hopefully get back an informative error message instead of timing out ourselves. llvm-svn: 290163
* Expression evaluation for overloaded C functions (redux)Luke Drummond2016-12-196-29/+159
| | | | | | | | | | | | | | | | | | | This is a redux of [Ewan's patch](https://reviews.llvm.org/D17957) , refactored to properly substitute primitive types using a hook in the itanium demangler, and updated after the previous patch went stale The new `SubsPrimitiveParmItanium` function takes a symbol name and replacement primitive type parameter as before but parses it using the FastDemangler, which has been modified to be able to notify clients of parse events (primitive types at this point). Additionally, we now use a `set` of `ConstStrings` instead of a `vector` so that we don't try and resolve the same invalid candidate multiple times. Differential Revision: https://reviews.llvm.org/D27223 Subscribers: lldb-commits llvm-svn: 290117
* Fix the cmake declaration syntaxSylvestre Ledru2016-12-171-1/+1
| | | | llvm-svn: 290045
* Support of lldb on Kfreebsd Sylvestre Ledru2016-12-174-6/+9
| | | | | | | | | | | | | | Summary: Patch by Pino Toscano. Reported in http://bugs.debian.org/835665 Reviewers: tfiala, emaste Subscribers: beanz, mgorny, emaste, krytarowski, brucem, tberghammer, danalbert, srhines, #lldb Tags: #lldb Differential Revision: https://reviews.llvm.org/D23977 llvm-svn: 290044
* Fix compiler warning.Zachary Turner2016-12-161-1/+0
| | | | llvm-svn: 289994
* Fix broken escaping of commands in the buildLuke Drummond2016-12-163-43/+50
| | | | | | | | | | | | | | | | | | | | | | | | | | A combination of broken escaping in CMake and in the python swig generation scripts meant that the swig generation step would fail whenever there were spaces or special characters in parameters passed to swig. The fix for this in CMakeLists is to use the VERBATIM option on all COMMAND-based custom builders relying on CMake to properly escape each argument in the generated file. Within the python swig scripts, the fix is to call subprocess.Popen with a list of raw argument strings rather than ones that are incorrectly manually escaped, then passed to a shell subprocess via subprocess.Popen(' '.join(params)). This also prevents nasty things happening such as accidental command-injection. This allows us to have the swig / python executables in paths containing special chars and spaces, (or on shared storage on Win32, e.g \\some\path or C:\Program Files\swig\swig.exe). Subscribers: lldb-commits Differential Revision: https://reviews.llvm.org/D26757 llvm-svn: 289956
* Remove an unused type declaration.Hafiz Abid Qadeer2016-12-161-6/+0
| | | | llvm-svn: 289947
* Add methods to enable using formatv syntax in LLDB.Zachary Turner2016-12-1613-100/+161
| | | | | | | | | | | | | This adds formatv-backed formatting functions in various places in LLDB such as StreamString, logging, constructing error messages, etc. A couple of callsites are changed from Printf style syntax to formatv style syntax to illustrate its usage. Additionally, a FileSpec formatter is introduced so that FileSpecs can be formatted natively. Differential Revision: https://reviews.llvm.org/D27632 llvm-svn: 289922
* Fix a bug when using a StructuredData darwin-log pluginJason Molenda2016-12-163-1/+21
| | | | | | | | | | | where we would insert a breakpoint into a system library but never remove it, so the second time we ran the binary there would be two breakpoints and the debugger would stop there. <rdar://problem/29654974> llvm-svn: 289913
* [CMake] Refactor LLDB libraries and tools to be componentsChris Bieneman2016-12-158-32/+43
| | | | | | In LLVM's CMake we have a convention that components have both a build and an install target. Making LLDB follow this convention will allow LLDB to take advantage of the LLVM_DISTRIBUTION_COMPONENTS build option from LLVM. llvm-svn: 289879
* [CMake] Ensure Python files are inside the LLDB framework bundleChris Bieneman2016-12-151-0/+6
| | | | | | | | When building the LLDB Framework we need to ensure that the Python files get put into the Framework before the Framework's install target can be invoked. All files inside the Framework's Resources bundle will get copied over during the install action. llvm-svn: 289842
OpenPOWER on IntegriCloud