summaryrefslogtreecommitdiffstats
path: root/lldb
Commit message (Collapse)AuthorAgeFilesLines
...
* Refactor log channel registration mechanismPavel Labath2017-02-1511-491/+330
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Summary: We currently have two log channel registration mechanisms. One uses a set of function pointers and the other one is based on the PluginManager. The PluginManager dependency is unfortunate, as logging is also used in lldb-server, and the PluginManager pulls in a lot of classes which are not used in lldb-server. Both approach have the problem that they leave too much to do for the user, and so the individual log channels end up reimplementing command line argument parsing, category listing, etc. Here, I replace the PluginManager-based approach with a one. The new API is more declarative, so the user only needs to specify the list of list of channels, their descriptions, etc., and all the common tasks like enabling/disabling categories are hadled by common code. I migrate the LogChannelDWARF (only user of the PluginManager method) to the new API. In the follow-up commits I'll replace the other channels with something similar. Reviewers: clayborg, zturner, beanz Subscribers: aprantl, lldb-commits Differential Revision: https://reviews.llvm.org/D29895 llvm-svn: 295190
* Fix debug build of unit testsPavel Labath2017-02-151-0/+3
| | | | | | | | | | | | | | | | | | Summary: It turns out listing each library twice is not enough to resolve all references in a debug build on linux - a number of executables fails to link with random symbols missing. Increasing the number to three seems to be enough. The choice of lldbCore to set the multiplicity on is somewhat arbitrary, but it seems fitting, as it is the biggest layering transgressor. Reviewers: beanz Subscribers: mgorny, lldb-commits Differential Revision: https://reviews.llvm.org/D29888 llvm-svn: 295189
* Fix unittests after r295088Pavel Labath2017-02-151-0/+0
| | | | | | | This resurrects TestModule.so which got lost during the move and is needed for the ModuleCache test. llvm-svn: 295171
* Fix TestNameLookup for GCCPavel Labath2017-02-151-2/+2
| | | | | | | | | | | | | | | | | | | | Summary: GCC emits also symbols for the __PRETTY_FUNCTION__ virtual variable, which we accidentaly pick up when looking for functions for with "unique_function_name" in the name. This makes the target.FindFunctions call fail, as that symbol is not a function. I also strenghten the test a bit to make sure we actually find all the functions we are interested in. I've put a check that we find at least 6 functions, but maybe this should be *exactly* 6 ? Reviewers: clayborg Subscribers: lldb-commits Differential Revision: https://reviews.llvm.org/D29932 llvm-svn: 295170
* Bug 30863 - Step doesn't stop with conditional breakpoint on the next lineBoris Ulasevich2017-02-1510-34/+260
| | | | | | | | | Differential Revisions: https://reviews.llvm.org/D26497 (committed r290168, temporary reverted r290197) https://reviews.llvm.org/D28945 (fix for Ubuntu tests fail) https://reviews.llvm.org/D29909 (fix for TestCallThatThrows test fail) llvm-svn: 295168
* Use StringRef and APFloat instead of lldb/StringConvert.hZachary Turner2017-02-141-11/+10
| | | | llvm-svn: 295091
* Remove dependencies from Utility to Core and Target.Zachary Turner2017-02-1490-111/+131
| | | | | | | | | | With this patch, the only dependency left is from Utility to Host. After this is broken, Utility will finally be standalone. Differential Revision: https://reviews.llvm.org/D29909 llvm-svn: 295088
* XFAIL TestNameLookup for GCCPavel Labath2017-02-141-1/+2
| | | | | | | I think I have a fix for this, but it needs review. This should keep the bots happy until then. llvm-svn: 295047
* Before returning a pc value for a stack frame,Jason Molenda2017-02-141-3/+21
| | | | | | | run it through the ABI's FixCodeAddress method. <rdar://problem/29711506> llvm-svn: 295025
* Fix buildbots.Greg Clayton2017-02-131-1/+1
| | | | llvm-svn: 294991
* FindFunctions now works again with mangled names.Greg Clayton2017-02-135-20/+158
| | | | | | <rdar://problem/28147057> llvm-svn: 294990
* [CMake] Adding API dependency on UtilityChris Bieneman2017-02-131-0/+1
| | | | | | Utility is directly referenced from Breakpoint. llvm-svn: 294987
* [CMake] Adding API dependency on UtilityChris Bieneman2017-02-131-0/+1
| | | | | | Utility is directly referenced from API. llvm-svn: 294986
* Try to fix windows build (broken by r294939)Pavel Labath2017-02-132-6/+2
| | | | | | log->Debug is gone, switch to using log->Verbose llvm-svn: 294944
* Remove some dead code from ProcessPOSIXLogPavel Labath2017-02-132-41/+0
| | | | llvm-svn: 294940
* Clean up debug loggingPavel Labath2017-02-137-79/+31
| | | | | | | | | | | | | | | | | | | | | Summary: We've had two ways to print a "debug" log message. - Log::GetDebug() was testing a Stream flag which was never set. - Log::Debug() was checking for the presence of "log enable --debug" flag. Given that these two were used very rarely and we already have a different way to specify "I want a more verbose log", I propose to remove these two functions and migrate the callers to LLDB_LOGV. This commit does that. Reviewers: clayborg, zturner Subscribers: lldb-commits Differential Revision: https://reviews.llvm.org/D29823 llvm-svn: 294939
* Fix the lldb_private::Function::GetDescription to print out the name and ↵Greg Clayton2017-02-101-6/+9
| | | | | | | | mangled name correctly. Previously this was getting the function type's name which was not correct. This info appears in the output of "image lookup --verbose --address ADDRESS". llvm-svn: 294804
* Fix another build issue with shared libraries on LinuxChris Bieneman2017-02-102-2/+2
| | | | | | In r294767, I added these dependencies in the wrong place. llvm-svn: 294768
* Fix another build issue with shared libraries on LinuxChris Bieneman2017-02-101-0/+2
| | | | llvm-svn: 294767
* Fix build issue with shared libraries reported via emailChris Bieneman2017-02-101-0/+1
| | | | llvm-svn: 294763
* Really fix windows buildPavel Labath2017-02-101-2/+2
| | | | | | this time I have actually tried that it compiles on windows. llvm-svn: 294744
* Fix darwin and windows builds broken by r294736Pavel Labath2017-02-104-11/+14
| | | | | | Update the platform-specific log classes to match the new interface. llvm-svn: 294743
* UriParser cleanupPavel Labath2017-02-109-48/+28
| | | | | | | - move the header file to the include folder - enclose the class in the proper namespace llvm-svn: 294741
* Switch TestPacketSpeedJSON to use the llvm chrono formatterPavel Labath2017-02-102-25/+19
| | | | llvm-svn: 294739
* Add a format_provider for the Timeout classPavel Labath2017-02-107-69/+56
| | | | | | | | | | and use it in the appropriate log statements. Formatting of chrono types in log messages was very clunky. This should make it much nicer to use and give better output. For details of the formatting options see the chrono formatter in llvm. llvm-svn: 294738
* Improve asserts in TestWatchpointIgnoreCountPavel Labath2017-02-101-9/+7
| | | | | | | | This test is flaky on the windows->android bot. Change assertTrue to assertEqual in the hope better error messages will direct us to the problem. llvm-svn: 294737
* Convert Log class to llvm streamsPavel Labath2017-02-1018-119/+139
| | | | | | | | | | | | | | | | | | | | | | | | Summary: This converts LLDB's logging to use llvm streams instead of lldb_private::Stream and friends. The changes are mostly straight-forward and amount to s/lldb_private::Stream/llvm::raw_ostream. The part worth calling out is the rewrite of the StreamCallback class. Previously this class contained a per-thread buffer of data written. I assume this had something to do with it trying to make sure each log line is delivered as a single event, instead of multiple (possibly interleaved) events. However, this is no longer relevant as the Log class already writes things to a temporary buffer and then delivers the message as a single "write", so I have just removed the code in question. Reviewers: zturner, clayborg Subscribers: emaste, lldb-commits, mgorny Differential Revision: https://reviews.llvm.org/D29615 llvm-svn: 294736
* Make sure we only load the OS plug-in once.Greg Clayton2017-02-091-3/+7
| | | | | | <rdar://problem/27580297> llvm-svn: 294611
* Fix build bots.Greg Clayton2017-02-092-4/+3
| | | | llvm-svn: 294603
* Fixed an issue where AllocatedBlock::ReserveRange does a linear search ↵Greg Clayton2017-02-093-123/+124
| | | | | | | | | | | | through reserved ranges. After many expressions are evaluated we were spending time looking for open blocks on memory in the one or more AllocatedBlock objects and it would slow down expression evaluation. I implemented a fixed size blocks implementation that maintains a sorted free list to fix the issue. <rdar://problem/17962974> llvm-svn: 294600
* Fixed documentation bug found by Ramana who sent a patch to the lldb-dev list.Greg Clayton2017-02-091-1/+1
| | | | llvm-svn: 294597
* Revert r294580 , it didn't fix the shared buildIsmail Donmez2017-02-091-1/+0
| | | | llvm-svn: 294583
* Fix shared library buildIsmail Donmez2017-02-091-0/+1
| | | | llvm-svn: 294580
* [cmake] add missing dependency lldbCommands->lldbBasePavel Labath2017-02-091-0/+1
| | | | | | | | | | CommandObjectVersion.cpp calls lldb_private::GetVersion (present in lldbBase). This should fix the unittest link on windows. I am not sure why is this not present on other platforms -- my guess is that there lldbBase is included in the link through some other dependency chain. llvm-svn: 294549
* [CMake] Add dependency on Mips target if it is availableChris Bieneman2017-02-082-0/+10
| | | | | | | | | | The Mips plugins conditionally link the Mips backend, so we need to conditionally add the target as a dependency. This resolves a bot failure from r294515. http://lab.llvm.org:8011/builders/lldb-x86_64-ubuntu-14.04-buildserver/builds/4606/steps/build%20android/logs/stdio llvm-svn: 294521
* [CMake] Final dependency cleanup patch!Chris Bieneman2017-02-089-335/+38
| | | | | | | | | | | | | | | | | Summary: This patch removes the over-specified dependencies from LLDBDependencies and instead relies on the dependencies as expressed in each library and tool. This also removes the library looping in favor of allowing CMake to do its thing. I've tested this patch on Darwin, and found no issues, but since linker semantics vary by system I'll also work on testing it on other platforms too. Help testing would be greatly appreciated. Reviewers: labath, zturner Subscribers: danalbert, srhines, mgorny, jgosnell, lldb-commits Differential Revision: https://reviews.llvm.org/D29352 llvm-svn: 294515
* [LLDB][MIPS] Fix TestMiExec and TestMiData failuresNitesh Jain2017-02-083-3/+26
| | | | | Subscribers: jaydeep, bhushan, lldb-commits, slthakur llvm-svn: 294418
* [LLDB][MIPS] Fix TestMiniDumpNewNitesh Jain2017-02-081-0/+8
| | | | | | | | | | Reviewers: labath, clayborg Subscribers: jaydeep, bhushan, lldb-commits, slthakur Differential Revision: https://reviews.llvm.org/D29215 llvm-svn: 294415
* [CMake] Add explicit dependencies for ObjectFileELF testsChris Bieneman2017-02-071-0/+4
| | | | llvm-svn: 294372
* Synchronize PlatformFreeBSD with LinuxEd Maste2017-02-072-278/+91
| | | | | | | | | | Inspired by r294145 for NetBSD, this reduces diffs between the FreeBSD and Linux/NetBSD Platform implementations. Further diff reduction will occur once FreeBSD switches to using the remote process plugin. Differential Revision: https://reviews.llvm.org/D29667 llvm-svn: 294340
* Remove verbose category in the kdp channelPavel Labath2017-02-064-14/+7
| | | | llvm-svn: 294244
* Switch PlatformLinux to LLDB_LOGPavel Labath2017-02-061-83/+21
| | | | llvm-svn: 294243
* Remove the verbose category in the gdb-remote channelPavel Labath2017-02-065-27/+13
| | | | | | replace by LLDB_LOGV llvm-svn: 294224
* Remove the verbose category in the posix channelPavel Labath2017-02-065-29/+15
| | | | | | replace by LLDB_LOGV llvm-svn: 294223
* Fix darwin build (error.PutToLog fallout)Pavel Labath2017-02-061-18/+6
| | | | llvm-svn: 294222
* Fix darwin build (llvm::once_flag fallout)Pavel Labath2017-02-062-2/+3
| | | | llvm-svn: 294221
* Remove the verbose category in the dwarf channelPavel Labath2017-02-063-9/+3
| | | | llvm-svn: 294219
* Really fix build on non-windows platforms :)Pavel Labath2017-02-061-1/+1
| | | | llvm-svn: 294215
* Try to fix build on non-Windows platforms.Zachary Turner2017-02-061-5/+6
| | | | llvm-svn: 294213
* Fix missing include in NativeProcessLinuxPavel Labath2017-02-061-7/+4
| | | | llvm-svn: 294211
OpenPOWER on IntegriCloud