summaryrefslogtreecommitdiffstats
path: root/lldb
Commit message (Collapse)AuthorAgeFilesLines
...
* Fix VASprintfTest.cpp for Darwin, add checksTim Hammerquist2017-08-092-2/+12
| | | | | | | | | | | | | | | | | | | | | | | Summary: The EncodingError test ensures that trying to encode a multibyte wchar with a given codepage fails. If setlocale() fails, the encoding is performed using the current locale, which may or may not fail. This patch asserts that both setlocale() operations are successful, as well as falling back to a widely available unibyte encoding for non-Windows systems. <rdar://problem/33782806> Reviewers: zturner, labath, lhames Reviewed By: zturner Subscribers: lldb-commits Differential Revision: https://reviews.llvm.org/D36496 llvm-svn: 310499
* Fix PlatformPythonTestCase.test_platform_list for the build botsVadim Macagon2017-08-091-6/+12
| | | | llvm-svn: 310488
* Expose active and available platform lists via SBDebugger APIVadim Macagon2017-08-096-0/+186
| | | | | | | | | | | | Summary: The available platform list was previously only accessible via the `platform list` command, this patch makes it possible to access that list via the SBDebugger API. The active platform list has likewise been exposed via the SBDebugger API. Differential Revision: https://reviews.llvm.org/D35760 llvm-svn: 310452
* Add existing unit tests to Xcode projectTim Hammerquist2017-08-081-0/+52
| | | | | | | | | | | | | | | | | Summary: This adds gtest test files to the Xcode project which were previously only in the cmake config. This is the first of several planned merges. Reviewers: beanz, spyffe, jingham Reviewed By: jingham Subscribers: lldb-commits Differential Revision: https://reviews.llvm.org/D36485 llvm-svn: 310417
* Checking in files accidentally missed in later diffs of revision r310261Abhishek Aggarwal2017-08-082-0/+596
| | | | | | | | | | -- 2 files were missing in this commit which should have been there. These files were submitted initially for review and were reviewed. However, while updating the revision with newer diffs, I accidentally forgot to include them in newer diffs. So commiting now. llvm-svn: 310341
* Fixed build failure for revision r310261Abhishek Aggarwal2017-08-071-0/+6
| | | | | | -- Was failing for Linux llvm-svn: 310270
* Fixed build failure for revision r310261Abhishek Aggarwal2017-08-071-0/+4
| | | | | | -- Build was failing for freebsd llvm-svn: 310266
* Tool for using Intel(R) Processor Trace hardware featureAbhishek Aggarwal2017-08-0723-35/+2492
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Summary: 1. Provide single library for all Intel specific hardware features instead of individual libraries for each feature 2. Added Intel(R) Processor Trace hardware feature in this single library. Details about the tool implementing this feature is as follows: Tool developed on top of LLDB to provide its users the execution trace of the debugged inferiors. Tool's API are exposed as C++ object oriented interface in a shared library. API are designed especially to be easily integrable with IDEs providing LLDB as an application debugger. Entire API is also available as Python functions through a script bridging interface allowing development of python modules. This patch also provides a CLI wrapper to use the Tool through LLDB's command line. Highlights of the Tool and the wrapper are given below: ****************************** Intel(R) Processor Trace Tool: ****************************** - Provides execution trace of the debugged application - Uses Intel(R) Processor Trace hardware feature (already implemented inside LLDB) for this purpose -- Collects trace packets generated by this feature from LLDB, decodes and post-processes them -- Constructs the execution trace of the application -- Presents execution trace as a list of assembly instructions - Provides 4 APIs (exposed as C++ object oriented interface) -- start trace with configuration options for a thread/process, -- stop trace for a thread/process, -- get the execution flow (assembly instructions) for a thread, -- get trace specific information for a thread - Easily integrable into IDEs providing LLDB as application debugger - Entire API available as Python functions through script bridging interface -- Allows developing python apps on top of Tool - README_TOOL.txt provides more details about the Tool, its dependencies, building steps and API usage - Tool ready to use through LLDB's command line -- CLI wrapper has been developed on top of the Tool for this purpose ********************************* CLI wrapper: cli-wrapper-pt.cpp ********************************* - Provides 4 commands (syntax similar to LLDB's CLI commands): -- processor-trace start -- processor-trace stop -- processor-trace show-trace-options -- processor-trace show-instr-log - README_CLI.txt provides more details about commands and their options Signed-off-by: Abhishek Aggarwal <abhishek.a.aggarwal@intel.com> Reviewers: clayborg, jingham, lldb-commits, labath Reviewed By: clayborg Subscribers: ravitheja, emaste, krytarowski, mgorny Differential Revision: https://reviews.llvm.org/D33035 llvm-svn: 310261
* Cut and paste error from r23162.Jim Ingham2017-08-032-2/+2
| | | | llvm-svn: 309977
* Add an auto-continue flag to breakpoints & locations.Jim Ingham2017-08-0316-29/+273
| | | | | | | | | | | | | | You can get a breakpoint to auto-continue by adding "continue" as a command, but that has the disadvantage that if you hit two breakpoints simultaneously, the continue will force the process to continue, and maybe even forstalling the commands on the other. The auto-continue flag means the breakpoints can negotiate about whether to stop. Writing tests, I wanted to supply some commands when I made the breakpoints, so I also added that ability. llvm-svn: 309969
* Update for llvm api change.Rafael Espindola2017-08-031-5/+0
| | | | llvm-svn: 309916
* Fix ProcessAPITestCase.test_get_process_infoVadim Macagon2017-08-021-15/+27
| | | | llvm-svn: 309803
* Fix a mis-feature with propagation of breakpoint options -> location options.Jim Ingham2017-08-0213-128/+378
| | | | | | | | | | | | | | When an option was set at on a location, I was just copying the whole option set to the location, and letting it shadow the breakpoint options. That was wrong since it meant changes to unrelated options on the breakpoint would no longer take on this location. I added a mask of set options and use that for option propagation. I also added a "location" property to breakpoints, and added SBBreakpointLocation.{G,S}etCommandLineCommands since I wanted to use them to write some more test cases. <rdar://problem/24397798> llvm-svn: 309772
* xfail test_get_process_info pending bot fixesSean Callanan2017-08-011-0/+1
| | | | llvm-svn: 309714
* Remember to make API headers Public in the LLDB target.Jim Ingham2017-08-011-0/+2
| | | | llvm-svn: 309709
* [build system] Add SBProcessInfo to the xcodeprojSean Callanan2017-08-011-2/+8
| | | | llvm-svn: 309702
* Expose process instance info via SB APIVadim Macagon2017-08-0114-0/+409
| | | | | | | | | | | Summary: Implement SBProcessInfo to wrap lldb_private::ProcessInstanceInfo, and add SBProcess::GetProcessInfo() to retrieve info like parent ID, group ID, user ID etc. from a live process. Differential Revision: https://reviews.llvm.org/D35881 llvm-svn: 309664
* Fix incorrect use of std::uniqueEugene Zemtsov2017-08-011-2/+4
| | | | llvm-svn: 309648
* [build-script] Bring in modernizations from downstream:Sean Callanan2017-07-312-8/+32
| | | | | | | | | | | - Don't do any checks of the current SCM repository if the llvm repositories are already there. Useful for bots. - When symlinking, remove old symlinks. - Support loading build-script as a library, not necessarily under Xcode. - Stringify args before passing them to subprocess. llvm-svn: 309631
* Fix LLDB crash accessing unknown DW_FORM_* attributesJan Kratochvil2017-07-315-0/+77
| | | | | | | | | | | | | | | | Current LLDB (that is without DWZ support) crashes accessing Fedora debug info: READ of size 8 at 0x60200000ffc8 thread T0 #0 in DWARFDebugInfoEntry::BuildAddressRangeTable(SymbolFileDWARF*, DWARFCompileUnit const*, DWARFDebugAranges*) const tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugInfoEntry.cpp:1336 Greg Clayton: We will need a warning to be emitted in SymbolFileDWARF::CalculateAbilities() stating we won't parse the DWARF due to "unsupported DW_FORM value of 0x1f20". Patch has been mostly written by Greg Clayton. Differential revision: https://reviews.llvm.org/D35622 llvm-svn: 309581
* Add support for base address entries in the .debug_ranges sectionTamas Berghammer2017-07-311-18/+19
| | | | | | | | | Summary: Clang recently started to emit base address entries into the .debug_ranges section to reduce the number of relocations needed. Lets make sure LLDB can read them. llvm-svn: 309554
* [CMake] Add SharingPtr.h to the Framework header listChris Bieneman2017-07-281-1/+1
| | | | | | lldb-forward.h which is a public header uses SharingPtr, so we need to include that header as well. llvm-svn: 309429
* [CMake] debugserver-nonui doesn't go in the frameworkChris Bieneman2017-07-281-1/+1
| | | | | | Small change to correct the install path of the nonui debugserver. llvm-svn: 309428
* [CMake] libcompression is optional not required for debugserverChris Bieneman2017-07-281-2/+6
| | | | | | Fix a quick bug from r309395. llvm-svn: 309396
* [CMake] Add checks for libcompressionChris Bieneman2017-07-284-5/+27
| | | | | | This enables libcompression when available in the CMake build system. llvm-svn: 309395
* [CMake] Cleanup of header fixup and installationChris Bieneman2017-07-281-11/+7
| | | | | | | | | | This patch does the following: * Gets the header copy step to re-run whenever header change * Gets the header fix-up step to re-run whenever headers are copied * Removes lldb-private*.h headers from the installed headers llvm-svn: 309394
* [CMake] Enable OS_LOG support on DarwinChris Bieneman2017-07-281-0/+4
| | | | | | This gets CMake to match the Xcode project build llvm-svn: 309393
* [CMake] Adapt to clang r309390Chris Bieneman2017-07-281-4/+1
| | | | | | This removes the configuration order dependence between LLDB and Clang. llvm-svn: 309392
* XFAIL/XFlakey some tests what become very flakey on the Linux buildbotTamas Berghammer2017-07-272-0/+2
| | | | llvm-svn: 309265
* [LLDB][MIPS] Fix emulation of Instruction for MIPS64R6 target.Nitesh Jain2017-07-271-18/+57
| | | | | Subscribers: jaydeep, bhushan, lldb-commits, slthakur llvm-svn: 309250
* Fix the formatting for help on option value types.Jim Ingham2017-07-272-1/+10
| | | | | | | | Patch by Jessica Han <jessicah@juniper.net> https://reviews.llvm.org/D35525 llvm-svn: 309238
* Skip test_unique_stacks on Darwin, because it doesn't terminate reliably.Sean Callanan2017-07-251-1/+3
| | | | | | rdar://problem/33462362 llvm-svn: 309046
* [CMake] Build debugserver & debugserver_nonuiChris Bieneman2017-07-251-8/+64
| | | | | | | | When building for iOS we build two variants of debugserver. One which supports UI functionality like Springboard for launching applications, and one which does not. This patch adds support for building debugserver with and without UI support libraries being available. llvm-svn: 309026
* [CMake] Update Framework construction for iOSChris Bieneman2017-07-252-8/+18
| | | | | | On iOS frameworks don't have versions or resources, they are flatter bundles. This updates the LLDB framework build to accommodate the flatter bundles. llvm-svn: 309025
* [CMake] Rework construction of framework bundleChris Bieneman2017-07-252-5/+40
| | | | | | This adds an explicit step for processing the headers and restructures how the framework bundles are constructed. This should make the frameworks more reliably constructed. llvm-svn: 309024
* [CMake] Fix framework buildChris Bieneman2017-07-251-1/+3
| | | | | | The LLDB framework build looks for the swig-generated source in the wrong place. This should resolve that. llvm-svn: 309023
* [CMake] NFC. Cleanup unnecessary CMake policyChris Bieneman2017-07-251-4/+0
| | | | | | This is just setting to the default behavior, so it does nothing. llvm-svn: 309022
* [CMake] Cleanup unnecessary definitionChris Bieneman2017-07-251-4/+4
| | | | | | This is only used in one file, and we already set it correctly on that file, so we don't need to set this everywhere. llvm-svn: 309021
* [CMake] Add debugserver entitlementsChris Bieneman2017-07-251-2/+6
| | | | | | When consigning debugserver we should also include the entitlements file on the code sign command. llvm-svn: 309020
* Improve the fix for PR33875 by not hardcoding the section name.Adrian Prantl2017-07-251-6/+6
| | | | | | This is a follow-up to r308905. llvm-svn: 309019
* [TypeSystem] Guard the global `ASTSourceMap` with a mutexSean Callanan2017-07-251-4/+12
| | | | | | | | | | | | | | | | | s_source_map in ClangExternalASTSourceCommon.cpp is unguarded and therefore can break in multithreaded conditions. This can cause crashes in particular if multiple targets are being set up at once. This patch wraps s_source_map in a function that ensures exclusivity, and makes every user of it use that function instead. <rdar://problem/33429774> lldb crashes after "resume_off" Differential Revision: https://reviews.llvm.org/D35083 llvm-svn: 308993
* Extend 'target symbols add' to load symbols from a given moduleEugene Zemtsov2017-07-245-5/+80
| | | | | | | | | | | | | | Now -shlib flag can be provided alongside with names of symbols files: (lldb) target symbols add --shlib stripper-lib.so unstripper-lib.so This is helpful when default matching mechanisms by name and UUID can't find a module, and the user needs to explicitly specify which module the given symbol file belongs to. Differential Revision: https://reviews.llvm.org/D35607 llvm-svn: 308933
* Skip test_lldbmi_var_update on Darwin.Sean Callanan2017-07-241-0/+1
| | | | llvm-svn: 308919
* Don't allow .debug_types to be parsed as LLDB can crash when enums are not ↵Greg Clayton2017-07-241-0/+15
| | | | | | | | able to be found. Differential Revision: https://reviews.llvm.org/D35734 llvm-svn: 308911
* RFix PR33875 by distinguishing between DWO and clang modules.Adrian Prantl2017-07-242-2/+8
| | | | | | | | This reapplies https://reviews.llvm.org/D35740 with a tweak to find the section by name rather than type. Section types don't distinguish between regular sections and their DWO counterparts. llvm-svn: 308905
* Don't crash when hostname is empty. StringRef will assert and kill your program.Greg Clayton2017-07-241-1/+1
| | | | llvm-svn: 308896
* Revert "Fix PR33875 by distinguishing between DWO and clang modules"Adrian Prantl2017-07-232-6/+2
| | | | | | This reverts commit r308850. llvm-svn: 308851
* Fix PR33875 by distinguishing between DWO and clang modulesAdrian Prantl2017-07-232-2/+6
| | | | | | | | | | | | | | The DWO handling code can get confused by clang modules which also use skeleton CUs to point to the object file with the full debug info. This patch detects whether an object is a "real" DWO or a clang module and prevents LLDB from interpreting clang modules as DWO. This fixes the regression in TestWithModuleDebugging. http://llvm.org/bugs/show_bug.cgi?id=33875 Differential Revision: https://reviews.llvm.org/D35740 llvm-svn: 308850
* Added a missing "break;" after seeing a clang warning about potential fall ↵Greg Clayton2017-07-211-0/+1
| | | | | | through annotation. llvm-svn: 308776
* XFail TestWithModuleDebugging on linux (bug 33875)Pavel Labath2017-07-211-0/+2
| | | | llvm-svn: 308732
OpenPOWER on IntegriCloud