d55c5b19487ef22383a32548f1143f1dfac2478f |
14-Oct-2013 |
Todd Fiala <tfiala@google.com> |
Add Android.mk support for building LLDB on Linux host. This change adds support for building LLDB with the following build command from the top level: make FORCE_BUILD_LLVM_COMPONENTS=true ANDROID_BUILD_LLDB=true lldb There are known issues with the google linux host gcc 4.6.2+ variant currently used to build host executables. A follow up change will apply a temporary work-around that will be used until either the compiler is fixed or a new compiler is used. Change-Id: I18451f73cbe2264074cd8fba6397680855352a93
river/Android.mk
|
3138ad6178b98337ea875e30e7c808e35eae734d |
18-Jul-2013 |
Jim Ingham <jingham@apple.com> |
Use the correct call to close down the lockdown connection. <rdar://problem/14460024> git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@186597 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/RNBSocket.cpp
|
e0ee393523f63b80ec77bc92fa685d8290e9b82a |
18-Jul-2013 |
Jim Ingham <jingham@apple.com> |
Didn't get the right version of these files in the checkin for r186132. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@186596 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/arm/DNBArchImpl.cpp
ebugserver/source/MacOSX/arm/DNBArchImpl.h
|
7a11ebd805e518627ade465b143c5b1d52c70aa4 |
15-Jul-2013 |
Jason Molenda <jmolenda@apple.com> |
Bump version number to 310.99.0. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@186304 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
4e49a5bfccc0a51185eadf69b3e23f68e70f1676 |
12-Jul-2013 |
Jim Ingham <jingham@apple.com> |
Get debugserver to call task_set_state to prime the control registers so that watchpoints take for threads created while the program is running. Remove the testcase skips from TestConcurrentEvents.py, since they all pass now, and fix TestWatchpointMultipleThreads.py - which should have caught this problem - so it doesn't artificially break on new thread creation before the watchpoint triggers. llvm.org/pr16566 <rdar://problem/14383244> git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@186132 91177308-0d34-0410-b5e6-96231b3b80d8
arwin-threads/examine-threads.c
ebugserver/source/DNBArch.h
ebugserver/source/MacOSX/MachThread.cpp
ebugserver/source/MacOSX/MachThread.h
ebugserver/source/MacOSX/MachThreadList.cpp
ebugserver/source/MacOSX/arm/DNBArchImpl.cpp
ebugserver/source/MacOSX/arm/DNBArchImpl.h
ebugserver/source/MacOSX/i386/DNBArchImplI386.cpp
ebugserver/source/MacOSX/i386/DNBArchImplI386.h
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.cpp
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.h
|
fa2cd91f47a7782b9c040058aed369e022e332d3 |
01-Jul-2013 |
Sylvestre Ledru <sylvestre@debian.org> |
Following the modification introduced in llvm by commit 185311 The build system is currently miss-identifying GNU/kFreeBSD as FreeBSD. This kind of simplification is sometimes useful, but in general it's not correct. As GNU/kFreeBSD is an hybrid system, for kernel-related issues we want to match the build definitions used for FreeBSD, whereas for userland-related issues we want to match the definitions used for other systems with Glibc. The current modification adjusts the build system so that they can be distinguished, and explicitly adds GNU/kFreeBSD to the build checks in which it belongs. Fixes bug #16446. Patch by Robert Millan in the context of Debian. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@185313 91177308-0d34-0410-b5e6-96231b3b80d8
river/Makefile
ldb-platform/Makefile
|
58274a3c8d618e5aac2b738aa1d11bce423208ab |
27-Jun-2013 |
Greg Clayton <gclayton@apple.com> |
<rdar://problem/14195566> Found a race condition when killing an application where the state could be set to exited by the waitpid_thread() _before_ we call task resume (via MachProcess::PrivateResume()) in MachProcess::Kill(). git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@185048 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/DNB.cpp
ebugserver/source/MacOSX/MachProcess.cpp
|
fa72100a0ac0267163cacde1af4ef43822dc390a |
27-Jun-2013 |
Han Ming Ong <hanming@apple.com> |
<rdar://problem/14281898> Much faster way to get dirty size. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@185033 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachVMMemory.cpp
|
813bec3072bc145dc9d80c5ef04daf8406b91ac0 |
26-Jun-2013 |
Han Ming Ong <hanming@apple.com> |
<rdar://problem/14262854> Match up with top’s implementation on recent Cab as API has changed a bit. Tested the same binary running on Zin as well. Tested ARM binary on iOS as well. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@185017 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachVMMemory.cpp
|
63a2648720ab1c245dbafbf00884dd1e1ba22c28 |
25-Jun-2013 |
Jason Molenda <jmolenda@apple.com> |
If debugserver fails to interrogate the inferior process CPU type for any reason, use debugserver own's cputype as a best guess when we reply to the debugger's qProcessInfo packet or when initializing our register tables. <rdar://problem/13406879> git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@184829 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/RNBRemote.cpp
|
59752d199bb19ffde140b67da147b0afa67f2e88 |
25-Jun-2013 |
Jason Molenda <jmolenda@apple.com> |
Remove some unnecessary uses of nub_break_t in the arm specific support files for debugserver to fix a build failure for arm. Also remove some of the code used for software-driven single instruction stepping; this is slowly being yanked out and these particular bits overlap with the nub_break_t going away. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@184828 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachThread.cpp
ebugserver/source/MacOSX/arm/DNBArchImpl.cpp
ebugserver/source/MacOSX/arm/DNBArchImpl.h
|
ac94caa68a4a5fa4bd939d7656a6a12d8fc06a33 |
12-Jun-2013 |
Greg Clayton <gclayton@apple.com> |
Huge performance improvements when one breakpoint contains many locations. 325,000 breakpoints for running "breakpoint set --func-regex ." on lldb itself (after hitting a breakpoint at main so that LLDB.framework is loaded) used to take up to an hour to set, now we are down under a minute. With warm file caches, we are at 40 seconds, and that is with setting 325,000 breakpoint through the GDB remote API. Linux and the native debuggers might be faster. I haven't timed what how much is debug info parsing and how much is the protocol traffic to/from GDB remote. That there were many performance issues. Most of them were due to storing breakpoints in the wrong data structures, or using the wrong iterators to traverse the lists, traversing the lists in inefficient ways, and not optimizing certain function name lookups/symbol merges correctly. Debugging after that is also now very efficient. There were issues with replacing the breakpoint opcodes in memory that was read, and those routines were also fixed. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@183820 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/DNB.cpp
ebugserver/source/DNB.h
ebugserver/source/DNBBreakpoint.cpp
ebugserver/source/DNBBreakpoint.h
ebugserver/source/DNBDefs.h
ebugserver/source/MacOSX/MachProcess.cpp
ebugserver/source/MacOSX/MachProcess.h
ebugserver/source/MacOSX/MachThread.cpp
ebugserver/source/MacOSX/MachThread.h
ebugserver/source/MacOSX/MachThreadList.cpp
ebugserver/source/MacOSX/i386/DNBArchImplI386.cpp
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.cpp
ebugserver/source/RNBRemote.cpp
ebugserver/source/RNBRemote.h
|
a619e8ec81ff9c838285105c034ee70a290be904 |
07-Jun-2013 |
Greg Clayton <gclayton@apple.com> |
Remove the debugserver "--open-connection" option and obey the hostname that is passed into debugserver. you can now specify: debugserver host:port debugserver port debugserver /path/to/file When "host" is specified, we will only accept connections from that host. If host is not specified, we default to "localhost". git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@183457 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/RNBSocket.cpp
ebugserver/source/RNBSocket.h
ebugserver/source/debugserver.cpp
|
17d5a0358d60922707fdab6ec9c3251ca44dd614 |
23-May-2013 |
Michael Sartain <mikesart@valvesoftware.com> |
Add ${ansi.XX} parsing to lldb prompt, use-color setting, and -no-use-colors command line options. settings set use-color [false|true] settings set prompt "${ansi.bold}${ansi.fg.green}(lldb)${ansi.normal} " also "--no-use-colors" on the command prompt git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@182609 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
3cc1b9c78b84a3796ecb7ba1f57335e952a4b746 |
23-May-2013 |
Michael Sartain <mikesart@valvesoftware.com> |
Fix shutdown to correctly close stdout and stop showing garbage characters on exit. Patch by Matthew Sorrels git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@182539 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
3a54da4467c036cf6b8ed4afe5cdd9dd7409c2d5 |
23-May-2013 |
Han Ming Ong <hanming@apple.com> |
<rdar://problem/13963648> Changes after feedback: Directly use function pointer, just to be safer on 10.8. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@182529 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachVMMemory.cpp
|
77d340f114b99ec8e2f7a48cbb674c93e237022b |
22-May-2013 |
Han Ming Ong <hanming@apple.com> |
<rdar://problem/13963648> Collect 'anonymous memory' info, if possible git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@182523 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/DNBDefs.h
ebugserver/source/MacOSX/MachTask.cpp
ebugserver/source/MacOSX/MachVMMemory.cpp
ebugserver/source/MacOSX/MachVMMemory.h
|
4d4ff9e8f7746ba1b1d597512b7cb711350c0206 |
21-May-2013 |
Greg Clayton <gclayton@apple.com> |
<rdar://problem/13892516> LLDB can now debug across calls to exec when the architecture changes from say i386 to x86_64 (on darwin). git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@182345 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
ebugserver/source/DNBBreakpoint.cpp
ebugserver/source/DNBBreakpoint.h
ebugserver/source/DNBDefs.h
ebugserver/source/MacOSX/MachDYLD.cpp
ebugserver/source/MacOSX/MachDYLD.h
ebugserver/source/MacOSX/MachProcess.cpp
ebugserver/source/MacOSX/MachProcess.h
ebugserver/source/RNBRemote.cpp
ebugserver/source/RNBRemote.h
|
26868913197330e6cc9125678fe4092a72138172 |
17-May-2013 |
Daniel Malea <daniel.malea@intel.com> |
Append missing version number to lldb binary built by cmake - now, the output binary is called 'lldb-3.4' instead of 'lldb' - a symlink 'lldb' -> 'lldb-3.4' is also created - this fixes one of the problems preventing CMake from building Debian packages git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@182148 91177308-0d34-0410-b5e6-96231b3b80d8
river/CMakeLists.txt
|
cf9591fb271ec132c866d264ca21ff06a21841c7 |
16-May-2013 |
Greg Clayton <gclayton@apple.com> |
<rdar://problem/13891604> Fixed a 2 second delay when sending the 'k' (kill) packet that happened due to a race condition. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@182025 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachProcess.cpp
ebugserver/source/MacOSX/MachProcess.h
|
0689f164af4e83dad8b48dc1248433f65a553f20 |
16-May-2013 |
Greg Clayton <gclayton@apple.com> |
Removed unused code and an unused event. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@181948 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/DNB.cpp
ebugserver/source/DNB.h
ebugserver/source/DNBDefs.h
|
4084fe70b71aef8d9d90186f9f54cd8a4d4c6861 |
14-May-2013 |
Greg Clayton <gclayton@apple.com> |
<rdar://problem/13764135> The "lldb" driver was interfering with STDOUT and STDERR if the output was over 1024 charcters long. The output was grabbing 1024 characters at a time, before it output the characters, it was writing characters to the screen to clear the current line. This has been fixed. I also fixed the command interpreter from mixing the "(lldb) " prompt in with program output by always manually checking for program output. This was done by having the command interpreter know when it is in the middle of executing a command by setting a bool. This was needed since sometimes when a command would run the target, like with a command like 'expression (int)printf("hello\n")', the process would push a new input reader, and then pop it when it was done. This popping of the input reader would cause the command interpreter to get sent a reactivated message (from the private process state thread) and cause it to ask for another command, even though we were still in the middle of the command ('expression (int)printf("hello\n")'). Now we set a bool to true, run the command and set the bool to false. If we get reactivated while we are in the middle of a command, we don't say we are ready for a new command. This coupled with emitting the STDOUT/STDERR first after each command, followed by the command results, followed by then saying we are ready for a new command, should help cleanup the command line output on all platforms. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@181807 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
river/Driver.h
|
e09196066b61294d30c56ca86d8443bd3078a2f5 |
07-May-2013 |
Enrico Granata <egranata@apple.com> |
<rdar://problem/13063912> If the user pressed ^D, that would bypass the exit confirmation mechanism This checkin remedies that by making sure that users get prompted on exit when appropriate even if they use CTRL+D instead of typing quit at the prompt git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@181257 91177308-0d34-0410-b5e6-96231b3b80d8
river/IOChannel.cpp
river/IOChannel.h
|
08f60c88b61c42c35abf3233f0cbe19d29fbe814 |
04-May-2013 |
Jason Molenda <jmolenda@apple.com> |
fix a couple of clang static analyzer warnings. Most important was a new[] + delete mismatch in ScanFormatDescriptor() and a couple of possible memory leaks in FileSpec::EnumerateDirectory(). git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@181080 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachTask.cpp
ebugserver/source/MacOSX/MachVMMemory.cpp
|
17a9d265c78823373cd36890f8b0f63e96d223c8 |
03-May-2013 |
Enrico Granata <egranata@apple.com> |
<rdar://problem/13732521> Updated the logic for the Sketch test case git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@180966 91177308-0d34-0410-b5e6-96231b3b80d8
ldb-perf/darwin/sketch/sketch.cpp
|
f9138b7dc02758396f52c09ae5551a1ee4a451ca |
01-May-2013 |
Jim Ingham <jingham@apple.com> |
Add an option to resume a suspended task. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@180830 91177308-0d34-0410-b5e6-96231b3b80d8
arwin-threads/examine-threads.c
|
b07f8de5d0079d7e5ca53f1f4e5ee256e5474900 |
24-Apr-2013 |
Greg Clayton <gclayton@apple.com> |
<rdar://problem/13665446> Pass the user set target.env-vars when launching through a terminal. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@180201 91177308-0d34-0410-b5e6-96231b3b80d8
arwin-debug/darwin-debug.cpp
|
b6bac2a4c964ecd70aae70bc5b24b0f87e6d5344 |
22-Apr-2013 |
Enrico Granata <egranata@apple.com> |
Proper English not optional git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@180053 91177308-0d34-0410-b5e6-96231b3b80d8
ldb-perf/common/clang/lldb_perf_clang.cpp
|
102b2c2681c9a830afe25bfea35557421905e42c |
19-Apr-2013 |
Greg Clayton <gclayton@apple.com> |
After discussing with Chris Lattner, we require C++11, so lets get rid of the macros and just use C++11. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@179805 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/DNB.cpp
ebugserver/source/DNB.h
ebugserver/source/DNBDefs.h
ebugserver/source/DNBTimer.h
ebugserver/source/MacOSX/MachThread.h
ebugserver/source/RNBDefs.h
river/Driver.h
ldb-perf/lib/Gauge.cpp
ldb-perf/lib/MemoryGauge.cpp
ldb-perf/lib/Results.cpp
ldb-perf/lib/Results.h
ldb-platform/lldb-platform.cpp
|
0b10ef61ea60e24fe7736cd98bd5fb45efe9c816 |
18-Apr-2013 |
Greg Clayton <gclayton@apple.com> |
Missed some cases when switching over to using our STD_UNIQUE_PTR macros. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@179796 91177308-0d34-0410-b5e6-96231b3b80d8
ldb-perf/lib/Gauge.cpp
ldb-perf/lib/MemoryGauge.cpp
ldb-perf/lib/Results.cpp
ldb-perf/lib/Results.h
|
81a96aa6242f7b559770f5dc62316253cb8cb0d4 |
18-Apr-2013 |
Greg Clayton <gclayton@apple.com> |
Since we use C++11, we should switch over to using std::unique_ptr when C++11 is being used. To do this, we follow what we have done for shared pointers and we define a STD_UNIQUE_PTR macro that can be used and it will "do the right thing". Due to some API differences in std::unique_ptr and due to the fact that we need to be able to compile without C++11, we can't use move semantics so some code needed to change so that it can compile with either C++. Anyone wanting to use a unique_ptr or auto_ptr should now use the "STD_UNIQUE_PTR(TYPE)" macro. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@179779 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/DNBDefs.h
ebugserver/source/DNBTimer.h
ebugserver/source/MacOSX/MachThread.h
river/Driver.h
ldb-platform/lldb-platform.cpp
|
442b3f60c3569eb2445df8c72065a93a44bf97bf |
16-Apr-2013 |
Enrico Granata <egranata@apple.com> |
New CallNext action for the test case that causes the next action in the sequence to be called right away git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@179578 91177308-0d34-0410-b5e6-96231b3b80d8
ldb-perf/lib/TestCase.cpp
ldb-perf/lib/TestCase.h
|
177ac0db135db53edd2c6158d8e3190d2e78b566 |
15-Apr-2013 |
Enrico Granata <egranata@apple.com> |
More updates to test cases git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@179560 91177308-0d34-0410-b5e6-96231b3b80d8
ldb-perf/common/clang/lldb_perf_clang.cpp
ldb-perf/common/stepping/lldb-perf-stepping.cpp
ldb-perf/lldbperf.xcodeproj/project.pbxproj
|
4d77c182b3b4fd418ccb488469aa18262bfe481b |
15-Apr-2013 |
Enrico Granata <egranata@apple.com> |
Sketch test now runs 10 times Data formatters test outputs stddev git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@179559 91177308-0d34-0410-b5e6-96231b3b80d8
ldb-perf/darwin/formatters/formatters.cpp
ldb-perf/darwin/sketch/sketch.cpp
|
ec87e5c098f1ce1c9182d1c5438e0beca0996597 |
15-Apr-2013 |
Enrico Granata <egranata@apple.com> |
Enabling test case to write the average+stddev pair to the results The sketch test case writes avg+stddev for all its metrics: <key>fetch-frames</key> <dict> <key>description</key> <string>time to dump backtrace for every frame in every thread</string> <key>stddev</key> <real>0.006270938361432314</real> <key>value</key> <real>0.011568079851851851</real> </dict> git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@179550 91177308-0d34-0410-b5e6-96231b3b80d8
ldb-perf/darwin/sketch/sketch.cpp
ldb-perf/lib/Measurement.h
ldb-perf/lib/Metric.cpp
ldb-perf/lib/Metric.h
ldb-perf/lib/Results.cpp
ldb-perf/lib/Results.h
|
b8158c8227c34b0fde91cf8602003f250bead007 |
15-Apr-2013 |
Enrico Granata <egranata@apple.com> |
- Adding a relaunch feature to the performance tester: you can use the relaunch if you want to measure multiple runs of your app keeping the same metrics alive. New arguments must be supplied - and the step counter will not be reset (this makes it easy to avoid endless loops) - Having the Sketch test case relaunch itself git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@179548 91177308-0d34-0410-b5e6-96231b3b80d8
ldb-perf/darwin/sketch/sketch.cpp
ldb-perf/lib/TestCase.cpp
ldb-perf/lib/TestCase.h
|
6e792e9565c78f96ef5e0e36d467f724fd4efbf2 |
12-Apr-2013 |
Enrico Granata <egranata@apple.com> |
Sketch test case improvements: - use the TestCase option parsing - dump output to stdout when no file is provided git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@179415 91177308-0d34-0410-b5e6-96231b3b80d8
ldb-perf/darwin/sketch/sketch.cpp
|
7905badf63cdca9b5eb26a81976edcaf67890c92 |
11-Apr-2013 |
Enrico Granata <egranata@apple.com> |
Updated the line on which to break for the formatters test Moving over to source-regex might be a good idea, but it’s not what we really want to test. Ideally, we would set a regex breakpoint to find the right line, then delete it and set one by file and line with the right line info from before. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@179246 91177308-0d34-0410-b5e6-96231b3b80d8
ldb-perf/darwin/formatters/formatters.cpp
|
e255a7d13780e35b97e0f2954cba47cc9eaae7e0 |
06-Apr-2013 |
Jason Molenda <jmolenda@apple.com> |
Cache the VM page size that we get from task_vm_info so we don't re-fetch the value. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@178962 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachVMMemory.cpp
|
dfb7c7f12cbefccf5f097ec90f6d157e2a32f35d |
06-Apr-2013 |
Jason Molenda <jmolenda@apple.com> |
Add optional LOG_TASK logging for MachVMMemory::PageSize when the call succeeds, too. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@178955 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachVMMemory.cpp
|
92748483a4c36e9bf2535abb863dbca1271053a1 |
06-Apr-2013 |
Jason Molenda <jmolenda@apple.com> |
Add optional LOG_TASK logging for MachVMMemory::PageSize() task_info call failure. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@178954 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachVMMemory.cpp
|
fb190f3e1ddbaf9fb72e15a96e103de2b9c0dc44 |
06-Apr-2013 |
Jason Molenda <jmolenda@apple.com> |
Update MachVMMemory::PageSize to get the page size of a specific process if we have an updated task_info call available; else fall back to getting the default host-wide page size. Update all uses of the vm page size to get it via MachVMMemory::PageSize(). <rdar://problem/13477763>, <rdar://problem/13498504> git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@178953 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachTask.cpp
ebugserver/source/MacOSX/MachTask.h
ebugserver/source/MacOSX/MachVMMemory.cpp
ebugserver/source/MacOSX/MachVMMemory.h
|
3f2f741bb533b78e2fac5332c4698338ea2fd3ac |
04-Apr-2013 |
Greg Clayton <gclayton@apple.com> |
<rdar://problem/13457391> LLDB now can use a single dash for all long options for all commands form the command line and from the command interpreter. This involved just switching all calls from getopt_long() to getopt_long_only(). git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@178789 91177308-0d34-0410-b5e6-96231b3b80d8
arwin-debug/darwin-debug.cpp
ebugserver/source/debugserver.cpp
river/Driver.cpp
ldb-perf/common/clang/lldb_perf_clang.cpp
ldb-perf/common/stepping/lldb-perf-stepping.cpp
ldb-perf/darwin/sketch/sketch.cpp
ldb-platform/lldb-platform.cpp
|
427b7e842d0ce6d2099a07fc13cdd0b9d7e9c12a |
04-Apr-2013 |
Greg Clayton <gclayton@apple.com> |
<rdar://problem/13198919> Try and reap process when sending the "k" packet to avoid a race condition. We now wait for at most 1 second to reap the child process that we are killing. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@178726 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachProcess.cpp
|
aeabc5e251105512ea7539b2f62ad3edd485d0dc |
03-Apr-2013 |
Greg Clayton <gclayton@apple.com> |
<rdar://problem/12789467> Fixed an attach case for ARM that was imporperly detecting an application bundle when there wasn't one. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@178704 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachProcess.cpp
|
81881d210e18eb8b1d5a638f575bf56c8b5676fe |
03-Apr-2013 |
Jason Molenda <jmolenda@apple.com> |
Remove a bit of code duplication in RNBRemote::HandlePacket_qProcessInfo - call DNBProcessGetCPUType() to get the cputype of the process we're debugging. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@178620 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/RNBRemote.cpp
|
afe3763f13dc122006ad6b5ed377e789e09c8715 |
03-Apr-2013 |
Jason Molenda <jmolenda@apple.com> |
Fix another old usage of GetCurrentThread() to get a mach port number in RNBRemote::HandlePacket_qProcessInfo -- add a new GetCurrentThreadMachPort() so callers who need to make a mach thred_get_state() call at the RNBRemote level will have a way to get the port number. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@178619 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/DNB.cpp
ebugserver/source/DNB.h
ebugserver/source/MacOSX/MachProcess.cpp
ebugserver/source/MacOSX/MachProcess.h
ebugserver/source/RNBRemote.cpp
|
08257e457b2aab6453618cb64c033e5a64115da1 |
02-Apr-2013 |
Enrico Granata <egranata@apple.com> |
Enabling metrics to calculate (and dump) their standard deviation git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@178580 91177308-0d34-0410-b5e6-96231b3b80d8
ldb-perf/lib/Measurement.h
ldb-perf/lib/MemoryGauge.cpp
ldb-perf/lib/MemoryGauge.h
ldb-perf/lib/Metric.cpp
ldb-perf/lib/Metric.h
|
101a2d6d590b12f9647032d656a13d3d7c432038 |
02-Apr-2013 |
Enrico Granata <egranata@apple.com> |
Misc fixes: - make an overload of Launch() that takes an init list of const char* if all you need to tweak in the launch info are the command-line arguments - make Run() return an int that you can use as an exit-code - make dynamic values work properly when recursing in FetchVariables() - make the po output more obvious in verbose mode git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@178578 91177308-0d34-0410-b5e6-96231b3b80d8
ldb-perf/lib/TestCase.cpp
ldb-perf/lib/TestCase.h
ldb-perf/lib/Xcode.cpp
|
1574f8a7ed6b1f3ddbc3b15b7f01c8b1164b286f |
02-Apr-2013 |
Jim Ingham <jingham@apple.com> |
Remove some unused code. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@178512 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachProcess.cpp
|
b1b36ec6dcfbe7c7dfa423d50cb7c2296deca68e |
01-Apr-2013 |
Enrico Granata <egranata@apple.com> |
Integrating option parsing in TestCase for added convenience To hook it up to individual test cases: - define GetLongOptions() in your test case class to return something other than NULL (hopefully an array of options :-) - implement ParseOption() to check for the short option char and do the right thing - return true at the end if you want more options to come your way or false if you don’t - make sure that your Setup() call takes int& and char**& so that optind post-processing can happen - and call TestCase::Setup from your setup git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@178482 91177308-0d34-0410-b5e6-96231b3b80d8
ldb-perf/common/clang/lldb_perf_clang.cpp
ldb-perf/common/stepping/lldb-perf-stepping.cpp
ldb-perf/darwin/formatters/formatters.cpp
ldb-perf/darwin/sketch/sketch.cpp
ldb-perf/lib/TestCase.cpp
ldb-perf/lib/TestCase.h
|
51a53958518a1b2aa4b8c37276dcc3a2516c00a5 |
01-Apr-2013 |
Enrico Granata <egranata@apple.com> |
Proper option parser for the Sketch test case git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@178477 91177308-0d34-0410-b5e6-96231b3b80d8
ldb-perf/darwin/sketch/sketch.cpp
|
473ff991a3295666eddf89415f6c38ac4afad230 |
28-Mar-2013 |
Jason Molenda <jmolenda@apple.com> |
Debugserver fix for launching iOS apps who are named "com.apple.something" - the ".app" would be treated as the app bundle final characters and the SpringBoard launch would fail. <rdar://problem/13258935> git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@178209 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachProcess.cpp
|
952e9dc874944fcdbbb224f3ec4fc2c859376f64 |
28-Mar-2013 |
Greg Clayton <gclayton@apple.com> |
<rdar://problem/13521159> LLDB is crashing when logging is enabled from lldb-perf-clang. This has to do with the global destructor chain as the process and its threads are being torn down. All logging channels now make one and only one instance that is kept in a global pointer which is never freed. This guarantees that logging can correctly continue as the process tears itself down. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@178191 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
ebugserver/debugserver.xcodeproj/xcshareddata/xcschemes/debugserver.xcscheme
ldb-perf/common/clang/lldb_perf_clang.cpp
|
1a6ca000a8cbea0bdf736ed3f2615628bfd32e46 |
27-Mar-2013 |
Greg Clayton <gclayton@apple.com> |
<rdar://problem/13327940> Cleaned up some paths. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@178177 91177308-0d34-0410-b5e6-96231b3b80d8
ldb-perf/common/clang/lldb_perf_clang.cpp
|
d31cd4aa3d1b311a940eb3543f018aace0ba9716 |
27-Mar-2013 |
Greg Clayton <gclayton@apple.com> |
Added a source file needed for clang to compile in the lldb_perf_clang test. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@178176 91177308-0d34-0410-b5e6-96231b3b80d8
ldb-perf/common/clang/main.cpp
|
2bba866ae44707183679c1b974409d6386a76bac |
27-Mar-2013 |
Greg Clayton <gclayton@apple.com> |
<rdar://problem/13327940> Enhance automated testing to include evaluating function calls. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@178175 91177308-0d34-0410-b5e6-96231b3b80d8
ldb-perf/common/clang/lldb_perf_clang.cpp
|
ec1799a439c74497f64206b30d3e3c0e4e775317 |
27-Mar-2013 |
Greg Clayton <gclayton@apple.com> |
Prune more stuff out of the build and source folders after building clang. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@178112 91177308-0d34-0410-b5e6-96231b3b80d8
ldb-perf/common/clang/build-clang.sh
|
981aa57c416161574eb5a2f8e1e77d0d94de1e96 |
26-Mar-2013 |
Greg Clayton <gclayton@apple.com> |
Cleaned up how LLDB.framework was being linked to and also how the target dependencies. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@178085 91177308-0d34-0410-b5e6-96231b3b80d8
ldb-perf/lldbperf.xcodeproj/project.pbxproj
|
aa08062b169a51f3334a662f14f5ea2c626b7d13 |
26-Mar-2013 |
Greg Clayton <gclayton@apple.com> |
Trim the output build folder a bit to it isn't so large. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@178070 91177308-0d34-0410-b5e6-96231b3b80d8
ldb-perf/common/clang/build-clang.sh
|
094e2a9b484381bd35d95090c7501b1e3880e92f |
26-Mar-2013 |
Jim Ingham <jingham@apple.com> |
Change the stepping test to output "total time" for the step as well. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@178043 91177308-0d34-0410-b5e6-96231b3b80d8
ldb-perf/common/stepping/lldb-perf-stepping.cpp
ldb-perf/lldbperf.xcodeproj/project.pbxproj
|
e7d8c6e2fcc9486682d8e6240cd21bc0920b8d99 |
26-Mar-2013 |
Greg Clayton <gclayton@apple.com> |
Remove FunctionProfiler and ProfileObjectiveC action classes as they are not used. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@178035 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
ebugserver/source/FunctionProfiler.cpp
ebugserver/source/FunctionProfiler.h
ebugserver/source/ProfileObjectiveC.cpp
ebugserver/source/ProfileObjectiveC.h
|
0b51bed6fbaa9d63730d54a2891e9d73d5bec773 |
26-Mar-2013 |
Jim Ingham <jingham@apple.com> |
Make the stepping perf test case actually work. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@177964 91177308-0d34-0410-b5e6-96231b3b80d8
ldb-perf/common/stepping/lldb-perf-stepping.cpp
ldb-perf/common/stepping/stepping-testcase.cpp
ldb-perf/lldbperf.xcodeproj/project.pbxproj
|
2a647e4b0eb044cffab5c8c29b6af9ed52129544 |
25-Mar-2013 |
Han Ming Ong <hanming@apple.com> |
<rdar://problem/13498504> Don't hard code vm page size in profiling code git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@177907 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachTask.cpp
ebugserver/source/MacOSX/MachVMMemory.cpp
|
f44636bb5faa8ebf003c18e2ff20520bf7e5e938 |
23-Mar-2013 |
Jason Molenda <jmolenda@apple.com> |
Add two additional DNBLog's in places where we're about to kill off the inferior process so we stand a better chance of understanding what caused us to send a PT_KILL. <rdar://problem/12720340> git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@177817 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/RNBRemote.cpp
ebugserver/source/debugserver.cpp
|
073ce1767f25e16be65e2835092c0d2d51ee599a |
23-Mar-2013 |
Greg Clayton <gclayton@apple.com> |
Added better measurements to test: - memory delta and time for: target create - memory delta and time for: setting breakpoint at main by name - time to launch and hit bp at main - overall memory of target create + bp main + run to main - ovarall time of target create + bp main + run to main git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@177808 91177308-0d34-0410-b5e6-96231b3b80d8
ldb-perf/common/clang/lldb_perf_clang.cpp
|
1c31631dfbaacaf9ef61f45977fae0b29fdad1d2 |
23-Mar-2013 |
Greg Clayton <gclayton@apple.com> |
Make sure the "Release" builds link against the "Release" LLDB.framework and also output the results to /dev/stdout when no outfile is supplied. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@177791 91177308-0d34-0410-b5e6-96231b3b80d8
ldb-perf/common/clang/lldb_perf_clang.cpp
ldb-perf/lib/Results.cpp
ldb-perf/lldbperf.xcodeproj/project.pbxproj
|
7dd846ae1be02fae0fc945cd511c915270d69ccc |
23-Mar-2013 |
Jason Molenda <jmolenda@apple.com> |
Change debugserver to open the socket it listens to in INADDR_LOOPBACK mode by default ("localhost only") instead of INADDR_ANY ("accept connections from any system"). Add a new command line argument to debugserver, --open-connection or -H which will enable the previous behavior. It would be used if you were doing two-system debugging, with lldb running on one system and debugserver running on the other. But it is a less common workflow and should not be the default. <rdar://problem/12583284> git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@177790 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/RNBSocket.cpp
ebugserver/source/RNBSocket.h
ebugserver/source/debugserver.cpp
|
ca107c2f633f71fff71f65697d5c9b0827544c31 |
22-Mar-2013 |
Greg Clayton <gclayton@apple.com> |
Added option parsing to the lldb_perf_clang performance test. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@177759 91177308-0d34-0410-b5e6-96231b3b80d8
ldb-perf/common/clang/lldb_perf_clang.cpp
|
d2c50b1793f69af4d09b5ba364dc0a1a88ec26f5 |
22-Mar-2013 |
Greg Clayton <gclayton@apple.com> |
More cleanup to remove the CoreFoundation classes out of mainstream code (CFCMutableDictionary, CFCMutableArray, CFCString, etc). Now it is only used in the Results.cpp file for Apple builds only. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@177697 91177308-0d34-0410-b5e6-96231b3b80d8
ldb-perf/lib/Gauge.h
ldb-perf/lib/Measurement.h
ldb-perf/lib/Metric.cpp
ldb-perf/lib/Metric.h
ldb-perf/lib/Timer.cpp
|
9de4dec874148d30cc1d4c498d38cd048a8164ca |
22-Mar-2013 |
Greg Clayton <gclayton@apple.com> |
Much more cleanup on the performance testing infrastructure: - Added new abtract Results class to keep CoreFoundation out of the tests. There are many subclasses for different settings: Results::Result::Dictionary Results::Result::Array Results::Result::Unsigned Results::Result::Double Results::Result::String - Gauge<T> can now write themselves out via a templatized write to results function: template <class T> Results::ResultSP GetResult (const char *description, T value); - There are four specializations of this so far: template <> Results::ResultSP GetResult (const char *description, double value); template <> Results::ResultSP GetResult (const char *description, uint64_t value); template <> Results::ResultSP GetResult (const char *description, std::string value); template <> Results::ResultSP GetResult (const char *description, MemoryStats value); - Don't emit the virtual memory reading from the task info call as it really doesn't mean much as it includes way too much (shared cache + other stuff we don't have control over) - Fixed other test cases to build correctly and use the new classes git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@177696 91177308-0d34-0410-b5e6-96231b3b80d8
ldb-perf/common/clang/build-clang.sh
ldb-perf/common/clang/lldb_perf_clang.cpp
ldb-perf/common/stepping/lldb-perf-stepping.cpp
ldb-perf/darwin/formatters/formatters.cpp
ldb-perf/darwin/sketch/sketch.cpp
ldb-perf/lib/Gauge.cpp
ldb-perf/lib/Gauge.h
ldb-perf/lib/Measurement.h
ldb-perf/lib/MemoryGauge.cpp
ldb-perf/lib/MemoryGauge.h
ldb-perf/lib/Metric.cpp
ldb-perf/lib/Metric.h
ldb-perf/lib/Results.cpp
ldb-perf/lib/Results.h
ldb-perf/lib/TestCase.cpp
ldb-perf/lib/TestCase.h
ldb-perf/lib/Timer.cpp
ldb-perf/lib/Timer.h
ldb-perf/lldbperf.xcodeproj/project.pbxproj
|
a3df3b0c89ab584262098f8d877e8a72e3614a08 |
21-Mar-2013 |
Jim Ingham <jingham@apple.com> |
The outline of the stepping perf test case, doesn't do anything yet. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@177646 91177308-0d34-0410-b5e6-96231b3b80d8
ldb-perf/common/stepping/lldb-perf-stepping.cpp
ldb-perf/common/stepping/stepping-testcase.cpp
ldb-perf/lldbperf.xcodeproj/project.pbxproj
|
d3a8d6565ff40fd99533f50a085ace806a9300ee |
21-Mar-2013 |
Greg Clayton <gclayton@apple.com> |
Add correct file headers to all source files. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@177625 91177308-0d34-0410-b5e6-96231b3b80d8
ldb-perf/darwin/formatters/fmts_tester.mm
ldb-perf/darwin/formatters/formatters.cpp
ldb-perf/darwin/sketch/sketch.cpp
ldb-perf/lib/Gauge.h
ldb-perf/lib/Measurement.h
ldb-perf/lib/MemoryGauge.cpp
ldb-perf/lib/MemoryGauge.h
ldb-perf/lib/Metric.cpp
ldb-perf/lib/Metric.h
ldb-perf/lib/TestCase.cpp
ldb-perf/lib/TestCase.h
ldb-perf/lib/Timer.cpp
ldb-perf/lib/Timer.h
ldb-perf/lib/Xcode.cpp
ldb-perf/lib/Xcode.h
|
75fc5a74d95804e2ddc87bcade177640521147e0 |
21-Mar-2013 |
Greg Clayton <gclayton@apple.com> |
Modify code to adhere to LLDB coding conventions. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@177623 91177308-0d34-0410-b5e6-96231b3b80d8
ldb-perf/darwin/formatters/formatters.cpp
ldb-perf/lib/Gauge.h
ldb-perf/lib/Measurement.h
ldb-perf/lib/MemoryGauge.cpp
ldb-perf/lib/MemoryGauge.h
ldb-perf/lib/Metric.cpp
ldb-perf/lib/Metric.h
ldb-perf/lib/TestCase.h
ldb-perf/lib/Timer.cpp
ldb-perf/lib/Timer.h
|
2d098408c757270ad1ae36475ab8300ecc1d3bc6 |
21-Mar-2013 |
Greg Clayton <gclayton@apple.com> |
Added a lldb-perf test case that will be used to time various aspects of debugging clang with LLDB. This test case will measure memory usage and expression timings in frame zero and at higher frames. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@177617 91177308-0d34-0410-b5e6-96231b3b80d8
ldb-perf/common/clang/build-clang.sh
ldb-perf/common/clang/lldb_perf_clang.cpp
ldb-perf/lldbperf.xcodeproj/project.pbxproj
|
3c6f51715ac410086b872649b22940262a368d5c |
21-Mar-2013 |
Greg Clayton <gclayton@apple.com> |
Simplify the logic for DNBDataRef::ValidOffsetForDataOfSize() and DNBDataRef::ValidOffset() functions. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@177615 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/DNBDataRef.h
|
21ac3cbd69627081b1b35f1ff3fa50e72f751455 |
21-Mar-2013 |
Enrico Granata <egranata@apple.com> |
Making a manual mode of operation for measurements, where you can manually call start() and stop() instead of using the function-call syntax This is especially useful to take measurements that span multiple test steps, or where you need to have different operations fall under the same measurement An example of use is in the formatters perf test case git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@177597 91177308-0d34-0410-b5e6-96231b3b80d8
ldb-perf/darwin/formatters/formatters.cpp
ldb-perf/lib/Measurement.h
|
e62d448f4b663edfac26b9071323606b1b5fdc1d |
20-Mar-2013 |
Enrico Granata <egranata@apple.com> |
Making the test step count a member variable so that it can be accessed easily git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@177594 91177308-0d34-0410-b5e6-96231b3b80d8
ldb-perf/lib/TestCase.cpp
ldb-perf/lib/TestCase.h
|
3ffb7ed9e634aabc330acdb4a369646caa08c6a2 |
20-Mar-2013 |
Enrico Granata <egranata@apple.com> |
Renaming perf. main files from main.cpp to something meaningful git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@177587 91177308-0d34-0410-b5e6-96231b3b80d8
ldb-perf/darwin/formatters/formatters.cpp
ldb-perf/darwin/formatters/main.cpp
ldb-perf/darwin/sketch/main.cpp
ldb-perf/darwin/sketch/sketch.cpp
ldb-perf/lldbperf.xcodeproj/project.pbxproj
|
53bba61c0b9f3b3ceff5835f79d61efa0d81847c |
20-Mar-2013 |
Enrico Granata <egranata@apple.com> |
Making MemoryGauge work by fixing a Mach API call mistake - saving (and dumping) more information out of the task_info call git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@177580 91177308-0d34-0410-b5e6-96231b3b80d8
ldb-perf/lib/Measurement.h
ldb-perf/lib/MemoryGauge.cpp
ldb-perf/lib/MemoryGauge.h
ldb-perf/lib/Metric.cpp
ldb-perf/lib/Metric.h
ldb-perf/lib/TestCase.h
|
2002c030ded5da1adf38ceb76a7f393baa7a87e3 |
19-Mar-2013 |
Greg Clayton <gclayton@apple.com> |
Update Sketch test case to capture this and use accessors for debugger, target, process and thread. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@177425 91177308-0d34-0410-b5e6-96231b3b80d8
ldb-perf/darwin/sketch/main.cpp
ldb-perf/lib/TestCase.h
|
91c570abdc2eb7f0d9bc5affb086d515838ebc39 |
19-Mar-2013 |
Greg Clayton <gclayton@apple.com> |
More cleanup on the lldb-perf code: - TestCase.m_thread is now filled in with the first thread that has a valid stop reason. This eliminates the need for the SelectMyThread() functions. - The first thread that stops for a reason is also set as the selected thread in the process in case any command line commands are run. - Changed launch over to take a SBLaunchInfo parameter so that the launch function doesn't keep getting new arguments as they are needed. - TestCase::Setup() and TestCase::Launch(SBLaunchInfo) now return bool to indicate success of setup and launch. - ActionWanted::Next(SBThread) was renamed to ActionWanted::StepOver(SBThread) - ActionWanted::Finish(SBThread) was renamed to ActionWanted::StepOut(SBThread) git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@177376 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
ldb-perf/README
ldb-perf/darwin/formatters/main.cpp
ldb-perf/darwin/sketch/main.cpp
ldb-perf/lib/TestCase.cpp
ldb-perf/lib/TestCase.h
ldb-perf/lib/Xcode.cpp
ldb-perf/lldbperf.xcodeproj/project.pbxproj
|
535f53c8795b3592ce835804af5cef89be39ceea |
19-Mar-2013 |
Greg Clayton <gclayton@apple.com> |
<rdar://problem/13443931> Fixed a crasher in the SourceManager where it wasn't checking the m_target member variable for NULL. In doing this fix, I hardened this class to have weak pointers to the debugger and target in case they do go away. I also changed SBSourceManager to hold onto weak pointers to the debugger and target so they don't keep objects alive by holding a strong reference to them. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@177365 91177308-0d34-0410-b5e6-96231b3b80d8
ldb-perf/lldbperf.xcodeproj/project.pbxproj
|
5ae5ae08c86bf7154f2bef8aab7f05ab40c38559 |
19-Mar-2013 |
Greg Clayton <gclayton@apple.com> |
Fixed the README to match the current code. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@177346 91177308-0d34-0410-b5e6-96231b3b80d8
ldb-perf/README
|
6fd501049a72c5232eac177db345abbf691929c3 |
19-Mar-2013 |
Jim Ingham <jingham@apple.com> |
Add a comment about how to add a target for a test case. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@177343 91177308-0d34-0410-b5e6-96231b3b80d8
ldb-perf/README
|
788bb8dc33510d72011461808f4282a524086121 |
19-Mar-2013 |
Jim Ingham <jingham@apple.com> |
Move the performance test cases into their own project. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@177341 91177308-0d34-0410-b5e6-96231b3b80d8
ldb-perf/lldbperf.xcodeproj/project.pbxproj
|
af222500aa2ce2b18149277e561cdf75f2115df2 |
18-Mar-2013 |
Greg Clayton <gclayton@apple.com> |
Code cleanup: - don't use preprocessor macros - use switch statements - don't put anything in the lldb namespace, use "lldb_perf" namespace. - Pass the action struct into each TestStep() for each step fill in - Modify the ActionWanted class to have accessors to make the continue, next, finish, kill instead of using preproc macros git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@177332 91177308-0d34-0410-b5e6-96231b3b80d8
ldb-perf/darwin/formatters/main.cpp
ldb-perf/darwin/sketch/main.cpp
ldb-perf/lib/Gauge.h
ldb-perf/lib/Measurement.h
ldb-perf/lib/MemoryGauge.cpp
ldb-perf/lib/MemoryGauge.h
ldb-perf/lib/Metric.cpp
ldb-perf/lib/Metric.h
ldb-perf/lib/TestCase.cpp
ldb-perf/lib/TestCase.h
ldb-perf/lib/Timer.cpp
ldb-perf/lib/Timer.h
ldb-perf/lib/Xcode.cpp
ldb-perf/lib/Xcode.h
|
190276872994426fb0398e1cf521748249b75875 |
16-Mar-2013 |
Han Ming Ong <hanming@apple.com> |
<rdar://problem/13100435> Don't discount regions that vmmap is not discounting. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@177202 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachVMMemory.cpp
|
7a969e6e313a9c93cc4d4b920a41ef9e8b40ecc4 |
14-Mar-2013 |
Enrico Granata <egranata@apple.com> |
Make a README file with an introduction and basic directions for the lldb-perf infrastructure git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@177109 91177308-0d34-0410-b5e6-96231b3b80d8
ldb-perf/README
|
c50fc4b658c46ef43b1add131391ecdd1f9bd752 |
14-Mar-2013 |
Enrico Granata <egranata@apple.com> |
<rdar://problem/13228487> A test case for the performance of some LLDB formatters Changes and improvements to the testing infrastructure itself git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@177100 91177308-0d34-0410-b5e6-96231b3b80d8
ldb-perf/darwin/formatters/fmts_tester.mm
ldb-perf/darwin/formatters/main.cpp
ldb-perf/darwin/sketch/foobar.sketch2
ldb-perf/darwin/sketch/main.cpp
ldb-perf/lib/Measurement.h
ldb-perf/lib/Metric.cpp
ldb-perf/lib/Metric.h
ldb-perf/lib/TestCase.cpp
ldb-perf/lib/TestCase.h
ldb-perf/lib/Xcode.cpp
|
a53a76965eb603afe5705c694ee8e3344f91cc61 |
13-Mar-2013 |
Han Ming Ong <hanming@apple.com> |
<rdar://problem/13415471> Don't get dirty page size if we are not going to send it back git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@176992 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachVMMemory.cpp
|
7ddd06257641c6386a0fd809cad42839597e17b9 |
13-Mar-2013 |
Greg Clayton <gclayton@apple.com> |
<rdar://problem/13396207> Added logging that will show up in the system console when we try to resume a process that is already running, or has an unexpected state. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@176960 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachProcess.cpp
|
b649f7f34951e7495b33dbb4c2e240866941bb37 |
13-Mar-2013 |
Jason Molenda <jmolenda@apple.com> |
Various fixes for armv7 floating point/vector register support. Drop the old f registers from debugserver's register list. Add the NEON 128-bit q registers to debugserver, support reading and writing. Add the new contains / invalidates mappings for the s, d, and q registers so lldb will know what registers overlay what other registers. Change the default format of s and d registers to be floating point instead of hex. Remove some UTF-8 hyphen chars in comments in the ARM register number definition headers. <rdar://problem/13121797> git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@176915 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/ARM_DWARF_Registers.h
ebugserver/source/ARM_GCC_Registers.h
ebugserver/source/MacOSX/arm/DNBArchImpl.cpp
ebugserver/source/RNBRemote.cpp
|
aed59619469c06e7eba11e64bd40e7a02f68eaaa |
09-Mar-2013 |
Jason Molenda <jmolenda@apple.com> |
Remove use of the ARMDisassembler framework from DNBArchImplARM. This framework is no longer around; all armv7 devices support using hardware breakpoints to instruction single step. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@176761 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/arm/DNBArchImpl.cpp
ebugserver/source/MacOSX/arm/DNBArchImpl.h
|
4340ff246ada8e0c6968f31d5986f2dce744619c |
09-Mar-2013 |
Jason Molenda <jmolenda@apple.com> |
Also remove actual link against the ARMDisassembler framework from debugserver's build settings. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@176760 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
b73ebdfc72177621fcd1462c1716c7fcb19eb539 |
09-Mar-2013 |
Jason Molenda <jmolenda@apple.com> |
We don't need to specify the VALID_ARCHS in the xcode project file. Also, don't build debugserver with -DUSE_ARM_DISASSEMBLER_FRAMEWORK - that framework isn't around at this point. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@176759 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
385a5047fadd153639681704eb5711db9701350f |
08-Mar-2013 |
Enrico Granata <egranata@apple.com> |
Dump the measurements directly instead of getting their metrics first (this code needs to be pushed up so that in the basic scenarios TestCase knows to dump all its measurements directly) git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@176718 91177308-0d34-0410-b5e6-96231b3b80d8
ldb-perf/darwin/sketch/main.cpp
|
f5af85a2946ed4e1ff4766829d328cfb4961f259 |
08-Mar-2013 |
Enrico Granata <egranata@apple.com> |
Initial checkin of a new project: LLDB Performance Testing Infrastructure This is a very basic implementation of a library that easily allows to drive LLDB.framework to write test cases for performance This is separate from the LLDB testsuite in test/ in that: a) this uses C++ instead of Python to avoid measures being affected by SWIG b) this is in very early development and needs lots of tweaking before it can be considered functionally complete c) this is not meant to test correctness but to help catch performance regressions There is a sample application built against the library (in darwin/sketch) that uses the famous sample app Sketch as an inferior to measure certain basic parameters of LLDB's behavior. The resulting output is a PLIST much like the following: <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <array> <dict> <key>fetch-frames</key> <real>0.13161715522222225</real> </dict> <dict> <key>file-line-bkpt</key> <real>0.029111678750000002</real> </dict> <dict> <key>fetch-modules</key> <real>0.00026376766666666668</real> </dict> <dict> <key>fetch-vars</key> <real>0.17820429311111111</real> </dict> <dict> <key>run-expr</key> <real>0.029676525769230768</real> </dict> </array> </plist> Areas for improvement: - code cleanups (I will be out of the office for a couple days this coming week, but please keep ideas coming!) - more metrics and test cases - better error checking This toolkit also comprises a simple event-loop-driven controller for LLDB, similar yet much simpler to what the Driver does to implement the lldb command-line tool. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@176715 91177308-0d34-0410-b5e6-96231b3b80d8
ldb-perf/darwin/sketch/main.cpp
ldb-perf/lib/Gauge.h
ldb-perf/lib/Measurement.h
ldb-perf/lib/MemoryGauge.cpp
ldb-perf/lib/MemoryGauge.h
ldb-perf/lib/Metric.cpp
ldb-perf/lib/Metric.h
ldb-perf/lib/TestCase.cpp
ldb-perf/lib/TestCase.h
ldb-perf/lib/Timer.cpp
ldb-perf/lib/Timer.h
ldb-perf/lib/Xcode.cpp
ldb-perf/lib/Xcode.h
|
6778c99d79ae1db2d3f40a9f07d9e8ffda161799 |
07-Mar-2013 |
Sean Callanan <scallanan@apple.com> |
Updated Apple LLDB version to lldb-300.99.0. Also updated the build system to support the new Apple LLDB versioning scheme. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@176662 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
nstall-headers/Makefile
|
cec43ab7f30085ac7f65a26a58b956a69e363a3b |
04-Mar-2013 |
Han Ming Ong <hanming@apple.com> |
<rdar://problem/13338758> Make it configurable what to profile. For Mac, we don't use the dirty page size yet and hence there is no need to gather that. This should be way better in not draining the battery since we are operating between 0% to 0.1% on the Mac after this change. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@176451 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/DNB.cpp
ebugserver/source/DNB.h
ebugserver/source/DNBDefs.h
ebugserver/source/MacOSX/MachProcess.cpp
ebugserver/source/MacOSX/MachProcess.h
ebugserver/source/MacOSX/MachTask.cpp
ebugserver/source/MacOSX/MachTask.h
ebugserver/source/MacOSX/MachVMMemory.cpp
ebugserver/source/MacOSX/MachVMMemory.h
ebugserver/source/RNBRemote.cpp
|
46198d44860ab4928e18fef38158b7d5bfea3a6f |
01-Mar-2013 |
Jason Molenda <jmolenda@apple.com> |
Add the standard LLVM copyright notice to the top of these two new files. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@176312 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/libdebugserver.cpp
ebugserver/source/libdebugserver.h
|
137c4d7b3c76b29cb901d922ebd69eedc6a9ad96 |
01-Mar-2013 |
Daniel Malea <daniel.malea@intel.com> |
Finish up CMake support for LLDB (tested on Linux) - add missing scripts (driver, tests, etc...) - enable running of tests from cmake with "make check-lldb" target - fix up problem with clang dependencies (this enables parallel builds) - implement platform-specific FIXMEs in source/CMakeLists.txt git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@176306 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
river/CMakeLists.txt
|
3a05d8950e886c4e2014b90464eda52b34e2e67f |
28-Feb-2013 |
Jason Molenda <jmolenda@apple.com> |
Add the libdebugserver.cpp for creating a library that does debugserver work. There isn't any target in the xcode project file which will build this yet. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@176234 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/libdebugserver.cpp
ebugserver/source/libdebugserver.h
|
549ce88d2f36e4c0abd942c234761636cc5d5008 |
27-Feb-2013 |
Jason Molenda <jmolenda@apple.com> |
Fix one remaining mach port number/globally unique thread ID mixup which prevented queue names from being fetched correctly. <rdar://problem/13290877> git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@176141 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachThread.h
ebugserver/source/MacOSX/MachThreadList.cpp
ebugserver/source/MacOSX/MachThreadList.h
|
560829d304bd7aaa33027dcfac247ce6673d0c19 |
26-Feb-2013 |
Han Ming Ong <hanming@apple.com> |
<rdar://problem/13282582> Really don't call sysctl again when we already have the result. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@176062 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachTask.cpp
|
643adf8a3e1b5056fa2eedcc1b8bebbb1791dd9b |
25-Feb-2013 |
Jim Ingham <jingham@apple.com> |
Add a log line when debugserver exits, and clean up some of the other standard logs output to make it more useful. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@176039 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/debugserver.cpp
|
4eff6fca7d9209b8a2504e0c1ccae94c76ee9b06 |
25-Feb-2013 |
Han Ming Ong <hanming@apple.com> |
<rdar://problem/13282582> Need available CPU on target device to support CPU reporting. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@176008 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachTask.cpp
|
647718e08aa186dc4842517933ae5bca27782da9 |
23-Feb-2013 |
Han Ming Ong <hanming@apple.com> |
<rdar://problem/13277100> Need host_statistics on profile data to get host's user/system/idle clicks git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@175928 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachTask.cpp
|
2eaca13a907b3c2ce41602b646d073851dc696eb |
22-Feb-2013 |
Jim Ingham <jingham@apple.com> |
Call el_resize when the window size changes. <rdar://problem/13270100> git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@175926 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
river/Driver.h
river/IOChannel.cpp
river/IOChannel.h
|
4fd6f36c00519bf8313fad72836effbe973b83ed |
22-Feb-2013 |
Jason Molenda <jmolenda@apple.com> |
Remove unintended comment. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@175873 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachTask.cpp
|
44eb9fb021023027159df55f91c3e95384088970 |
22-Feb-2013 |
Jason Molenda <jmolenda@apple.com> |
Change debugserver from using the mach port number (in debugserver's own port namepsace) as the thread identifier to using the system-wide globally unique thread id as the thread identifier number. MachThread.cpp keeps both the unique id and the mach port number for each thread. All layers outside MachThread class use the unique id with three exceptions: (1) Mach exceptions come in with the port number (thread_port) which needs to be translated, (2) any calls to low-level thread_get_state/thread_set_state/thread_suspend etc need to use the mach port number, (3) MachThreadList::UpdateThreadList which creates the MachThread objects gets the unique id and passes it to the MachThread ctor as an argument. In general, any time nub_thread_t is used, it is now referring to a unique thread id. Any time a thread_t is used, it is now referring to a mach port number. There was some interchangability of these types previously. nub_thread_t has also been changed to a 64-bit type which necessitated some printf specification string changes. I haven't been able to test these changes extensively yet but want to checkpoint the work. The scenarios I've been testing are all working correctly so while there may be some corner cases I haven't hit yet, I think it is substantially correct. <rdar://problem/12931414> git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@175870 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/DNB.cpp
ebugserver/source/DNBBreakpoint.cpp
ebugserver/source/DNBDefs.h
ebugserver/source/MacOSX/MachProcess.cpp
ebugserver/source/MacOSX/MachProcess.h
ebugserver/source/MacOSX/MachTask.cpp
ebugserver/source/MacOSX/MachThread.cpp
ebugserver/source/MacOSX/MachThread.h
ebugserver/source/MacOSX/MachThreadList.cpp
ebugserver/source/MacOSX/MachThreadList.h
ebugserver/source/MacOSX/arm/DNBArchImpl.cpp
ebugserver/source/MacOSX/i386/DNBArchImplI386.cpp
ebugserver/source/MacOSX/ppc/DNBArchImpl.cpp
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.cpp
|
b989d7878062ff854ff212524ac694b3e1dacbe2 |
21-Feb-2013 |
Han Ming Ong <hanming@apple.com> |
<rdar://problem/13259230> Remember to set m_profile_thread to NULL once the profile thread is turned off. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@175761 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachProcess.cpp
|
3fb2c93fdab778e3da7e340ae13f06678ef71db2 |
16-Feb-2013 |
Greg Clayton <gclayton@apple.com> |
Added a kqueue class which isn't being used yet, but was part of trying to work around the limitations with the unix select() call and how it is limited to FD_SETSIZE file descriptors. Also added a TimeSpecTimeout class which can be used with any calls that take a "struct timespec *" as an argument. It is used by the KQueue class. Also updated some project settings. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@175377 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
cc633423fd6327c70fbff210f785c1004d03b0f9 |
16-Feb-2013 |
Greg Clayton <gclayton@apple.com> |
Get rid of a warning. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@175337 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachException.cpp
|
151e3be552fea65cc4f03eaa1c425f793266fe56 |
14-Feb-2013 |
Greg Clayton <gclayton@apple.com> |
<rdar://problem/12693921> Rename the monitor command from "qCmd" (incorrect) to "qRcmd". git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@175191 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/RNBRemote.cpp
ebugserver/source/RNBRemote.h
|
89e248f04ecb87d0df4a4b96158c3fac0a3e43c7 |
09-Feb-2013 |
Jim Ingham <jingham@apple.com> |
Reworked the way Process::RunThreadPlan and the ThreadPlanCallFunction interoperate to fix problems where hitting auto-continue signals while running a thread plan would cause us to lose control of the debug session. <rdar://problem/12993641> git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@174793 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
9c81c3322b68e49530b5c2180f8a0db8c6a494fb |
02-Feb-2013 |
Greg Clayton <gclayton@apple.com> |
Added support for the qCmd monitor packet command. Currently it can only do: set logfile=<path> set logmask=<num> But this opens the door for us to do much more. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@174258 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/DNBLog.cpp
ebugserver/source/DNBLog.h
ebugserver/source/RNBRemote.cpp
ebugserver/source/RNBRemote.h
|
6acc2042d58276130eb0791a2fb454d9a5f310cf |
25-Jan-2013 |
Han Ming Ong <hanming@apple.com> |
<rdar://13073234> Get the number of threads correct. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@173466 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachTask.cpp
|
36da2aa6dc5ad9994b638ed09eb81c44cc05540b |
25-Jan-2013 |
Greg Clayton <gclayton@apple.com> |
<rdar://problem/13069948> Major fixed to allow reading files that are over 4GB. The main problems were that the DataExtractor was using 32 bit offsets as a data cursor, and since we mmap all of our object files we could run into cases where if we had a very large core file that was over 4GB, we were running into the 4GB boundary. So I defined a new "lldb::offset_t" which should be used for all file offsets. After making this change, I enabled warnings for data loss and for enexpected implicit conversions temporarily and found a ton of things that I fixed. Any functions that take an index internally, should use "size_t" for any indexes and also should return "size_t" for any sizes of collections. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@173463 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/DNBDataRef.cpp
|
e8b34711014ec1992c85ef86374940c04351eaa8 |
25-Jan-2013 |
Jim Ingham <jingham@apple.com> |
Don't listen for EXC_RESOURCE exceptions, those should really be handled by the system handler. Also put in string translations for a couple of exceptions we were missing. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@173390 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachException.cpp
|
5dd1a287ecd9e3dbfda406f2dbc77e29fe5a5058 |
23-Jan-2013 |
Jason Molenda <jmolenda@apple.com> |
Remove a compile time warning in RNBRemote::HandlePacket_qProcessInfo for non-x86 builds. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@173226 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/RNBRemote.cpp
|
b5ebe11afa73728a49d56e9fcc8c9622638ee094 |
23-Jan-2013 |
Jason Molenda <jmolenda@apple.com> |
Change the container-regs kv pair in the qRegsiterInfo reply to be hex encoded, not decimal. Fix the whitespace in the container-regs/invalidate-regs documentation, fix one ambiguous hex/decimal number in an example. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@173225 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/RNBRemote.cpp
|
679ba16fbf2be2ef93d3c654e2639ab0cb32c598 |
22-Jan-2013 |
Greg Clayton <gclayton@apple.com> |
Changed the register number lists for the qRegisterInfo packet response to be raw hex to match all other register reading and writing APIs. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@173105 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/RNBRemote.cpp
|
34e71efd963d7422974739519abe4223909200a3 |
22-Jan-2013 |
Greg Clayton <gclayton@apple.com> |
Added all of the 16 and 8 bit register variants for i386. Modified the ARM register context to invalidate r8 - r14 when the CPSR register is modified. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@173104 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/arm/DNBArchImpl.cpp
ebugserver/source/MacOSX/i386/DNBArchImplI386.cpp
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.cpp
|
c290ba49b79c88ace8e5c58917489415e429ef01 |
21-Jan-2013 |
Greg Clayton <gclayton@apple.com> |
<rdar://problem/13020634> Fixed the 32, 16, and 8 bit pseudo regs for x86_64 (real reg of "rax" which subvalues "eax", "ax", etc...) to correctly get updated when stepping. Also fixed it so actual registers can specify what other registers must be invalidated when a register is modified. Previously, only pseudo registers could invalidate other registers. Modified the LLDB qRegisterInfo extension to the GDB remote interface to support specifying the containing registers with the new "container-regs" key whose value is a comma separated list of register numbers. Also added a "invalidate-regs" key whose value is also a comma separated list of register numbers. Removed the hack GDBRemoteDynamicRegisterInfo::Addx86_64ConvenienceRegisters() function and modified "debugserver" to specify the registers correctly using the new "container-regs" and "invalidate-regs" keys. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@173096 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/DNBDefs.h
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.cpp
ebugserver/source/RNBRemote.cpp
|
0df19ccfaa20d43245fea877fcfdfd5b2efb08c9 |
19-Jan-2013 |
Han Ming Ong <hanming@apple.com> |
<rdar://problem/12976277> Swap in index ids for thread ids in GDBRemoteCommunicationClient. Besides dealing with the async logic, I have to take care of the situation when the inferior paused as well. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@172869 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachTask.cpp
|
2e5a47762d33ca0eb4921f04fc3fd7d7b7824724 |
19-Jan-2013 |
Jason Molenda <jmolenda@apple.com> |
Add code to retreive the mach port # for each thread in the inferior application's mach port namespace in addition to the mach port # in examine-threads' own port namespace, and print it (when -v is used). git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@172867 91177308-0d34-0410-b5e6-96231b3b80d8
arwin-threads/examine-threads.c
|
7d96ecc2fe57d7d7289bed7fc633154a310979c7 |
18-Jan-2013 |
Jason Molenda <jmolenda@apple.com> |
<rdar://problem/12243932> Change RNBSocket from using lockdown's lockdown_secure_checkin() function to using lockdown's secure_lockdown_checkin() function. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@172775 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/RNBSocket.cpp
ebugserver/source/RNBSocket.h
|
95472646e1970236b46d1c583355adb1a8052798 |
17-Jan-2013 |
Jason Molenda <jmolenda@apple.com> |
Add one more bit of logging for armv7 watchpoint debugging. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@172702 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/arm/DNBArchImpl.cpp
|
245dc927c0fc10aa4d8dda2a43a8bf35ffff53f9 |
16-Jan-2013 |
Han Ming Ong <hanming@apple.com> |
<rdar://problem/13019628> Prevent profiling from working on older debugserver. Just a simple renaming since the caller is prepared to handle the ‘unimplemented’ answer. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@172583 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/DNB.cpp
ebugserver/source/DNB.h
ebugserver/source/MacOSX/MachProcess.cpp
ebugserver/source/MacOSX/MachProcess.h
ebugserver/source/RNBRemote.cpp
ebugserver/source/RNBRemote.h
|
1f1a683fe4fb3fa4d41368860b75e56bfdbdd239 |
15-Jan-2013 |
Jason Molenda <jmolenda@apple.com> |
Add a few other missing LOG_ types to set_logging() in RNBRemote.cpp; document some simple bourne shell to re-generate these from the DNBDefs.h header file in case this needs to be done again in the future. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@172494 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/RNBRemote.cpp
|
3de69868b5ed5a2323e2485fff763b4d6e464216 |
14-Jan-2013 |
Jim Ingham <jingham@apple.com> |
Fix a logic error in the condition for a warning log message. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@172442 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/i386/DNBArchImplI386.cpp
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.cpp
|
8ec8d64110a5879e4e544dc09e9849498fecb044 |
12-Jan-2013 |
Jason Molenda <jmolenda@apple.com> |
Recognize LOG_WATCHPOINTS in the QSetLogging gdb-remote packet. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@172311 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/RNBRemote.cpp
|
0f638a4acf13a047d3c77e4bdcb802eb2a64665c |
10-Jan-2013 |
Han Ming Ong <hanming@apple.com> |
Use a more unique end delimiter. In any case, the thread names are hexified when returning to lldb. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@172021 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachTask.cpp
|
11ad6233d5b0322b48bde86442b1ee37fcaa1ece |
09-Jan-2013 |
Han Ming Ong <hanming@apple.com> |
<rdar://problem/12975489> 1. Using mach port number, just like when inferior is paused. 2. Use key:value pair of thread used time instead of comma separated notation. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@172012 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachTask.cpp
|
8492942e52539a5c4fb4c06a865ad8479d496340 |
05-Jan-2013 |
Jason Molenda <jmolenda@apple.com> |
<rdar://problem/12602653> Add unconditional logging messages to every place in debugserver where we send a SIGKILL signal or do a ptrace PT_KILL call to terminate the inferior process. When the debuggee is silently killed off, the console logging from debugserver can disambiguate whether debugserver killed off the process because it failed to completely set it up, becuase it was told to (via the "k" packet), or if some external daemon killed it. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@171606 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/DNB.cpp
ebugserver/source/MacOSX/MachProcess.cpp
|
aa93c931a4c1275b2fecec23ef34f231afda4773 |
21-Dec-2012 |
Jim Ingham <jingham@apple.com> |
Added an SBAPI to get the PythonPath (if the Host knows how to do that). And a -P option to the Driver to print it out. Changed dotest.py to use that to find the PythonPath it should use given the lldb binary it was told to run. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@170932 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
river/Driver.h
|
278f16e1dd4097bf3dd12b0f63f1fac0f11c4006 |
21-Dec-2012 |
Andrew Kaylor <andrew.kaylor@intel.com> |
Adding eStopReasonThreadExiting and fixing the handling of this state on Linux. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@170800 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
fe555673aebe745e5c35412969639ae348ce50d4 |
19-Dec-2012 |
Jason Molenda <jmolenda@apple.com> |
<rdar://problem/11961650> Update the debugserver "qProcessInfo" implementation to return the cpu type, cpu subtype, OS and vendor information just like qHostInfo does so lldb can create an ArchSpec based on the returned values. Add a new GetProcessArchitecture to GDBRemoteCommunicationClient akin to GetHostArchitecture. If the qProcessInfo packet is supported, GetProcessArchitecture will return the cpu type / subtype of the process -- e.g. a 32-bit user process running on a 64-bit x86_64 Mac system. Have ProcessGDBRemote set the Target's architecture based on the GetProcessArchitecture when we've completed an attach/launch/connect. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@170491 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/RNBRemote.cpp
|
2b67961c05a0296e7773875a7a6f2cb82fa5c575 |
18-Dec-2012 |
Jason Molenda <jmolenda@apple.com> |
Add a new qProcessInfo packet to debugserver. This can be used by lldb to ask for information about the process debugserver is attached to/launched. Particularly useful on a 64-bit x86 Mac system which can run 32-bit or 64-bit user-land processes. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@170409 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/RNBRemote.cpp
ebugserver/source/RNBRemote.h
|
e31e269a2cfceef90e4ef9e9c2f593a514efd764 |
17-Dec-2012 |
Han Ming Ong <hanming@apple.com> |
<rdar://problem/12890948> Send thread name using hex encoding. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@170370 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachTask.cpp
|
09eb052b6340c2e0b7062cbba72f71db960c61ca |
17-Dec-2012 |
Daniel Malea <daniel.malea@intel.com> |
Initialize m_done to false in Driver constructor to avoid premature exit bug (spotted on Linux) Patch by Chia-Hung Duan! git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@170348 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
72b131f52b7aec3e746b3be65ae730a4f85f29cd |
17-Dec-2012 |
Han Ming Ong <hanming@apple.com> |
<rdar://problem/12890901> Capturing thread name during profiling. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@170312 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachTask.cpp
|
c8aa9c9b5b9c584daa94cba7592bebea6ce6dfab |
14-Dec-2012 |
Enrico Granata <egranata@apple.com> |
Trigger the display of error and output in sourced commands from the result object's status instead of the presence of text in the error stream This should be more consistent with the notion of command success/failure and avoids spewing warnings that the user might not care about There will need to be an option to specify the level of verbosity desired (never show anything, only show failures, errors and warning, everything) git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@170167 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
1581d7d8a976cc63ce44789c07b1b35a80786dfb |
13-Dec-2012 |
Enrico Granata <egranata@apple.com> |
<rdar://problem/12700464> Fixing an issue where errors in command files sourced as arguments to command-line lldb (e.g. ./lldb -s foo.cmd) would not be shown to the user git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@170146 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
2e2812388b75d3c62c9518cc1a6550ce29325aa6 |
11-Dec-2012 |
Jim Ingham <jingham@apple.com> |
Broadcast an event when the selected thread is changed. <rdar://problem/10976636> git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@169810 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
b9db9d5bb01963774f28540dbe2c5a11f586ff29 |
07-Dec-2012 |
Daniel Malea <daniel.malea@intel.com> |
Fix a few more clang (3.2) warnings on Linux: - remove unused members - add NO_PEDANTIC to selected Makefiles - fix return values (removed NULL as needed) - disable warning about four-char-constants - remove unneeded const from operator*() declaration - add missing lambda function return types - fix printf() with no format string - change sizeof to use a type name instead of variable name - fix Linux ProcessMonitor.cpp to be 32/64 bit friendly - disable warnings emitted by swig-generated C++ code Patch by Matt Kopec! git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@169645 91177308-0d34-0410-b5e6-96231b3b80d8
river/IOChannel.cpp
river/Makefile
|
d35b7b3bfd21f4fd6b048693563eef1b772ae197 |
07-Dec-2012 |
Daniel Malea <daniel.malea@intel.com> |
More Linux warnings fixes (remove default labels as needed): - as per http://llvm.org/docs/CodingStandards.html#don-t-use-default-labels-in-fully-covered-switches-over-enumerations Patch by Matt Kopec! git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@169633 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
d891f9b872103235cfd2ed452c6f14a4394d9b3a |
05-Dec-2012 |
Daniel Malea <daniel.malea@intel.com> |
Fix Linux build warnings due to redefinition of macros: - add new header lldb-python.h to be included before other system headers - short term fix (eventually python dependencies must be cleaned up) Patch by Matt Kopec! git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@169341 91177308-0d34-0410-b5e6-96231b3b80d8
ldb-platform/lldb-platform.cpp
|
0bce9a22354df3f00e68ffd912119a0741753b7f |
05-Dec-2012 |
Greg Clayton <gclayton@apple.com> |
<rdar://problem/12649160> Added the ability to debug through your process exec'ing itself to the same architecture. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@169340 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
965b4040be3970331264fed69bf822296e08c5e1 |
04-Dec-2012 |
Greg Clayton <gclayton@apple.com> |
Get rid of a warning where functions in DNB.h were extern "C" when they don't need to be anymore. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@169202 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/DNB.h
|
6475c42148a8ea1ca86e5db465db7eca742d897d |
04-Dec-2012 |
Greg Clayton <gclayton@apple.com> |
<rdar://problem/12798131> Cleaned up the option parsing code to always pass around the short options as integers. Previously we cast this down to "char" and lost some information. I recently added an assert that would detect duplicate short character options which was firing during the test suite. This fix does the following: - make sure all short options are treated as "int" - make sure that short options can be non-printable values when a short option is not required or when an option group is mixed into many commands and a short option is not desired - fix the help printing to "do the right thing" in all cases. Previously if there were duplicate short character options, it would just not emit help for the duplicates - fix option parsing when there are duplicates to parse options correctly. Previously the option parsing, when done for an OptionGroup, would just start parsing options incorrectly by omitting table entries and it would end up setting the wrong option value git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@169189 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
253a86bd127c8d15387ea058eb8a794b6343393a |
01-Dec-2012 |
Jason Molenda <jmolenda@apple.com> |
Bump lldb version num to lldb-178, debugserver version to debugserver-198. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@169081 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
b1087a27f7babc43f332c9d49ac4554892133a41 |
30-Nov-2012 |
Jim Ingham <jingham@apple.com> |
Save and restore terminal state when lldb is suspended with SIGTSTP and resumed with SIGCONT. Readline & gdb have a bunch of code to handle older UNIX'es with other job control mechanisms. I didn't try to replicate that. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@169032 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
f14269add7f6fb84da7ccfd866f8e9f7e81068be |
29-Nov-2012 |
Han Ming Ong <hanming@apple.com> |
<rdar://problem/12780259> Prevent async and sync calls to get profile data from stomping on each other. At the same time, don't use '$' as end delimiter per chunk of profile data. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@168948 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/DNB.cpp
ebugserver/source/DNB.h
ebugserver/source/MacOSX/MachProcess.cpp
ebugserver/source/MacOSX/MachProcess.h
ebugserver/source/MacOSX/MachTask.cpp
ebugserver/source/MacOSX/MachTask.h
ebugserver/source/RNBRemote.cpp
|
5f35a4be95aed0e5b2cb36f7d785bcbfc67284ae |
29-Nov-2012 |
Daniel Malea <daniel.malea@intel.com> |
Resolve printf formatting warnings on Linux: - use macros from inttypes.h for format strings instead of OS-specific types Patch from Matt Kopec! git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@168945 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
53a1c263acc355f9d6c1b96116a44f9e7c50065c |
29-Nov-2012 |
Jason Molenda <jmolenda@apple.com> |
Correct the label for the com.apple.debugserver.posix plist. <rdar://problem/12769073> git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@168834 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/com.apple.debugserver.posix.plist
|
81275611558247789e9097e09091300abb9f45ff |
28-Nov-2012 |
Sean Callanan <scallanan@apple.com> |
Fixed the debugserver Xcode project to allow DebugClang builds of LLDB to build a properly codesigned debugserver. I did this by adding a DebugClang configuration to debugserver that's just a clone of the Debug configuration. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@168746 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
e45c499d61f372cc93abdacf3dbfa9466c412066 |
27-Nov-2012 |
Han Ming Ong <hanming@apple.com> |
<rdar://problem/12759744> Provide physical memory distribution as part of profile data Make use of unix system calls to provide physical memory usage profile data. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@168720 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachTask.cpp
ebugserver/source/MacOSX/MachVMMemory.cpp
ebugserver/source/MacOSX/MachVMMemory.h
|
559cf6e8b52b940f5f4362b32d628838d6301e2e |
17-Nov-2012 |
Jason Molenda <jmolenda@apple.com> |
Han Ming's commit in r168228 had a bunch of 4-space tabs in the source files. Expand to spaces. No content changes, just whitespace. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@168238 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachProcess.cpp
ebugserver/source/MacOSX/MachTask.cpp
ebugserver/source/MacOSX/MachVMMemory.cpp
|
2529aa356e8cf9c1395da46f66ea2518dfa1982d |
17-Nov-2012 |
Han Ming Ong <hanming@apple.com> |
Follow up on <rdar://12720514>. Removed commented out code. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@168232 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/DNB.cpp
|
fb9cee64303d36d6fe5d87e63dd8701d1ddb70a9 |
17-Nov-2012 |
Han Ming Ong <hanming@apple.com> |
<rdar://problem/12720514> Sub-TLF: Provide service to profile the inferior This allows client to query profiling states on the inferior. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@168228 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/DNB.cpp
ebugserver/source/DNB.h
ebugserver/source/DNBDefs.h
ebugserver/source/MacOSX/MachProcess.cpp
ebugserver/source/MacOSX/MachProcess.h
ebugserver/source/MacOSX/MachTask.cpp
ebugserver/source/MacOSX/MachTask.h
ebugserver/source/MacOSX/MachVMMemory.cpp
ebugserver/source/MacOSX/MachVMMemory.h
ebugserver/source/RNBContext.cpp
ebugserver/source/RNBContext.h
ebugserver/source/RNBRemote.cpp
ebugserver/source/RNBRemote.h
ebugserver/source/debugserver.cpp
|
4d43ac7deacfe9e8bafd3579b72b60b34b1205cd |
08-Nov-2012 |
Greg Clayton <gclayton@apple.com> |
Added a posix_spawn based launchd plist for always using posix_spawn to launch programs. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@167563 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
ebugserver/source/com.apple.debugserver.posix.plist
|
d77371fe8083d697edc4f9ed7d039ed7b47b88a6 |
07-Nov-2012 |
Greg Clayton <gclayton@apple.com> |
<rdar://problem/12647273> Added the ability to get the full process list when using the --applist option in debugserver. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@167502 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/DNB.cpp
ebugserver/source/RNBServices.cpp
|
44b879f0040a5c0dbac1798111fc2eb596621ae8 |
02-Nov-2012 |
Sean Callanan <scallanan@apple.com> |
Switched debugserver to use C++11/libc++. <rdar://problem/12624679> git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@167303 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
3646e6812b42737c578b99a57f686ae9de279cce |
01-Nov-2012 |
Jason Molenda <jmolenda@apple.com> |
Fix an error message in debugserver so it doesn't print "Unable to launch process (null)" because we changed argv while doing argument parsing. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@167202 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/debugserver.cpp
|
c7d505b6d97cd5fb12022d7b500b22a5f8cc1800 |
01-Nov-2012 |
Jim Ingham <jingham@apple.com> |
Switch from using KERN_PROCARGS2 to get the path to the executed process to proc_pidpath. The former was flakey, and the whole point of libproc is to protect us from potential flakiness at that level... <rdar://problem/12594781> git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@167194 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/DNB.cpp
|
085c78bc26e3b798bfac32132d9bd6d75bb325b1 |
01-Nov-2012 |
Greg Clayton <gclayton@apple.com> |
Added the plists to the debugserver project and fixed the labels for the new plists. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@167183 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
ebugserver/source/com.apple.debugserver.applist.internal.plist
ebugserver/source/com.apple.debugserver.internal.plist
|
bfeaf57ad902b89a51a743f23cf5d4d02c13d93b |
01-Nov-2012 |
Greg Clayton <gclayton@apple.com> |
More launchd style plists. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@167182 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/com.apple.debugserver.applist.internal.plist
ebugserver/source/com.apple.debugserver.internal.plist
|
a5c92b6c0af7b68ae999d9efd87a060255aa7a37 |
31-Oct-2012 |
Greg Clayton <gclayton@apple.com> |
Resolve any bundle paths we are given when the specified executable is a bundle. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@167175 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/DNB.cpp
ebugserver/source/MacOSX/CFBundle.cpp
ebugserver/source/MacOSX/CFBundle.h
|
7b771d2bc07469dfad2828cfb0bbd21713304810 |
24-Oct-2012 |
Jason Molenda <jmolenda@apple.com> |
eArgTypePath was removed in r166533; change -c to expect eArgTypeFilename. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@166542 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
b8fda50a3e97699af76a406f03d139ee1bd94d01 |
16-Oct-2012 |
Enrico Granata <egranata@apple.com> |
Removing the two extra GetXSize(bool) calls since we do not desire to support them long-term git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@166060 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
c2bc7944f7c2f10114426f447259a35acb0b1e18 |
16-Oct-2012 |
Enrico Granata <egranata@apple.com> |
<rdar://problem/12446320> Fixing an issue with our Driver where setting an immediate output would not cause suppression of the final printout. This allows effective output redirection for Python commands git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@166058 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
river/IOChannel.cpp
|
44aa393ca4cf5c5ebad4cf5e9f619584ae7bdf7f |
13-Oct-2012 |
Greg Clayton <gclayton@apple.com> |
Provide an SSL context ref in case SLL is needed for communication. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@165856 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/RNBSocket.cpp
|
d9899e0ea327e5a57b7bb8b0f814d695e86f1082 |
12-Oct-2012 |
Greg Clayton <gclayton@apple.com> |
<rdar://problem/12042500> Fixed an issue where we would try to launch an application twice and the second failure would cover up the first. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@165756 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachProcess.cpp
|
0bfb4b3724f417a6fbee5c2bbfd55879005e6d4c |
12-Oct-2012 |
Greg Clayton <gclayton@apple.com> |
Fix build warnings. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@165755 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/arm/DNBArchImpl.cpp
|
94a5d0de4433dce556db59758f3d6124eb0e1a2a |
10-Oct-2012 |
Jim Ingham <jingham@apple.com> |
Change the Thread constructor over to take a Process& rather than a ProcessSP. We can't create Threads with a NULL ProcessSP, so it makes no sense to use the SP. Then make the Thread a Broadcaster, and get it to broadcast when the selected frame is changed (but only from the Command Line) and when Thread::ReturnFromFrame changes the stack. Made the Driver use this notification to print the new thread status rather than doing it in the command. Fixed a few places where people were setting their broadcaster class by hand rather than using the static broadcaster class call. <rdar://problem/12383087> git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@165640 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
river/Driver.h
|
31f175eacd5b7bd82694726c22464d6e4a84d1d5 |
28-Sep-2012 |
Jason Molenda <jmolenda@apple.com> |
Fix the extra space char being emitted in this message when breakpoints resolve - 1 location added to breakpoint 2 git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@164810 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
f2ec364d52bff635e9043c932382a99f72cf7778 |
21-Sep-2012 |
Greg Clayton <gclayton@apple.com> |
Re-adding this previously removed file. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@164331 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/scripts/diagnose-termination.d
|
84e46f1b5133939199e0d80c2a614fd52f7b5574 |
21-Sep-2012 |
Greg Clayton <gclayton@apple.com> |
This file is causing problems. I am going to remove it and try re-adding it. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@164328 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/scripts/diagnose-termination.d
|
b0d2027e5f3779fb2b62c690fbe4c00f3866a49a |
20-Sep-2012 |
Jason Molenda <jmolenda@apple.com> |
Bump to lldb-168, debugserver-193. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@164291 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
e93725bec81a4433756b2acfa3adc7223bc51a9a |
18-Sep-2012 |
Greg Clayton <gclayton@apple.com> |
<rdar://problem/12219840> Don't leak mach ports when calling "mach_thread_self()". git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@164152 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/DNBLog.cpp
|
851e30ec6a1b1d2c154bb7d69ed0d05b5fd14705 |
18-Sep-2012 |
Greg Clayton <gclayton@apple.com> |
Stop using the "%z" size_t modifier and cast all size_t values to uint64_t. Some platforms don't support this modification. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@164148 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/DNB.cpp
ebugserver/source/DNBBreakpoint.cpp
ebugserver/source/MacOSX/MachException.cpp
ebugserver/source/MacOSX/MachProcess.cpp
ebugserver/source/MacOSX/MachTask.cpp
ebugserver/source/MacOSX/arm/DNBArchImpl.cpp
ebugserver/source/MacOSX/i386/DNBArchImplI386.cpp
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.cpp
ebugserver/source/RNBRemote.cpp
ebugserver/source/RNBSocket.cpp
ebugserver/source/debugserver.cpp
|
f99355834bee84e48e2b6205ed13d307faa74405 |
11-Sep-2012 |
Filipe Cabecinhas <me@filcab.net> |
Some more typing-related fixes. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@163641 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
bb1af9ce3e25eae9916f85cb9a0c82e291c20bb4 |
11-Sep-2012 |
Greg Clayton <gclayton@apple.com> |
<rdar://problem/11935492> Fixed an issue where if we call "Process::Destroy()" and the process is running, if we try to stop it and get "exited" back as the stop reason, we will still deliver the exited event. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@163591 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/RNBRemote.cpp
|
1a7b4daa06a77315fe62a3d345474bf8a02cc230 |
11-Sep-2012 |
Sean Callanan <scallanan@apple.com> |
Fixed a bug where the LLDB_VERSION wasn't properly truncated during install-headers. <rdar://problem/12268130> git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@163559 91177308-0d34-0410-b5e6-96231b3b80d8
nstall-headers/Makefile
|
002ce8a7745412add736b5b21ab2c8f53264b5fc |
17-Aug-2012 |
Sean Callanan <scallanan@apple.com> |
Committed a simple dtrace script that tracks process termination, which can be useful to track debugserver's delivery of signals. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@162104 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/scripts/diagnose-termination.d
|
6c061beb3f9b60380b9638a4eacb3bc46ad38fc5 |
16-Aug-2012 |
Johnny Chen <johnny.chen@apple.com> |
rdar://problem/12096295 Add an lldb command line option to specify a core file: --core/-c. For consistency, change the "target create" command to also use --core. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@161993 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
river/Driver.h
|
e66245726b779d4561dac230d5375c215d24d2c5 |
07-Aug-2012 |
Sean Callanan <scallanan@apple.com> |
Updating Xcode project version numbers for lldb-165 and debugserver-192 git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@161374 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
6f72da885177d89c281db492168298a6698bdcc7 |
02-Aug-2012 |
Sean Callanan <scallanan@apple.com> |
Updating Xcode project version numbers for lldb-164 and debugserver-191 git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@161209 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
5d90ade8e8e0d776fe8e1b9e88fc1c86d02e8e4e |
28-Jul-2012 |
Jim Ingham <jingham@apple.com> |
Added an lldb_private & equivalent SB API to send an AsyncInterrupt to the event loop. Convert from calling Halt in the lldb Driver.cpp's input reader's sigint handler to sending this AsyncInterrupt so it can be handled in the event loop. If you are attaching and get an async interrupt, abort the attach attempt. Also remember to destroy the process if get interrupted while attaching. Getting this to work also required handing the eBroadcastBitInterrupt in a few more places in Process WaitForEvent & friends. <rdar://problem/10792425> git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@160903 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
river/IOChannel.cpp
|
a0b14502f717b342112c0264aa99901b754b24c6 |
26-Jul-2012 |
Sean Callanan <scallanan@apple.com> |
Updating Xcode project version numbers for lldb-163 and debugserver-190 git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@160770 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
73f6b49b568f48755bb5058a3db679c3b9093682 |
25-Jul-2012 |
Jim Ingham <jingham@apple.com> |
Add a call to "sync" a thread state before checkpointing registers in preparation for calling functions. This is necessary on Mac OS X, since bad things can happen if you set the registers of a thread that's sitting in a kernel trap. <rdar://problem/11145013> git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@160756 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/DNB.cpp
ebugserver/source/DNB.h
ebugserver/source/MacOSX/MachProcess.cpp
ebugserver/source/MacOSX/MachProcess.h
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.cpp
ebugserver/source/RNBRemote.cpp
ebugserver/source/RNBRemote.h
|
56b9f80df238c8be09d2b7441e9e71f7828bbd3a |
24-Jul-2012 |
Jim Ingham <jingham@apple.com> |
Use a more efficient API to tell if a process belongs to springboard or not. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@160655 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachProcess.cpp
ebugserver/source/RNBServices.cpp
|
3a458eb1e413d39546b664813bba9f9ac292357e |
20-Jul-2012 |
Jim Ingham <jingham@apple.com> |
Add "vAttachOrWait" to debugserver, so you can implement "attach to the process if it exists OR wait for it" without race conditions. Use that in lldb. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@160578 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/DNB.cpp
ebugserver/source/DNB.h
ebugserver/source/RNBRemote.cpp
ebugserver/source/RNBRemote.h
ebugserver/source/debugserver.cpp
|
ef898c512a5e26f2d1dd91789214662f76623970 |
19-Jul-2012 |
Greg Clayton <gclayton@apple.com> |
<rdar://problem/11908082> Allow debugserver to match process names that are longer than MAXCOMLEN (16) characters. We do this by digging up argv[0] from another sysctl if the process name supplied is longer than 16 characters. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@160487 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/DNB.cpp
|
24757128b30c5e47dc402f2b5c5ac1308142285a |
17-Jul-2012 |
Greg Clayton <gclayton@apple.com> |
Update the project and schemes to the Xcode recommended settings. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@160391 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/xcshareddata/xcschemes/debugserver.xcscheme
|
4a379b1194f3e6b308cd6e80b45d6ca5dd0aafd7 |
17-Jul-2012 |
Greg Clayton <gclayton@apple.com> |
Ran the static analyzer on the codebase and found a few things. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@160338 91177308-0d34-0410-b5e6-96231b3b80d8
arwin-debug/darwin-debug.cpp
ebugserver/source/DNB.cpp
ebugserver/source/MacOSX/MachException.cpp
ebugserver/source/MacOSX/MachProcess.cpp
ebugserver/source/MacOSX/MachThreadList.cpp
ebugserver/source/RNBRemote.cpp
ebugserver/source/debugserver.cpp
river/Driver.cpp
|
add4b95f40791afddb360ddd4e431c96432ac6f6 |
16-Jul-2012 |
Jim Ingham <jingham@apple.com> |
Fix an off by one error when handling a packet where our read buffer size truncates the first chunk of the packet between the two chars representing the checksum. <rdar://problem/11882074> git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@160310 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/RNBRemote.cpp
|
e9d2ca1488fea27f845a7c91c6103d34a3252bd3 |
14-Jul-2012 |
Jason Molenda <jmolenda@apple.com> |
Bump to lldb-162 / debugserver-189. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@160212 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
7de2a3b03f37987c67f142ce328cc2484c831468 |
14-Jul-2012 |
Enrico Granata <egranata@apple.com> |
<rdar://problem/11782789> Changes to the watchpoint implementation on ARM so that we single-step before stopping at the WP. This is necessary because on ARM the WP triggers before the opcode is actually executed, so we would be unable to continue since we would keep hitting the WP. We work around this by disabling the WP, single stepping and then putting the WP back in place. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@160199 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/RNBRemote.cpp
|
352f3cdac619c967624ff678c67758b1c947dcfd |
13-Jul-2012 |
Jim Ingham <jingham@apple.com> |
Unify how we get host version on Mac OS X & iOS. Also remove our dependency on UIKit & AppKit. Cleaned up the project files a bit. <rdar://problem/11814498> git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@160147 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
2a4e9af22db482a276a109af57b23a95d0f38ddf |
12-Jul-2012 |
Sean Callanan <scallanan@apple.com> |
Added an editline fix to make the delete key act as expected on Mac OS X. <rdar://problem/11813365> git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@160091 91177308-0d34-0410-b5e6-96231b3b80d8
river/IOChannel.cpp
|
1f6d04bda379077255ea246a83955753889f42ab |
06-Jul-2012 |
Jason Molenda <jmolenda@apple.com> |
Bump versions to lldb-161, debugserver-188. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@159798 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
2530d95bc55d78f8e5f08fa0371e91b6f88ccdd5 |
29-Jun-2012 |
Greg Clayton <gclayton@apple.com> |
Spelling fixes. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@159466 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/ChangeLog
ebugserver/source/RNBRemote.cpp
|
2f676aa67e4f78521720289a42b33afc45e6aad2 |
28-Jun-2012 |
Enrico Granata <egranata@apple.com> |
<rdar://problem/11679380> Make sure we do not fallback to software stepping when hardware stepping should work but fails to get enabled. Also removing dead code paths git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@159322 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/arm/DNBArchImpl.cpp
|
403648d706a1aff2c3fb150810f8824f3712e6fe |
22-Jun-2012 |
Filipe Cabecinhas <me@filcab.net> |
DNBLogThreadedIf already inserts a newline git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@158995 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.cpp
|
d1e0829de2ab90cb34d13b2776d3be3977355e5a |
19-Jun-2012 |
Johnny Chen <johnny.chen@apple.com> |
rdar://problem/11649610 lldb confused by single quote in executable path Also add a test case. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@158693 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
33a9f647ab5122bfdc7c8cf358fba07b2cf7dedf |
11-Jun-2012 |
Johnny Chen <johnny.chen@apple.com> |
rdar://problem/11390100 debugserver needs to be able to posix_spawn debugging apps that have ".app" in their path that aren't bundles git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@158327 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachProcess.cpp
|
4d35f889ec869f86e950059470e90c99857ce477 |
02-Jun-2012 |
Johnny Chen <johnny.chen@apple.com> |
Properly initialize the member fields used for hardware watchpoint transaction management. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@157878 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/i386/DNBArchImplI386.h
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.h
|
5693e875ac7ac8d6ce1614da40e0b56f3f58716c |
02-Jun-2012 |
Johnny Chen <johnny.chen@apple.com> |
rdar://problem/11320188 Designate MachThreadList as a transaction coordinator when doing Enable/DisableHardwareWatchpoint on the list of threads. In case the operation (iterating on the threads and doing enable/disable) fails in the middle, we rollback the already enabled/disabled threads to their checkpointed states. When all the threads succeed in enable/disable, we ask each thread to finsih the transaction and commit the change of the debug state. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@157858 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/DNBArch.h
ebugserver/source/MacOSX/MachThread.cpp
ebugserver/source/MacOSX/MachThread.h
ebugserver/source/MacOSX/MachThreadList.cpp
ebugserver/source/MacOSX/i386/DNBArchImplI386.cpp
ebugserver/source/MacOSX/i386/DNBArchImplI386.h
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.cpp
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.h
|
0d99969ff26d108ec04f8830913e41e7f151db56 |
01-Jun-2012 |
Jim Ingham <jingham@apple.com> |
If the Driver's input reader gets an Interrupt and the current command line is empty, then treat that interrupt as an instruction to Stop the process of the currently selected target. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@157790 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
bab9b647fad841cf7c301f0bd8b1da3c0e72bfa2 |
01-Jun-2012 |
Jim Ingham <jingham@apple.com> |
Add an API to determine whether there are any characters on the current input line. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@157789 91177308-0d34-0410-b5e6-96231b3b80d8
river/IOChannel.cpp
river/IOChannel.h
|
b51d99b70abdd53562f2cae84f627087721f2f55 |
01-Jun-2012 |
Johnny Chen <johnny.chen@apple.com> |
For hardware watchpoint enable/disable, in case the kernel call to set the revised debug state fails, we need to recover the local cache to the previous known state. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@157778 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/i386/DNBArchImplI386.cpp
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.cpp
|
1e1a6ca3ddeb932fbc48c86d4fa4ba974363ea85 |
30-May-2012 |
Filipe Cabecinhas <me@filcab.net> |
Make dbgnub-config.pl work with multiline env vars. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@157664 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/scripts/dbgnub-config.pl
|
9ea7d8750030914f13dcdfe167542b8047de51a4 |
29-May-2012 |
Filipe Cabecinhas <me@filcab.net> |
Substitute LLVMLibsOptions for LD.Flags so we can find the mentioned libs git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@157616 91177308-0d34-0410-b5e6-96231b3b80d8
river/Makefile
ldb-platform/Makefile
|
7cbdcfb0cefcfd877b507ff2d83e51a1bde3fcc7 |
23-May-2012 |
Johnny Chen <johnny.chen@apple.com> |
Add the capability to display the number of supported hardware watchpoints to the "watchpoint list" command. Add default Process::GetWatchpointSupportInfo() impl which returns an error of "not supported". Add "qWatchpointSupportInfo" packet to the gdb communication layer to support this, and modify TestWatchpointCommands.py to test it. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@157345 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/DNB.cpp
ebugserver/source/DNB.h
ebugserver/source/MacOSX/MachProcess.cpp
ebugserver/source/MacOSX/MachProcess.h
ebugserver/source/MacOSX/MachThread.cpp
ebugserver/source/MacOSX/MachThread.h
ebugserver/source/MacOSX/MachThreadList.cpp
ebugserver/source/MacOSX/MachThreadList.h
ebugserver/source/RNBRemote.cpp
ebugserver/source/RNBRemote.h
|
5d44dcc0f5558db037d13ebf4e772c9a8fb673cf |
17-May-2012 |
Johnny Chen <johnny.chen@apple.com> |
Fix a typo. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@156952 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
ad4be9ab3ed547571964955df5da3a8b639f3bd1 |
16-May-2012 |
Jason Molenda <jmolenda@apple.com> |
Bump debugserver version # to 187. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@156888 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
70eddebd1c5868a87a3ba9ddf717fc964a257f66 |
16-May-2012 |
Jason Molenda <jmolenda@apple.com> |
Change lockdown API use in RNBSocket::ConnectToService. <rdar://problem/10800927> git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@156883 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/RNBSocket.cpp
|
5a4e5afa5acc36a0b8ff90fe4c704cd4c1e49d1b |
11-May-2012 |
Greg Clayton <gclayton@apple.com> |
Don't intercept the quit command and override what is was doing. This was causing the "lldb" command line to deadlock when the quit command was executed sometimes. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@156595 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
492b1232eb525aa9ef74159321f4da9a449a818a |
10-May-2012 |
Johnny Chen <johnny.chen@apple.com> |
Sanity check the return value from SBSCopyApplicationDisplayIdentifiers() before calling CFArrayGetCount() on it. rdar://problem/11331867 git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@156562 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/RNBServices.cpp
|
8ab2c22f22bd5ff09c98441f148406e0a890084e |
09-May-2012 |
Johnny Chen <johnny.chen@apple.com> |
Make ctrl-c terminate the current input line and start an empty line, instead of the previous content. rdar://problem/11412821 git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@156510 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
river/IOChannel.cpp
river/IOChannel.h
|
f92ddcc2fda5ca564acc37d2fecd4b577dfc2bde |
09-May-2012 |
Jim Ingham <jingham@apple.com> |
Print out a notification when the process of a target other than the currently selected target stops. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@156433 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
b170aee2daacc83e3d71c3e3acc9d56c89893a7b |
08-May-2012 |
Greg Clayton <gclayton@apple.com> |
<rdar://problem/11358639> Switch over to the "*-apple-macosx" for desktop and "*-apple-ios" for iOS triples. Also make the selection process for auto selecting platforms based off of an arch much better. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@156354 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/RNBRemote.cpp
|
3bbbdc3c3ca4d449e9033a6e8c1686b8b6ed0769 |
07-May-2012 |
Johnny Chen <johnny.chen@apple.com> |
Move the el_source() call after the section of code which sets up the default "ctrl-r" and "ctrl-w" bindings so that user-provided .editrc has a chance to override the lldb's default key bindings. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@156314 91177308-0d34-0410-b5e6-96231b3b80d8
river/IOChannel.cpp
|
abd370a4be26a5fc288ca090e80b12c1bc14ac8b |
05-May-2012 |
Johnny Chen <johnny.chen@apple.com> |
Jason Molenda convinced me that we should make ctrl-w on the command line bind to ed-delete-prev-word. If you have ctrl-w key binding specified with your .editrc file, it will be overridden with ed-delete-prev-word. :-) git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@156230 91177308-0d34-0410-b5e6-96231b3b80d8
river/IOChannel.cpp
|
88e3de205708f14431559072ca258899b5ac31cc |
03-May-2012 |
Jim Ingham <jingham@apple.com> |
Clean up the usage of "MasterPlan" status in ThreadPlans. Only user-initiated plans should be MasterPlans that want to stay on the plan stack. So make all plans NOT MasterPlans by default and then have the SB API's and the CommandObjectThread step commands set this explicitly. Also added a "clean up" phase to the Thread::ShouldStop so that if plans get stranded on the stack, we can remove them. This is done by adding an IsPlanStale method to the thread plans, and if the plan can know that it is no longer relevant, it returns true, and the plan and its sub-plans will get discarded. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@156101 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
c76486cc024511ab8e96baea752e98f49c2b1da4 |
26-Apr-2012 |
Jim Ingham <jingham@apple.com> |
Don't call SBDebugger::SetInternalVariable in the sigwinch_handler, since that takes locks and potentially does allocations. Just call SBDebugger::SetTerminalWidth on the driver's SBDebugger, which does the same job, but no locks. Also add the value checking to SetTerminalWidth you get with SetInternalVariable(..., "term-width", ...). rdar://problem/11310563 git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@155665 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
664b099488f9c10c6c44607bc574dc5e2b8b95ec |
26-Apr-2012 |
Greg Clayton <gclayton@apple.com> |
Patch from Filipe Cabecinhas. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@155641 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachTask.cpp
|
b7a22b2bea7904809acdc101b0dfa2100265e22a |
26-Apr-2012 |
Greg Clayton <gclayton@apple.com> |
Patch from Filipe Cabecinhas. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@155640 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/DNBRegisterInfo.cpp
|
dff3f44e3970930a30ea50025436cb7272366911 |
25-Apr-2012 |
Jim Ingham <jingham@apple.com> |
Suspend program threads before sending the SIGSTOP & resuming, so other threads won't get into trouble while we are waiting for the SIGSTOP. rdar://problem/11174834 git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@155560 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachProcess.cpp
ebugserver/source/MacOSX/MachProcess.h
|
a1f645e66c8e52ef287b9ab42f521eb57bcf217d |
10-Apr-2012 |
Greg Clayton <gclayton@apple.com> |
Added a new packet to our GDB remote protocol: QListThreadsInStopReply This GDB remote query command can enable added a "threads" key/value pair to all stop reply packets so that we always get a list of all threads in each stop reply packet. It increases performance if enabled (the reply to the "QListThreadsInStopReply" is "OK") by saving us from sending to command/reply pairs (the "qfThreadInfo" and "qsThreadInfo" packets), and also helps us keep the current process state up to date. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@154380 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/RNBRemote.cpp
ebugserver/source/RNBRemote.h
|
cfd89c466768262d23cba83898c5e4e9eca6593f |
04-Apr-2012 |
Greg Clayton <gclayton@apple.com> |
Fixed the C++11 #defines that wrap std::weak_ptr to actually use std::weak_ptr. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@154041 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/DNBDefs.h
|
51f1d21e5580c562d761e0cd8509a38d729d0845 |
01-Apr-2012 |
Sean Callanan <scallanan@apple.com> |
Updating Xcode project version numbers for lldb-137 and debugserver-186 git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@153823 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
48f9c71f83dc945ee7e92cf5d980b42c06ef849d |
29-Mar-2012 |
Greg Clayton <gclayton@apple.com> |
Missed a file in the last FreeBSD patch. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@153662 91177308-0d34-0410-b5e6-96231b3b80d8
ldb-platform/Makefile
|
27cf23214479177c83f115b4dbac92b2dba2b3b2 |
29-Mar-2012 |
Greg Clayton <gclayton@apple.com> |
FreeBSD patch that enabled the lldb-platform to be built from Viktor Kutuzov. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@153661 91177308-0d34-0410-b5e6-96231b3b80d8
akefile
ldb-platform/lldb-platform.cpp
|
1ea7838507f8ffbac9b20e22c4ab8b7f2424b09b |
29-Mar-2012 |
Sean Callanan <scallanan@apple.com> |
Updating Xcode project version numbers for lldb-136 and debugserver-185 git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@153630 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
b6cad8c39dc9dd440f0c215cf700ac2e0ea45a74 |
24-Mar-2012 |
Jason Molenda <jmolenda@apple.com> |
Bump version to debugserver-184, lldb-135. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@153374 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
a3f381919d3c86265b7707911cafa483da37780c |
24-Mar-2012 |
Jason Molenda <jmolenda@apple.com> |
Small tweak to list of arches to build debugserver for on arm. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@153371 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
0d4453c7eb2ac859969383799ecbd895e736e039 |
23-Mar-2012 |
Johnny Chen <johnny.chen@apple.com> |
Fix a typo. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@153301 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/arm/DNBArchImpl.cpp
|
9a725f0e1d0589254d5e96fa3516d56a30799950 |
23-Mar-2012 |
Johnny Chen <johnny.chen@apple.com> |
Make arm debugserver handle setting a watchpoint on, for example, (uint64_t)variable. We do this by delegating to two available Watchpoint Register Pairs (wvr, wcr). With each pair handling the 4 bytes of (uint64_t)variable. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@153300 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/arm/DNBArchImpl.cpp
ebugserver/source/MacOSX/arm/DNBArchImpl.h
|
b4a8ac1aaacbee4fd9a49952524e510dba2f9635 |
23-Mar-2012 |
Greg Clayton <gclayton@apple.com> |
Bumped Xcode project versions for lldb-134 and debugserver-183. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@153298 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
cf88842d06049af7dffa1b299964a3a573283cc4 |
22-Mar-2012 |
Johnny Chen <johnny.chen@apple.com> |
Previous check-ins allow to hit the arm hardware watchpoint, with a workaound to handle the issue that the inferior cannot execute past the watchpoint-triggering instruction. The solution is disable the watchpoint before resuming the inferior and make it hardware single step; when the inferior stops again due to single step, re-enable the watchpoint and disable the single step to make the inferior able to continue again without obstacle. rdar://problem/9667960 git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@153273 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/arm/DNBArchImpl.cpp
ebugserver/source/MacOSX/arm/DNBArchImpl.h
|
7d0356fdfa7ee04b39e84946fb0497f227cc894f |
22-Mar-2012 |
Johnny Chen <johnny.chen@apple.com> |
Fixed a bug with the r153228 check-in earlier today in that the cached watchpoint member variables were not reset appropriately. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@153239 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/arm/DNBArchImpl.cpp
ebugserver/source/MacOSX/arm/DNBArchImpl.h
|
33de0386250de1ded3dc2fdfb607970e52d83420 |
22-Mar-2012 |
Johnny Chen <johnny.chen@apple.com> |
WIP snapshot of hardware watchpoints for arm. A simple watchpoint has triggered. However, the debugserver cannot get past the instruction which triggered the watchpoint. So a workaround is in place for the time being which disables the triggered watchpoint before resuming. Lots of commented out printf's remain in the source which needs to be cleaned up. WIP rdar://problem/9667960 git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@153228 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/arm/DNBArchImpl.cpp
ebugserver/source/MacOSX/arm/DNBArchImpl.h
|
72a06db41c0f1a98d109565535bb70c6c215f454 |
17-Mar-2012 |
Jason Molenda <jmolenda@apple.com> |
Bump to lldb-133. Remove unused entitlements plist from debugserver. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@152973 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/resources/lldb-debugserver-entitlements.plist
|
13555cccfcb4896a3d07cfcb2f7007816d03c05e |
16-Mar-2012 |
Johnny Chen <johnny.chen@apple.com> |
Fix FRAMEWORK_SEARCH_PATHS for iOS builds. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@152948 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
63e9d4fc63c1be6f8962b427dd6f87f193ba778f |
16-Mar-2012 |
Sean Callanan <scallanan@apple.com> |
Updating Xcode project version numbers for lldb-132 and debugserver-182 git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@152901 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
f29cd7fc05a3ff1d55dc9e1431ac9e18456b11af |
14-Mar-2012 |
Sean Callanan <scallanan@apple.com> |
Updating Xcode project version numbers for lldb-131 and debugserver-181 git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@152726 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
598df88bd6fc33c6fb330bc859bdc277795501f3 |
14-Mar-2012 |
Greg Clayton <gclayton@apple.com> |
<rdar://problem/10434005> Prepare LLDB to be built with C++11 by hiding all accesses to std::tr1 behind macros that allows us to easily compile for either C++. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@152698 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
ebugserver/source/DNB.cpp
ebugserver/source/DNBDefs.h
ebugserver/source/MacOSX/MachThread.h
ebugserver/source/RNBDefs.h
|
599c084406b97ebc0b9287f70df873199947a90f |
14-Mar-2012 |
Jason Molenda <jmolenda@apple.com> |
bump to debugserver-180 git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@152687 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
abd9d7af3b8fe413aa57eb0be4362f2fff2cb0f1 |
14-Mar-2012 |
Jason Molenda <jmolenda@apple.com> |
On iOS builds, install debugserver in /Developer/usr/bin. Also add a copy files phase for -target ios that installs the debugserver launch plists. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@152680 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
1ffff0f8f7b66d457694e1111578e6f0c0a50614 |
13-Mar-2012 |
Jason Molenda <jmolenda@apple.com> |
Send an "OK" response to the "D" (detach) packet. v. http://sourceware.org/gdb/current/onlinedocs/gdb/Packets.html#Packets the detach packet is supposed to send a reply. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@152671 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/RNBRemote.cpp
|
b22013e40a452de6575eabcfad28e61b12b98f1a |
13-Mar-2012 |
Greg Clayton <gclayton@apple.com> |
Bumped Xcode project versions for lldb-129 and debugserver-179. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@152606 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
f46c5ef58b9bf85530fcafc5478adf288e28d4ad |
13-Mar-2012 |
Jason Molenda <jmolenda@apple.com> |
version bump to 178 git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@152602 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
3a245a5a7dd5db07433e36f7a9b487b6d5dc54d9 |
13-Mar-2012 |
Jason Molenda <jmolenda@apple.com> |
Don't SKIP_INSTALL for sdk==iOS, install in to /usr/local/bin for now. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@152601 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
bc41ff71ae6760ce476ce04def039d88c28b4562 |
13-Mar-2012 |
Jason Molenda <jmolenda@apple.com> |
Pull in another plist from the old debugserver project. Switch default compiler to clang. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@152600 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
ebugserver/source/com.apple.debugserver-secure.plist
|
053a922033a915af17844296c95c3e77db9ed68b |
12-Mar-2012 |
Greg Clayton <gclayton@apple.com> |
<rdar://problem/11030692> SBProcess::PutSTDIN() was not working for a few builds on darwin when using debugserver. This is now fixed. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@152569 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachProcess.cpp
|
dd21d3cf2bcb93df70e4e77e053cebec63babc4f |
10-Mar-2012 |
Jason Molenda <jmolenda@apple.com> |
Bump debugserver version to 177. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@152464 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
daf37d2261b10731fcdffd939de5055bb120fabf |
10-Mar-2012 |
Jason Molenda <jmolenda@apple.com> |
Re-enable the use of the ARMDisassembler framework when building debugserver for ios. Greg disabled this back in 2012-01-10 r147886 but we still need to use it. <rdar://problem/11016745> git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@152463 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
55f768792c75eb5f9474edb09ca416c8737eeac0 |
09-Mar-2012 |
Jim Ingham <jingham@apple.com> |
Make debugserver quieter about memory read errors. <rdar://problem/10681220> git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@152438 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachVMMemory.cpp
|
cda01b0f632a4e4238e15f949e7d53c1e7526972 |
09-Mar-2012 |
Greg Clayton <gclayton@apple.com> |
Bumping Xcode project versions for lldb-126 and debugserver-176. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@152383 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
c227cd962515a765638a901c14d5cea4ca1b2e9d |
08-Mar-2012 |
Greg Clayton <gclayton@apple.com> |
Bumping Xcode project version for lldb-124 and debugserver-175. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@152294 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
ad7bd23aab27a769aea2266e66ad36bfc0d6e86d |
08-Mar-2012 |
Greg Clayton <gclayton@apple.com> |
<rdar://problem/11007934> On darwin, if child process of process being debugged dies due to mach exception, the debugged process will die. debugserver now only handles the mach exceptions for the task being debugged. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@152291 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachException.cpp
ebugserver/source/MacOSX/MachException.h
ebugserver/source/MacOSX/MachTask.cpp
|
295c7cc723ec3e5f2a8b2e298f57ccb6ec251ee9 |
07-Mar-2012 |
Greg Clayton <gclayton@apple.com> |
<rdar://problem/10993996> Added a new makefile target to help us with Apple builds where the installhdrs will copy the headers for the shared library. Prior to this fix, the install headers directory would contain the unix style paths to all public header files ("#include lldb/API/SBDefines.h") instead of the fixed up framework header paths ("#include <LLDB/SBDefines.h>"). git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@152253 91177308-0d34-0410-b5e6-96231b3b80d8
nstall-headers/Makefile
|
f875f8591840709e0ea74e7a280a4e88d0e30522 |
06-Mar-2012 |
Greg Clayton <gclayton@apple.com> |
Bumping Xcode project versions for lldb-123 and debugserver-174. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@152103 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
95ec1688db0efe51509ad9356052f5004d8856e0 |
06-Mar-2012 |
Greg Clayton <gclayton@apple.com> |
<rdar://problem/10840355> Fixed STDERR to not be opened as readable. Also cleaned up some of the code that implemented the file actions as some of the code was using the wrong variables, they now use the right ones (in for stdin, out for stdout, err for stderr). git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@152102 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachProcess.cpp
|
0336c61d34dc05a9cbc97e9641703a61a593dd2e |
06-Mar-2012 |
Greg Clayton <gclayton@apple.com> |
Bumped project Xcode project version for lldb-122 and debugserver-173. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@152088 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
4722b10307668368bf0f12fa6b8691e4f4cb5488 |
06-Mar-2012 |
Jim Ingham <jingham@apple.com> |
Add a command and an SB API to create exception breakpoints. Make the break output prettier for Exception breakpoints. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@152081 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
4402f7032005918e5f879234a078a7a265495a6b |
06-Mar-2012 |
Greg Clayton <gclayton@apple.com> |
<rdar://problem/10986692> Safeguard against building on next OS and run on current OS. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@152077 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachException.cpp
ebugserver/source/MacOSX/MachException.h
ebugserver/source/MacOSX/MachTask.cpp
|
a912203718ba867759b221971346366293ef67bd |
02-Mar-2012 |
Greg Clayton <gclayton@apple.com> |
Bumped Xcode project versions for lldb-121 and debugserver-172 git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@151948 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
b34b0ebd9f337789ceeea227f33358dd8a8dadca |
02-Mar-2012 |
Greg Clayton <gclayton@apple.com> |
Bumping Xcode project versions for lldb-120 and debugserver-171. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@151924 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
32fb5f7a50857cdccf5713226eb7eb28ff264e9f |
01-Mar-2012 |
Greg Clayton <gclayton@apple.com> |
Bumped Xcode project version for lldb-119 and debugserver-170. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@151836 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
e70aaadd30abdda885fa77874f794e3f630e6a4c |
01-Mar-2012 |
Greg Clayton <gclayton@apple.com> |
Hardcode the identifier and the execution name in debugserver since we put this into a section and not Xcode variable expansion happens. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@151835 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/resources/lldb-debugserver-Info.plist
|
fe724f7ce58be1418f7958081bd06bd9cf254f44 |
01-Mar-2012 |
Greg Clayton <gclayton@apple.com> |
<rdar://problem/10963899> Allow debugserver to be built on a newer kernel and still allow debugging on older kernels. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@151827 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachException.cpp
|
93980e78c3f7104faa9df67195a18e3947d58d4e |
29-Feb-2012 |
Greg Clayton <gclayton@apple.com> |
Fixed the install path for the XPC binaries. Added 3 aggregate targets: "desktop" - build all binaries with XPC "desktop_no_xcp" - build all binaries with none of the XPC binaries "ios" - build all binaries with special iOS install settings. Bumped the Xcode project build version for lldb-118 and debugserver-169. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@151740 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
f125250ba7bcaa2ea5ee95539a309e3fd2f8b5d7 |
29-Feb-2012 |
Greg Clayton <gclayton@apple.com> |
<rdar://problem/10605072> Added the ability to override command line commands. In some cases GUI interfaces might want to intercept commands like "quit" or "process launch" (which might cause the process to re-run). They can now do so by overriding/intercepting commands by using functions added to SBCommandInterpreter using a callback function. If the callback function returns true, the command is assumed to be handled. If false is returned the command should be evaluated normally. Adopted this up in the Driver.cpp for intercepting the "quit" command. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@151708 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
river/Driver.h
|
fbb582e268427825c47ff5e91b86683fb58d61f0 |
28-Feb-2012 |
Jason Molenda <jmolenda@apple.com> |
Add one more define for sdk==iphoneos. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@151606 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
f548fc6ddc713cba6469dd4e9a2ecb352a1f347e |
25-Feb-2012 |
Greg Clayton <gclayton@apple.com> |
Bumped Xcode project version to lldb-117 and debugserver-168. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@151422 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
8bcb0bd5db56fd8136848b5669699de1d192ddf8 |
24-Feb-2012 |
Johnny Chen <johnny.chen@apple.com> |
Newly created threads are to inherit from the global debug state of the process. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@151393 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/arm/DNBArchImpl.cpp
|
e350394e5b4bd5c32f70951a035a889bfd0194e4 |
24-Feb-2012 |
Johnny Chen <johnny.chen@apple.com> |
Add a class method HasWatchpointOccurred() to inspect the "method of debug entry" field of the DSCR to check whether it was because of watchpoint occurred. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@151333 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/arm/DNBArchImpl.cpp
ebugserver/source/MacOSX/arm/DNBArchImpl.h
|
edfdbe076635bd2cae1bce288ff41f4d3e36fc41 |
24-Feb-2012 |
Johnny Chen <johnny.chen@apple.com> |
Add comments about address word offset and the calculation of byte address select mask for WCR. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@151305 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/arm/DNBArchImpl.cpp
|
63fd41c08cb327ce943dd3c7b1ab920f4f8426c4 |
22-Feb-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Remove unused python includes from headers. Python.h is a bad c++ citizen and overwrites some functions with its own macros. This conflicts with libc++'s locale header. I did some refactoring to use Python.h only where it's actually needed a few months ago so the unnecessary includes can be removed now. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@151168 91177308-0d34-0410-b5e6-96231b3b80d8
arwin-debug/darwin-debug.cpp
|
9a5bbd2a14cacac731424f7a253f6cc16b22c10a |
22-Feb-2012 |
Jason Molenda <jmolenda@apple.com> |
Change #ifdef markers around lockdown and SpringBoard calls to dpeend on WITH_SPRINGBOARD and WITH_LOCKDOWN instead of __arm__. Add an RNBSocket::useFD method. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@151119 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
ebugserver/source/DNBDefs.h
ebugserver/source/DNBError.cpp
ebugserver/source/DNBError.h
ebugserver/source/MacOSX/MachProcess.cpp
ebugserver/source/MacOSX/MachProcess.h
ebugserver/source/MacOSX/MachTask.cpp
ebugserver/source/RNBDefs.h
ebugserver/source/RNBServices.cpp
ebugserver/source/RNBSocket.cpp
ebugserver/source/RNBSocket.h
ebugserver/source/debugserver.cpp
|
137e5230e8dfb1287dd7c5eaa943a39078e1fd8d |
21-Feb-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Remove a ton of implicit narrowing conversions for C++11 compatibility. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@151071 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachThreadList.cpp
ebugserver/source/MacOSX/i386/DNBArchImplI386.cpp
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.cpp
|
6c530f2201be4788dedf3d5970399220fbd50b11 |
21-Feb-2012 |
Jim Ingham <jingham@apple.com> |
Add a logging mode that takes a callback and flush'es to that callback. Also add SB API's to set this callback, and to enable the log channels. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@151018 91177308-0d34-0410-b5e6-96231b3b80d8
ldb-platform/lldb-platform.cpp
|
5de331732062885a853500495795a94360019e33 |
21-Feb-2012 |
Charles Davis <cdavis@mines.edu> |
Pull side effects out of asserts. Fixes debugserver with NDEBUG defined. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@151013 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/DNB.cpp
|
289afcb5e26c2527a0d2e71f84e780b86bbcf90a |
18-Feb-2012 |
Greg Clayton <gclayton@apple.com> |
The second part in thread hardening the internals of LLDB where we make the lldb_private::StackFrame objects hold onto a weak pointer to the thread object. The lldb_private::StackFrame objects the the most volatile objects we have as when we are doing single stepping, frames can often get lost or thrown away, only to be re-created as another object that still refers to the same frame. We have another bug tracking that. But we need to be able to have frames no longer be able to get the thread when they are not part of a thread anymore, and this is the first step (this fix makes that possible but doesn't implement it yet). Also changed lldb_private::ExecutionContextScope to return shared pointers to all objects in the execution context to further thread harden the internals. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@150871 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/xcshareddata/xcschemes/debugserver.xcscheme
|
75a7c755bd203e13a8f0186512f28b3e1be470b2 |
17-Feb-2012 |
Greg Clayton <gclayton@apple.com> |
Fixed an error with the 'G' packet on ARM when using the default GDB register set where it could get an error when trying to restore the fake "f0" - "f7" 12 byte float regs. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@150781 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/RNBRemote.cpp
|
5a15e6927b5b3234fb3e688717297ba6b5dd6ad7 |
16-Feb-2012 |
Jim Ingham <jingham@apple.com> |
Add a general mechanism to wait on the debugger for Broadcasters of a given class/event bit set. Use this to allow the lldb Driver to emit notifications for breakpoint modifications. <rdar://problem/10619974> git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@150665 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
28e23861bedbeb5e46be7d2af4c33bf5132422c6 |
08-Feb-2012 |
Jim Ingham <jingham@apple.com> |
Send Breakpoint Changed events for all the relevant changes to breakpoints. Also, provide and use accessors for the thread options on breakpoints so we can control sending the appropriate events. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@150057 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
river/Driver.h
|
7cd8cd51421be28c7c615e141e87cf53bf2e21a0 |
02-Feb-2012 |
Greg Clayton <gclayton@apple.com> |
Fixed terminal settings not being properly restored when "quit" was run. This affected bash users. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@149623 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
a749ca2ceb7854ab7a14f3a31956a8617fef7d8c |
02-Feb-2012 |
Greg Clayton <gclayton@apple.com> |
Kill our child process that we launch when we can't get the task_for_pid() otherwise we will have a launched process stopped at the entry point and it will get reparented when debugserver goes away and we won't be able to kill the process later. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@149622 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/DNB.cpp
|
db9d6f47ab38e25c3efcbfa05780bf9a127fd259 |
31-Jan-2012 |
Greg Clayton <gclayton@apple.com> |
Cleaned up the Communication class when it tears down ConnectionFileDescriptor instances to not pthread_cancel the read threads and wreak havoc on the mutex in our ConnectionFileDescriptor class. Also cleaned up some shutdown delays. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@149355 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
894aaba391b45a78f5d0d316b442f765af40d903 |
28-Jan-2012 |
Jason Molenda <jmolenda@apple.com> |
Fix shell commands that do code signing. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@149171 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
c962cd96b32c03f22581e678e6d92534e3179285 |
28-Jan-2012 |
Greg Clayton <gclayton@apple.com> |
Bumping Xcode project versions for lldb-109 and debugserver-167. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@149168 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
98b98956208027a052f800a73214b38dcaf857e1 |
28-Jan-2012 |
Greg Clayton <gclayton@apple.com> |
Xcode codesigning is broken. Work around this by doing code signing in a shell script build phase. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@149165 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
9a8e584d0aebf0a6597ede9cc6254743dd7e2f6c |
21-Jan-2012 |
Greg Clayton <gclayton@apple.com> |
Bumped Xcode project versions for lldb-108 and debugserver-166. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@148613 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
70bc536768672dee014fa91fd4df9b8f88e47d05 |
14-Jan-2012 |
Greg Clayton <gclayton@apple.com> |
Bumped xcode project versions for lldb-106 and debugserver-165 git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@148202 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
f771915c66abf0e310749d29dec52e6accf04f4a |
13-Jan-2012 |
Greg Clayton <gclayton@apple.com> |
Bumped Xcode project version for lldb-105 and debugserver-164. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@148098 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
ef8fef697fe5ce0669a191aa56f1fab302d5824c |
12-Jan-2012 |
Greg Clayton <gclayton@apple.com> |
Bumped Xcode project versions for lldb-104 and debugserver-163. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@148018 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
305f38588817f823f05100e8236745e8e4d70320 |
11-Jan-2012 |
Johnny Chen <johnny.chen@apple.com> |
Snapshot of initial work for ARM watchpoint support on the debugserver. It is incomplete and untested; passes the compilation only. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@147901 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/arm/DNBArchImpl.cpp
ebugserver/source/MacOSX/arm/DNBArchImpl.h
|
6c7559ae5255ad791a197dc08e1d0ce9130a3988 |
10-Jan-2012 |
Greg Clayton <gclayton@apple.com> |
Disable ARMDisassembler.framework support which was used for software single stepping. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@147886 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
ebugserver/source/MacOSX/arm/DNBArchImpl.cpp
ebugserver/source/MacOSX/arm/DNBArchImpl.h
|
ca28cc392d40ea539408daf46a2b605f71f4183e |
10-Jan-2012 |
Jim Ingham <jingham@apple.com> |
Check the return value of GetBasicInfo before dereferencing it. <rdar://problem/10568492> git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@147883 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachThread.cpp
|
48f1bfecc56335df2f566efd6331fc2746882b38 |
10-Jan-2012 |
Sean Callanan <scallanan@apple.com> |
Updating Xcode project version numbers for lldb-103 and debugserver-162 git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@147865 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
97f3a27fa09575a3b035a796349dd49a179a67f4 |
09-Jan-2012 |
Sean Callanan <scallanan@apple.com> |
Updating Xcode project version numbers for lldb-102 and debugserver-161 git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@147794 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
cc152b20d7b07aa4c229977b7b0d8d94cbda2ff5 |
06-Jan-2012 |
Johnny Chen <johnny.chen@apple.com> |
http://llvm.org/bugs/show_bug.cgi?id=11715 comma at end of enumerator list git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@147633 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/RNBRemote.h
|
7e9964783acae183c23a7ea470cedd64472eb233 |
05-Jan-2012 |
Johnny Chen <johnny.chen@apple.com> |
This patch combines common code from Linux and FreeBSD into a new POSIX platform. It also contains fixes for 64bit FreeBSD. The patch is based on changes by Mark Peek <mp@FreeBSD.org> and "K. Macy" <kmacy@freebsd.org> in their github repo located at https://github.com/fbsd/lldb. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@147609 91177308-0d34-0410-b5e6-96231b3b80d8
river/Makefile
|
429c6d80239734b81945720c0cd1cba99e2ca19a |
05-Jan-2012 |
Greg Clayton <gclayton@apple.com> |
Bumped Xcode project versions for lldb-101 and debugserver-160. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@147597 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
f09ca66d9fe715a16677b78d1f24676bf4010b79 |
22-Dec-2011 |
Sean Callanan <scallanan@apple.com> |
Updating Xcode project version numbers for lldb-100 and debugserver-159 git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@147193 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
993d33e6bdc7e73c94e8b9f9bce5542297696f99 |
21-Dec-2011 |
Sean Callanan <scallanan@apple.com> |
Updating Xcode project version numbers for lldb-99 and debugserver-158 git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@147061 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
693f4001ad3b28afdd9abfe7c66f8eb5c3c85e35 |
20-Dec-2011 |
Sean Callanan <scallanan@apple.com> |
Updating Xcode project version numbers for lldb-97 and debugserver-157 git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@146978 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
6aeedd3922754aa259190a26f58e7f71b0027d1b |
17-Dec-2011 |
Sean Callanan <scallanan@apple.com> |
Updating Xcode project version numbers for LLDB-96 and debugserver-156. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@146808 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
cb0f245af568eaa40d22147438a15455eb7af7c8 |
15-Dec-2011 |
Greg Clayton <gclayton@apple.com> |
Bumped Xcode project version to lldb-95 and debugserver-155. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@146643 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
1308a9555ad586ff03c8f97bcfe7f3212d06bc86 |
12-Dec-2011 |
Greg Clayton <gclayton@apple.com> |
Always return a valid answer for qMemoryRegionInfo if the packet is supported. We will return a valid range when possible and omit the "permissions" key when the memory is not readable, writeable or executeable. This will help us know the difference between an error back from this packet and unsupported, from just "this address isn't in a valid region". git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@146394 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/DNB.cpp
ebugserver/source/DNB.h
ebugserver/source/MacOSX/MachVMMemory.cpp
ebugserver/source/MacOSX/MachVMMemory.h
ebugserver/source/MacOSX/MachVMRegion.cpp
ebugserver/source/MacOSX/MachVMRegion.h
ebugserver/source/RNBRemote.cpp
|
d906b1b24a6c838d78039b399ee43dc57598ab52 |
09-Dec-2011 |
Jim Ingham <jingham@apple.com> |
Don't spam warnings about not being able to read memory at 0x0. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@146271 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachVMMemory.cpp
|
a9091cc0d3686dd93718a320057153c4aabf091a |
08-Dec-2011 |
Jason Molenda <jmolenda@apple.com> |
Move CPUHasAVX() prototype out of an #ifdef block of code. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@146198 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/i386/DNBArchImplI386.cpp
|
f4933ed8d0fa218b5db476ecd881ec67495037f3 |
08-Dec-2011 |
Greg Clayton <gclayton@apple.com> |
<rdar://problem/10544202> Fixed detection of AVX on darwin now that our kernel supports it. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@146135 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/i386/DNBArchImplI386.cpp
ebugserver/source/MacOSX/i386/DNBArchImplI386.h
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.cpp
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.h
|
1f5c0c368c1dfeb67b3b9fca8ef869206554e25a |
08-Dec-2011 |
Jason Molenda <jmolenda@apple.com> |
Expose the DNBArchMachARM::DBG typedef, specify the type with the class scoping in DumpDBGState()'s definiton. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@146128 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/arm/DNBArchImpl.cpp
ebugserver/source/MacOSX/arm/DNBArchImpl.h
|
46b27f25b970cb7a26495402b44c4a5ed981e4b8 |
06-Dec-2011 |
Johnny Chen <johnny.chen@apple.com> |
Add a typedef for arm_debug_state_t as DBG. Plus some minor comment changes. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@145978 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/arm/DNBArchImpl.cpp
ebugserver/source/MacOSX/arm/DNBArchImpl.h
|
d9919d3f46c5069eef065a27f96abc021330d5f3 |
02-Dec-2011 |
Greg Clayton <gclayton@apple.com> |
Process IDs (lldb::pid_t) and thread IDs (lldb::tid_t) are now 64 bit. This will allow us to represent a process/thread ID using a pointer for the OS plug-ins where they might want to represent the process or thread ID using the address of the process or thread structure. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@145644 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
dc303c2455596f9fd3dd389f650bd904cf410ca3 |
30-Nov-2011 |
Greg Clayton <gclayton@apple.com> |
Bumped Xcode project versions for lldb-90 and debugserver-154 git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@145528 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
a9385537809ef342c843c5ab972e513742652047 |
18-Nov-2011 |
Greg Clayton <gclayton@apple.com> |
Added optional calls to lldb_private::Process for getting memory region info from a process and hooked it up to the new packet that was recently added to our GDB remote executable named debugserver. Now Process has the following new calls: virtual Error Process::GetMemoryRegionInfo (lldb::addr_t load_addr, MemoryRegionInfo &range_info); virtual uint32_t GetLoadAddressPermissions (lldb::addr_t load_addr); Only the first one needs to be implemented by subclasses that can add this support. Cleaned up the way the new packet was implemented in debugserver to be more useful as an API inside debugserver. Also found an error where finding a region for an address actually will pick up the next region that follows the address in the query so we also need ot make sure that the address we requested the region for falls into the region that gets returned. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@144976 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/DNB.cpp
ebugserver/source/DNB.h
ebugserver/source/DNBDefs.h
ebugserver/source/MacOSX/MachProcess.cpp
ebugserver/source/MacOSX/MachProcess.h
ebugserver/source/MacOSX/MachTask.cpp
ebugserver/source/MacOSX/MachTask.h
ebugserver/source/MacOSX/MachVMMemory.cpp
ebugserver/source/MacOSX/MachVMMemory.h
ebugserver/source/MacOSX/MachVMRegion.cpp
ebugserver/source/MacOSX/MachVMRegion.h
ebugserver/source/RNBRemote.cpp
|
1628317b7037670aacb3aa3a31c0ad67f833d229 |
17-Nov-2011 |
Greg Clayton <gclayton@apple.com> |
Bumped Xcode project versions for lldb-89 and debugserver-153. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@144911 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
934fc6b329ddf9f2a3c0cd29f6fc309111aa5ae8 |
15-Nov-2011 |
Greg Clayton <gclayton@apple.com> |
Bumped Xcode project version for lldb-88 and debugserver-152. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@144616 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
32e2564f9af50147044dcdc0c9677bba0fcb4287 |
09-Nov-2011 |
Greg Clayton <gclayton@apple.com> |
Cleanup some warnings. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@144200 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/scripts/dbgnub-config.pl
|
bcf07b37b3e3cd37ac74cc42c12009f130f185a3 |
09-Nov-2011 |
Jason Molenda <jmolenda@apple.com> |
Remove the QAddressIsExecutable packet I added last night. Add a more general purpose qMemoryRegionInfo packet which can describe various attributes about a memory region. Currently it will return the start address, size, and permissions (read, write, executable) for the memory region. It may be possible to add additional attributes in the future such as whether the region is designated as stack memory or jitted code a la vmmap. I still haven't implemented the lldb side of the code to use this packet yet so there may be unexpected behavior - but the basic implementation looks about right. I'll hook it up to lldb soon and fix any problems that crop up. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@144175 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/DNB.cpp
ebugserver/source/DNB.h
ebugserver/source/MacOSX/MachProcess.cpp
ebugserver/source/MacOSX/MachProcess.h
ebugserver/source/MacOSX/MachTask.cpp
ebugserver/source/MacOSX/MachTask.h
ebugserver/source/MacOSX/MachVMMemory.cpp
ebugserver/source/MacOSX/MachVMMemory.h
ebugserver/source/MacOSX/MachVMRegion.cpp
ebugserver/source/MacOSX/MachVMRegion.h
ebugserver/source/RNBRemote.cpp
ebugserver/source/RNBRemote.h
|
dc8ff30b6dbe28c851e99712e20c1358eca4709d |
08-Nov-2011 |
Jason Molenda <jmolenda@apple.com> |
Add "QAddressIsExecutable" packet to debugserver. Used to test whether a given address is in an executable region of memory or not. I haven't written the lldb side that will use this packet it hasn't been tested yet but it's a simple enough bit of code. I want to have this feature available for the unwinder code. When we're stopped at an address with no valid symbol context, there are a number of questions I'd like to ask -- is the current pc value in an executable region (e.g. did they jump to unallocated/unexecutable memory? we know how to unwind from here if so.) Is the stack pointer or the frame pointer the correct register to use to find the caller's saved pc value? Once we're past the first frame we can trust things like eh_frame and ABI unwind schemes but the first frame is challenging and having a way to check potential addresses to see if they're executable or not would help narrow down the possibilities a lot. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@144074 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/DNB.cpp
ebugserver/source/DNB.h
ebugserver/source/MacOSX/MachProcess.cpp
ebugserver/source/MacOSX/MachProcess.h
ebugserver/source/MacOSX/MachTask.cpp
ebugserver/source/MacOSX/MachTask.h
ebugserver/source/MacOSX/MachVMMemory.cpp
ebugserver/source/MacOSX/MachVMMemory.h
ebugserver/source/MacOSX/MachVMRegion.h
ebugserver/source/RNBRemote.cpp
ebugserver/source/RNBRemote.h
|
abb3302051246273eb92cca203c9a1b9d9736e05 |
08-Nov-2011 |
Greg Clayton <gclayton@apple.com> |
Moved many of the "settings" that used to be in "target.process.*" to just be in the target. All of the environment, args, stdin/out/err files, etc have all been moved. Also re-enabled the ability to launch a process in a separate terminal on MacOSX. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@144061 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
d1d9f75c714c9db033c5901ea72c53893bd8f47d |
07-Nov-2011 |
Greg Clayton <gclayton@apple.com> |
Bumped Xcode project version for lldb-86 and debugserver-151 git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@144032 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
49cddea52ef10cc1e5deffd4631fb88bcf8ee33f |
07-Nov-2011 |
Greg Clayton <gclayton@apple.com> |
Xcode project changes to install "lldb" into "/usr/bin" and have LLDB.framework in "/System/Library/PrivateFrameworks", and also have "lldb" in the Xcode.app and the LLDB.framework in Xcode.app as well. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@144030 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
3e4238d47a6d1a3106f357d2e7b495870721c7ae |
04-Nov-2011 |
Greg Clayton <gclayton@apple.com> |
Fixed the Xcode project building of LLVM to be a bit more user friendly: - If you download and build the sources in the Xcode project, x86_64 builds by default using the "llvm.zip" checkpointed LLVM. - If you delete the "lldb/llvm.zip" and the "lldb/llvm" folder, and build the Xcode project will download the right LLVM sources and build them from scratch - If you have a "lldb/llvm" folder already that contains a "lldb/llvm/lib" directory, we will use the sources you have placed in the LLDB directory. Python can now be disabled for platforms that don't support it. Changed the way the libllvmclang.a files get used. They now all get built into arch specific directories and never get merged into universal binaries as this was causing issues where you would have to go and delete the file if you wanted to build an extra architecture slice. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@143678 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
ebugserver/debugserver.xcodeproj/xcshareddata/xcschemes/debugserver.xcscheme
ebugserver/source/MacOSX/MachProcess.cpp
ebugserver/source/MacOSX/arm/DNBArchImpl.cpp
|
425743ed071a0ba41afebce6f9839741de21c74a |
03-Nov-2011 |
Jim Ingham <jingham@apple.com> |
Print out the task suspend count as well. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@143659 91177308-0d34-0410-b5e6-96231b3b80d8
arwin-threads/examine-threads.c
|
ec31b37a6b8bec8cba61b795238a9c7750dc57e4 |
03-Nov-2011 |
Greg Clayton <gclayton@apple.com> |
Bumping Xcode project versions for lldb-85 and debugserver-150. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@143587 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
e5a4e81648c01bc422d1edf4d8d787342d5bb6d5 |
01-Nov-2011 |
Greg Clayton <gclayton@apple.com> |
Bumped Xcode project version to lldb-84 and debugserver-149. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@143408 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
b51693999473f5dc7cb9681bbbc4a65028eea35b |
01-Nov-2011 |
Greg Clayton <gclayton@apple.com> |
Fixed some warnings after enabling some stricter warnings in the Xcode project settings. Also fixed an issue where we weren't creating anonymous namepaces correctly: <rdar://problem/10371295> git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@143403 91177308-0d34-0410-b5e6-96231b3b80d8
arwin-debug/darwin-debug.cpp
ldb-platform/lldb-platform.cpp
|
97c8957257a3e0b3ce6f46f8e5a28c965e30f357 |
31-Oct-2011 |
Daniel Dunbar <daniel@zuster.org> |
warnings: Fix a bunch of -Wreorder problems. git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@143381 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
d6ceffbde243f0094586dd0c4c6d19fd6c866ad9 |
29-Oct-2011 |
Greg Clayton <gclayton@apple.com> |
Updated the project to use the "DEVELOPER_DIR" build setting that specifies the path to the /Developer directory, and also bumped the Xcode project version for lldb-83 and debugserver-148. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@143269 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
0e8147bd867e4cdaae9400f56d02c7aacd40a9b3 |
29-Oct-2011 |
Greg Clayton <gclayton@apple.com> |
Enabled the "printf" attribute on all debugserver logging functions and fixed the ensuing mayhem. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@143244 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/DNB.cpp
ebugserver/source/DNBBreakpoint.cpp
ebugserver/source/DNBLog.cpp
ebugserver/source/DNBLog.h
ebugserver/source/MacOSX/MachException.cpp
ebugserver/source/MacOSX/MachException.h
ebugserver/source/MacOSX/MachProcess.cpp
ebugserver/source/MacOSX/MachTask.cpp
ebugserver/source/MacOSX/MachThread.cpp
ebugserver/source/MacOSX/i386/DNBArchImplI386.cpp
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.cpp
ebugserver/source/RNBSocket.cpp
ebugserver/source/debugserver.cpp
|
b6ee2e5f0fe6e6da2902f3365510a0932068cade |
28-Oct-2011 |
Greg Clayton <gclayton@apple.com> |
Bumping Xcode project version in mainline to match the latest build that was submitted. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@143199 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
c0977b917f414acf5612b20b72097a7281b217c1 |
28-Oct-2011 |
Greg Clayton <gclayton@apple.com> |
Python does some bad things to the signal masks in the current process and then we spawn child processes (debugserver, etc) and those bad settings get inherited. We stop this from happening by correctly mucking with the posix spawn attributes. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@143176 91177308-0d34-0410-b5e6-96231b3b80d8
arwin-debug/darwin-debug.cpp
ebugserver/source/MacOSX/MachProcess.cpp
|
3ce51281f53e4554ac27abcb504a104d07f53131 |
23-Oct-2011 |
Benjamin Kramer <benny.kra@googlemail.com> |
Remove unused include of deprecated header. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@142753 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/PseudoTerminal.cpp
|
900b3c70895ec33c6a071befd37b33cd5856ac82 |
22-Oct-2011 |
Greg Clayton <gclayton@apple.com> |
Bumped versions for lldb-81 and debugserver-146. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@142718 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
044c02b1f2da8afe0aa2771768ec42e3c2dee36a |
01-Oct-2011 |
Greg Clayton <gclayton@apple.com> |
Bumped Xcode project version for lldb-80 and debugserver-145. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@140922 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
3dd956eb7ee3e93df6b68a9c7c528e92359b6026 |
29-Sep-2011 |
Johnny Chen <johnny.chen@apple.com> |
Modify the delegation chain from MachThreadList -> MachThread -> DNBArchProtocol so that when the watchpoint state is changed, not only does the change propagate to all the thread instances, it also updates a global debug state, if chosen by the DNBArchProtocol derivative. Once implemented, the DNBArchProtocol derivative, also makes sure that when new thread comes along, it tries to inherit from the global debug state, if it is valid. Modify TestWatchpointMultipleThreads.py to test this functionality. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@140811 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/DNBArch.h
ebugserver/source/MacOSX/MachThread.cpp
ebugserver/source/MacOSX/MachThread.h
ebugserver/source/MacOSX/MachThreadList.cpp
ebugserver/source/MacOSX/i386/DNBArchImplI386.cpp
ebugserver/source/MacOSX/i386/DNBArchImplI386.h
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.cpp
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.h
|
48c7756be4ae81d9e524ba23ef89a401bdf9fa31 |
29-Sep-2011 |
Johnny Chen <johnny.chen@apple.com> |
Fix a bug in the current MacOSX MachThreadList::EnableHardwareWatchpoint() impl so that it enables the hardware watchpoint for all existing threads. Add a test file for that. Also fix MachThreadList::DisableHardwareWatchpoint(). git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@140757 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachThreadList.cpp
|
d466ebc0da3ecd12dfb8da22a8f823d370338013 |
19-Sep-2011 |
Johnny Chen <johnny.chen@apple.com> |
The r139982 patch has a bug by using the constant "x86_AVX_STATE64". Patch by Filipe. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@140037 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.cpp
|
6e0101c86555a06b3bd4cb6104b35abfae0b0057 |
17-Sep-2011 |
Greg Clayton <gclayton@apple.com> |
Convert lldb::ModuleSP to use an instrusive ref counted pointer. We had some cases where getting the shared pointer for a module from the global module list was causing a performance issue when debugging with DWARF in .o files. Now that the module uses intrusive ref counts, we can easily convert any pointer to a shared pointer. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@139983 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/i386/DNBArchImplI386.cpp
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.cpp
|
2080155a1aecfa50a82760dcc4127575fb5dea67 |
17-Sep-2011 |
Greg Clayton <gclayton@apple.com> |
Added more logging, and renamed FPR to FPU in a the register set/flavor enum. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@139982 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/i386/DNBArchImplI386.cpp
ebugserver/source/MacOSX/i386/DNBArchImplI386.h
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.cpp
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.h
|
48e83736a4c1782b3d2beae1d699adf664f1f390 |
17-Sep-2011 |
Greg Clayton <gclayton@apple.com> |
Correctly handle the when we the 'G' packet fails. There were cases where we were returning no error even though this packet was failing. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@139981 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/RNBRemote.cpp
|
36889adf3700165ae13e8defb7433f2ba80df697 |
17-Sep-2011 |
Johnny Chen <johnny.chen@apple.com> |
Foe x86_64/i386, piggyback the hardware index of the fired watchpoint in the exception data sent back to the debugger. On the debugger side, use the opportunity during the StopInfoMachException::CreateStopReasonWithMachException() method to set the hardware index for the very watchpoint location. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@139975 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/i386/DNBArchImplI386.cpp
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.cpp
|
dbcf98c194742f911c963854084c66aa49a5e513 |
15-Sep-2011 |
Jim Ingham <jingham@apple.com> |
Track whether a process was Launched or Attached to. If Attached, the detach when the debugger is destroyed, rather than killing the process. Also added a Debugger::Clear, which gets called in Debugger::Destroy to deal with all the targets in the Debugger. Also made the Driver's main loop call Destroy on the debugger, rather than just Destroying the currently selected Target's process. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@139852 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
a1cb0f4caeabf20906c5fce4150dbe04c0ac29ef |
15-Sep-2011 |
Johnny Chen <johnny.chen@apple.com> |
Add comment regarding method call to DNBArchProtocol::NotifyException(). git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@139800 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachThread.cpp
|
ba3d6989f48afd8e3f4c6c70db45206efd64d1eb |
15-Sep-2011 |
Johnny Chen <johnny.chen@apple.com> |
Modify MachThread::NotifyException() to allow the arch specific protocol to process the passed in (MachException::Data &)exc first before possible reassignment of the member m_stop_exception with exc. This allows lldb to stop at the watchpoint of a simple test program. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@139767 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachThread.cpp
|
0ff816295306155094fd2daae005ed2beaa007c4 |
14-Sep-2011 |
Johnny Chen <johnny.chen@apple.com> |
Update I386 DNB impl to fix the same errors as DNBArchImplX86_64: ('==' instead of '=') and (by value instead of by reference). git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@139667 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/i386/DNBArchImplI386.cpp
|
69b6ec840171ef30af4ed7646155bffc225002ca |
14-Sep-2011 |
Johnny Chen <johnny.chen@apple.com> |
Watchpoint WIP: o WatchpointLocationList: Add a GetListMutex() method. o WatchpointLocation: Fix Dump() method where there was an extra % in the format string. o Target.cpp: Add implementation to CreateWatchpointLocation() to create and enable a watchpoint. o DNBArchImplX86_64.cpp: Fix bugs in SetWatchpoint()/ClearWatchpoint() where '==' was used, instead of '=', to assign/reset the data break address to a debug register. Also fix bugs where a by reference debug_state should have been used, not by value. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@139666 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.cpp
|
83dd2039d86b79e9cd5cf320bdb50c838fcb7b9c |
14-Sep-2011 |
Jim Ingham <jingham@apple.com> |
Adding "-n", "-p" and "-w" flags to the lldb command-line tool to allow attaching from the command line. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@139665 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
river/Driver.h
|
cc637461f6c59851302836c64e0cb002de4f4571 |
13-Sep-2011 |
Jim Ingham <jingham@apple.com> |
SBSourceManager now gets the real source manager either from the Debugger or Target. Also, move the SourceManager file cache into the debugger so it can be shared amongst the targets. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@139564 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
0a44b0d3d5686b7a16db02ad2440126631c9f31a |
09-Sep-2011 |
Johnny Chen <johnny.chen@apple.com> |
Reset the debug status register, only if necessary, before we resume, which saves unnecessary traffic to the kernel. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@139410 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/i386/DNBArchImplI386.cpp
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.cpp
|
520e7fe1c4d112d67d56fabf1dc2b1ad484e30ef |
09-Sep-2011 |
Enrico Granata <granata.enrico@gmail.com> |
Basic infrastructure code to exploit malloc stack logging as available on Mac OS X to track the allocation history of pointers on the target process git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@139337 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
ebugserver/source/MacOSX/MachTask.cpp
ebugserver/source/MacOSX/MachTask.h
ebugserver/source/MacOSX/stack_logging.h
|
d8b7248128c7e8fbeb3c3b64456e188dcebbcd13 |
08-Sep-2011 |
Johnny Chen <johnny.chen@apple.com> |
Added comments about exception code. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@139294 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/i386/DNBArchImplI386.cpp
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.cpp
|
fc8909388e6f1cea591c0d56434236f8d16543e6 |
08-Sep-2011 |
Johnny Chen <johnny.chen@apple.com> |
Add logic to the DNBArchImplX86_64/DNBArchImplI386::NotifyException() callback method in order to distinguish the real single step exception from a watchpoint exception which uses the same exc_type of EXC_BREAKPOINT and exc_code of EXC_I386_SGL. This is done by checking the debug status register to find out whether the watchpoint data break event has fired, and, if yes, stuff the data break address into the exception's exc_sub_code field on the debugserver side for lldb to consume on the other end. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@139274 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/i386/DNBArchImplI386.cpp
ebugserver/source/MacOSX/i386/DNBArchImplI386.h
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.cpp
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.h
|
2c45f5425f35af30efb4f2751890decf292e8eaf |
07-Sep-2011 |
Johnny Chen <johnny.chen@apple.com> |
Add logic to MachThreadList::GetThreadID() for the use case of setting a watchpoint (MachThreadList::EnableHardwareWatchpoint()) where the watchpoint is not associated with a thread and the current thread, if set, is returned, otherwise we return the first thread. Plus minor change to RNBRemote::HandlePacket_z() to use the existing macros to check the validity of break_id/watch_id. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@139246 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachThreadList.cpp
ebugserver/source/RNBRemote.cpp
|
390a0e70ed4d00e34be40401dea4b63c4630741e |
07-Sep-2011 |
Johnny Chen <johnny.chen@apple.com> |
Minor change: compare the return val of DNBWatchpointSet() against INVALID_NUB_WATCH_ID to determine its validity. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@139209 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/RNBRemote.cpp
|
31d8918cb12fa1f715920db37a2290b3911e62ee |
06-Sep-2011 |
Johnny Chen <johnny.chen@apple.com> |
DNBBreakpoint::SetEnabled() should take a bool, not a uint32_t, as its input argument. Plus for watchpoint related functions, add new macros INVALID_NUB_WATCH_ID and NUB_WATCH_ID_IS_VALID and use them, instead. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@139163 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/DNB.cpp
ebugserver/source/DNBBreakpoint.h
ebugserver/source/DNBDefs.h
|
5b4b00f5fd83d87de954d80d54fd6cc922772c19 |
02-Sep-2011 |
Johnny Chen <johnny.chen@apple.com> |
Watchpoint work in progress: Add a virtual method GetHardwareWatchpointHit() to the DNBArchProtocol base class which consults the architecture to return the watchpoint hit; otherwise return an invalid index. Add impl. of the method to X86_64 and I386 subclasses, plus reset the debug status register before we resume execution of the inferior thread. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@139034 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/DNBArch.h
ebugserver/source/MacOSX/i386/DNBArchImplI386.cpp
ebugserver/source/MacOSX/i386/DNBArchImplI386.h
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.cpp
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.h
|
fe98a2e6d17f0cb3ffa4a071bb43eb76c339adef |
31-Aug-2011 |
Johnny Chen <johnny.chen@apple.com> |
Renaming: from IsVacantWatchpoint() to IsWatchpointVacant(). git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@138907 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/i386/DNBArchImplI386.cpp
ebugserver/source/MacOSX/i386/DNBArchImplI386.h
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.cpp
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.h
|
0875a979e39324f0b8e7597b8ba37cca9efa0d27 |
31-Aug-2011 |
Johnny Chen <johnny.chen@apple.com> |
Renamed the helper method to ClearWatchpointHits() for clarity of its purpose. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@138899 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/i386/DNBArchImplI386.cpp
ebugserver/source/MacOSX/i386/DNBArchImplI386.h
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.cpp
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.h
|
9d544f43d8c1637c45562f1402012c235f648ee9 |
31-Aug-2011 |
Johnny Chen <johnny.chen@apple.com> |
Add a couple of helper methods to check/clear the debug status register which contains the watchpoint hit information. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@138881 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/i386/DNBArchImplI386.cpp
ebugserver/source/MacOSX/i386/DNBArchImplI386.h
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.cpp
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.h
|
d1119941f77f56d9660d1666c47df8f24e4408e2 |
31-Aug-2011 |
Johnny Chen <johnny.chen@apple.com> |
Fix the shift amount applied to size_and_rw_bits() for debug control register, which did not take into account the hardware index. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@138867 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/i386/DNBArchImplI386.cpp
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.cpp
|
503b407390ee67099415d6bdac30d66c53ddcd0d |
31-Aug-2011 |
Johnny Chen <johnny.chen@apple.com> |
Update comments. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@138863 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/i386/DNBArchImplI386.cpp
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.cpp
|
25d2818c62140bb79cc3d689c4052b306c59c6b7 |
31-Aug-2011 |
Johnny Chen <johnny.chen@apple.com> |
Watchpoint work in progress: add helper methods to DNB arch impl for I386 to implment Enable/DisableHardwareWatchpoint. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@138847 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/i386/DNBArchImplI386.cpp
ebugserver/source/MacOSX/i386/DNBArchImplI386.h
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.h
|
738fe1ba1fb9b7add6f5be5d65c6f73c944b422f |
31-Aug-2011 |
Johnny Chen <johnny.chen@apple.com> |
Watchpoint work in progress: add helper methods to DNB arch impl for X86_64 to implment Enable/DisableHardwareWatchpoint. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@138844 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/i386/DNBArchImplI386.cpp
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.cpp
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.h
|
eb0eae254e4e2d737b9c137296197a70a1ba7f68 |
30-Aug-2011 |
Johnny Chen <johnny.chen@apple.com> |
Add stubs of incomplete watchpoint implementation with "FIXME" markers. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@138790 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/i386/DNBArchImplI386.cpp
ebugserver/source/MacOSX/i386/DNBArchImplI386.h
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.cpp
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.h
ebugserver/source/RNBRemote.cpp
|
e39356825b86cd7484097ca4c4c9f07f9ff95e2e |
29-Aug-2011 |
Greg Clayton <gclayton@apple.com> |
Added the debug registers for i386 and x86_64 in preparation for watchpoints. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@138770 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/i386/DNBArchImplI386.cpp
ebugserver/source/MacOSX/i386/DNBArchImplI386.h
ebugserver/source/MacOSX/i386/MachRegisterStatesI386.h
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.cpp
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.h
ebugserver/source/MacOSX/x86_64/MachRegisterStatesX86_64.h
|
0605942377d954195c7c7b0a79c831233fb4e9ef |
29-Aug-2011 |
Johnny Chen <johnny.chen@apple.com> |
Remove an extra break statement. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@138763 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/RNBRemote.cpp
|
cf0de2677d7c01d9117c782f67b85fa29d115c2a |
17-Aug-2011 |
Jim Ingham <jingham@apple.com> |
Better help string for "lldb -- file arg1 arg2..." git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@137789 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
6ae254432fed5ba37a8114e8a51702accaae5bb9 |
17-Aug-2011 |
Jim Ingham <jingham@apple.com> |
Document how to pass program args to lldb command-line. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@137784 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
c5d97ed051278b521e2e540261ba0f2d649fe05e |
17-Aug-2011 |
Greg Clayton <gclayton@apple.com> |
Bumped Xcode project versions for lldb-73 and debugserver-144. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@137782 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
e1db7c764dbe04bbb2c7050b9372730df8aec27a |
13-Aug-2011 |
Greg Clayton <gclayton@apple.com> |
Bumped Xcode project versions for lldb-72 and debugserver-143. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@137547 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
558dd5bc8b25722fa5b5106586b97ecf99e0026e |
13-Aug-2011 |
Jim Ingham <jingham@apple.com> |
Add a version of SBDebugger::Create which allows us to specify whether to source in the init files or not. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@137541 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
bedc667c905c55de911d8b9195039d82e6cf0121 |
12-Aug-2011 |
Jason Molenda <jmolenda@apple.com> |
Fixes the occasional crash on exit when quitting lldb with control-D. If the IOChannel has already freed out its m_driver member, and there's still a character to be read/written (that is, the ^D character), just skip that char instead of trying to write through a null object pointer. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@137421 91177308-0d34-0410-b5e6-96231b3b80d8
river/IOChannel.cpp
|
1e1460b1999eabcbd5319930b137b03df6a770aa |
11-Aug-2011 |
Johnny Chen <johnny.chen@apple.com> |
To silence the static analyzer. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@137326 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/DNB.cpp
|
7559f33de7b3706324fcc8467179463f7aaec348 |
11-Aug-2011 |
Johnny Chen <johnny.chen@apple.com> |
To silence the static analyzer. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@137319 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/DNBDataRef.cpp
|
178e101a9e53ba2cb458c20702a98d76dd851c87 |
11-Aug-2011 |
Johnny Chen <johnny.chen@apple.com> |
Incremental fixes of issues found by Xcode static analyzer. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@137288 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/RNBRemote.cpp
|
8bc9af185a3022aa739a402a4290b60b78d7a2ed |
11-Aug-2011 |
Jim Ingham <jingham@apple.com> |
In the case where we are trying to resume a thread all the way to 0, if we get git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@137287 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachThread.cpp
|
0734eb08c3ac64ca33681d904d931a27d0d9bd5a |
11-Aug-2011 |
Johnny Chen <johnny.chen@apple.com> |
Ignore the static analyzer, instead; and add comment why. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@137275 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachProcess.cpp
|
9a7749c6dd24f85e423066b8877bd9edc62f13cf |
11-Aug-2011 |
Johnny Chen <johnny.chen@apple.com> |
Incremental fixes of issues found by Xcode static analyzer. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@137267 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachProcess.cpp
ebugserver/source/debugserver.cpp
|
ee6e790171b9a04023d0ea22603f0ac0ecb9a2c6 |
11-Aug-2011 |
Johnny Chen <johnny.chen@apple.com> |
Incremental fixes of issues found by Xcode static analyzer. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@137257 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
river/IOChannel.cpp
|
c0c397fbb8d4145a62b036c2104aab7e34d84ed2 |
09-Aug-2011 |
Sean Callanan <scallanan@apple.com> |
Fixed a problem where the HasAVX() code in debugserver did not back up %ebx/%rbx, even though it was being clobbered by the CPUID instruction. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@137131 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/HasAVX.s
ebugserver/source/MacOSX/i386/DNBArchImplI386.h
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.h
|
153191e36fcc528c393f0290a646d3f777a33695 |
09-Aug-2011 |
Greg Clayton <gclayton@apple.com> |
The "bool HasAVX()" function doesn't backup and restore the cpu registers it uses and it crashes the release version of debugserver. We just get lucky in Debug builds. Until this is fixed I am disabling AVX detection to avoid the crashes. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@137113 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/i386/DNBArchImplI386.h
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.h
|
716cefbded5b438eeb8d310d3965dd1be86bcc46 |
09-Aug-2011 |
Greg Clayton <gclayton@apple.com> |
Added some logging and did some member renaming. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@137112 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachThread.cpp
ebugserver/source/MacOSX/MachThread.h
|
0eeaa9846d816181372d6ebee34de37c8bd21efb |
09-Aug-2011 |
Jim Ingham <jingham@apple.com> |
Remove some commented out code that doesn't connect to anything yet... git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@137081 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
4b66329ac82b5f3d939bd31b4d1498da9257d85a |
02-Aug-2011 |
Johnny Chen <johnny.chen@apple.com> |
Patch by David Forsythe to build lldb on FreeBSD! I did not take the patch for ClangExpressionParser.cpp since there was a recent change by Peter for the same line. Feel free to disagree. :-) Reference: ---------------------------------------------------------------------- r136580 | pcc | 2011-07-30 15:42:24 -0700 (Sat, 30 Jul 2011) | 3 lines Add reloc arg to standard JIT createJIT() Fixes non-__APPLE__ build. Patch by Matt Johnson! ---------------------------------------------------------------------- Also, I ignore the part of the patch to remove the RegisterContextDarwin*.h/.cpp. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@136720 91177308-0d34-0410-b5e6-96231b3b80d8
river/IOChannel.h
river/Makefile
|
19395ef188f143d4082910c59bc775d2af96920d |
01-Aug-2011 |
Greg Clayton <gclayton@apple.com> |
Update Xcode project versions to lldb-70 and debugserver-142. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@136606 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
d05213b79411eb12bcd75f07d33f5245c07edb0d |
26-Jul-2011 |
Jason Molenda <jmolenda@apple.com> |
RNBRemote.cpp, RNBRemote.h: Add a new qGetPid packet which returns the pid of the process currently being debugged by debugserer in hex, or 0 if unavailable. This is effectively the same as the qC packet but that packet is not clear in either its documentation or implementation (in gdb et al) as to whether it is intended to return a pid or a thread id. qGetPid is unambiguous. If qGetPid is unimplemented in the remote debugserver, the debugger may try qC and see what kind of value is returned.. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@136055 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/RNBRemote.cpp
ebugserver/source/RNBRemote.h
|
aa43001dd4d178ca7132801c5af1b878afd970f1 |
21-Jul-2011 |
Jim Ingham <jingham@apple.com> |
If we are telling only one thread to run in debugserver, and that thread has been suspended from outside the debugger, resume it before running so we will actually make progress. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@135655 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachThread.cpp
ebugserver/source/MacOSX/MachThread.h
ebugserver/source/MacOSX/MachThreadList.cpp
|
db15e0cbbd18d6cd10a0197bae31aafb9e078365 |
16-Jul-2011 |
Sean Callanan <scallanan@apple.com> |
Added support for dynamic detection of AVX, and fixed a few bugs that revealed. Now the "register read" command should show AVX registers (ymm0-ymm15) on Mac OS X platforms that support them. When testing this on Mac OS X, run debugserver manually, like this: debugserver --native-regs localhost:1111 /path/to/executable Then lldb /path/to/executable ... (lldb) process connect connect://localhost:1111 git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@135331 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
ebugserver/source/MacOSX/HasAVX.h
ebugserver/source/MacOSX/HasAVX.s
ebugserver/source/MacOSX/i386/DNBArchImplI386.cpp
ebugserver/source/MacOSX/i386/DNBArchImplI386.h
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.cpp
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.h
|
6247dbee41ec51e9a082df7e86269c0f47f28160 |
12-Jul-2011 |
Jim Ingham <jingham@apple.com> |
Added "command history" command to dump the command history. Also made: (lldb) !<NUM> (lldb) !-<NUM> (lldb) !! work with the history. For added benefit: (lldb) !<NUM><TAB> will insert the command at position <NUM> in the history into the command line to be edited. This is only partial, I still need to sync up editline's history list with the one kept by the interpreter. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@134955 91177308-0d34-0410-b5e6-96231b3b80d8
river/IOChannel.cpp
|
9b82f8637b65c90e91c2827245550a1bb5e8df91 |
11-Jul-2011 |
Greg Clayton <gclayton@apple.com> |
Added the ability to see block variables when looking up addresses with the "target modules lookup --address <addr>" command. The variable ID's, names, types, location for the address, and declaration is displayed. This can really help with crash logs since we get, on MacOSX at least, the registers for the thread that crashed so it is often possible to figure out some of the variable contents. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@134886 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.cpp
|
00e4f65fdcf4941348534a488c89badc78bd4740 |
08-Jul-2011 |
Jason Molenda <jmolenda@apple.com> |
Rewrite get_kinfo_proc_for_pid() to get the kinfo_proc for the one process we're interested in, instead of fetching all of them and only keeping one. (the old implementation made sense when we were doing the initial find-this-process-by-pid-or-name by looking through all the kinfo_procs.) git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@134686 91177308-0d34-0410-b5e6-96231b3b80d8
arwin-threads/examine-threads.c
|
37f1b929ece512d5ad525f319b8705c123ba9835 |
08-Jul-2011 |
Jason Molenda <jmolenda@apple.com> |
Handle the possible case where the process launch failed but we don't have an error message. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@134662 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/debugserver.cpp
|
801417e453f8531ac176cd952200587bf15d9ccf |
07-Jul-2011 |
Greg Clayton <gclayton@apple.com> |
Added "target variable" command that allows introspection of global variables prior to running your binary. Zero filled sections now get section data correctly filled with zeroes when Target::ReadMemory reads from the object file section data. Added new option groups and option values for file lists. I still need to hook up all of the options to "target variable" to allow more complete introspection by file and shlib. Added the ability for ValueObjectVariable objects to be created with only the target as the execution context. This allows them to be read from the object files through Target::ReadMemory(...). Added a "virtual Module * GetModule()" function to the ValueObject class. By default it will look to the parent variable object and return its module. The module is needed when we have global variables that have file addresses (virtual addresses that are specific to module object files) and in turn allows global variables to be displayed prior to running. Removed all of the unused proxy object support that bit rotted in lldb_private::Value. Replaced a lot of places that used "FileSpec::Compare (lhs, rhs) == 0" code with the more efficient "FileSpec::Equal (lhs, rhs)". Improved logging in GDB remote plug-in. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@134579 91177308-0d34-0410-b5e6-96231b3b80d8
ldb-platform/lldb-platform.cpp
|
e99aa886452424f945d862dcacdf252c785f5ec9 |
01-Jul-2011 |
Greg Clayton <gclayton@apple.com> |
Bump Xcode project version to lldb-66 and debugserver-141. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@134232 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
787554b1aeebf6198ace0a5267051792a24e1e19 |
30-Jun-2011 |
Jason Molenda <jmolenda@apple.com> |
Restructure to be modular instead of a single big function; should make it a little easier to use this as an example of how to fetch all the different bits of information about threads. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@134135 91177308-0d34-0410-b5e6-96231b3b80d8
arwin-threads/examine-threads.c
|
87ac9024b5ae2d4f1f66ea9128acb8e76825b358 |
25-Jun-2011 |
Greg Clayton <gclayton@apple.com> |
Bumped Xcode project versions to lldb-65 and debugserver-140. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@133865 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
04f081d0572d046456009ce8273ab2ff0a985219 |
25-Jun-2011 |
Jason Molenda <jmolenda@apple.com> |
Add support for a QEnvironmentHexEncoded packet which takes its arguments in hex-encoded form instead of the old QEnvironment packet which takes them as plain-text strings. Environment variables containing remote protocol special chars like '#' would fail to set with QEnvironment. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@133857 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/RNBRemote.cpp
ebugserver/source/RNBRemote.h
|
a4082f009b0c0284533759398ef2e49fc37a1d3c |
21-Jun-2011 |
Jason Molenda <jmolenda@apple.com> |
Replace examine-threads.c with a similar little utility I wrote a while back. By default its output will be less verbose than the old examine-threads.c but adding the '-v' command line flag will give all the information that examine-threads.c provided plus some. Of note, this implementation can take a process name -- and it will use the libproc API so it can match program names longer than 16 characters. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@133500 91177308-0d34-0410-b5e6-96231b3b80d8
arwin-threads/examine-threads.c
|
63afdb07641f04aa7b60d895120b056124d3469b |
17-Jun-2011 |
Greg Clayton <gclayton@apple.com> |
Improved the packet throughput when debugging with GDB remote by over 3x on darwin (not sure about other platforms). Modified the communication and connection classes to not require the BytesAvailable function. Now the "Read(...)" function has a timeout in microseconds. Fixed a lot of assertions that were firing off in certain cases and replaced them with error output and code that can deal with the assertion case. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@133224 91177308-0d34-0410-b5e6-96231b3b80d8
ldb-platform/lldb-platform.cpp
|
c40dfc53ced2a8a8243f410e90eab4fbbe63f1a6 |
04-Jun-2011 |
Greg Clayton <gclayton@apple.com> |
Don't codesign with lldb_codesign for non MacOSX SDKs. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@132597 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
421ca5014ea0e163998b9a8e0d777d3adb5c872e |
29-May-2011 |
Greg Clayton <gclayton@apple.com> |
Don't have the debugger default to ignoring EOF. This is only what the driver (or anything running in a terminal) wants. Not what a UI (Xcode) would want where it creates a debugger per debug window. The current code had an infinite loop after a debug session ended. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@132280 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
7d20d2b20f4a9b120b953bedcfa1750f55ccc8bf |
26-May-2011 |
Greg Clayton <gclayton@apple.com> |
lldb-56 with codesign settings fixed in the Xcode projects. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@132123 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
225b8e7175981bc8e35c1a9312941334d49529fe |
25-May-2011 |
Greg Clayton <gclayton@apple.com> |
Bumping Xcode project versions for lldb-55 and debugserver-139. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@132067 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
04d397c5e251eaa5f520dbe6381d2a82303350e1 |
23-May-2011 |
Greg Clayton <gclayton@apple.com> |
Fixed an issue in the EmulateInstructionARM there the IT opcode was trying to parse NOP instructions. I added the new table entries for the NOP for the plain NOP, Yield, WFE, WFI, and SEV variants. Modified the opcode emulation function EmulateInstructionARM::EmulateMOVRdSP(...) to notify us when it is creating a frame. Also added an abtract way to detect the frame pointer register for both the standard ARM ABI and for Darwin. Fixed GDBRemoteRegisterContext::WriteAllRegisterValues(...) to correctly be able to individually write register values back if case the 'G' packet is not implemented or returns an error. Modified the StopInfoMachException to "trace" stop reasons. On ARM we currently use the BVR/BCR register pairs to say "stop when the PC is not equal to the current PC value", and this results in a EXC_BREAKPOINT mach exception that has 0x102 in the code. Modified debugserver to create the short option string from long option definitions to make sure it doesn't get out of date. The short option string was missing many of the newer short option values due to a modification of the long options defs, and not modifying the short option string. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@131911 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/arm/DNBArchImpl.cpp
ebugserver/source/RNBRemote.cpp
ebugserver/source/debugserver.cpp
|
c0fa53324d62a48257c092a3347d6e7236aa3152 |
23-May-2011 |
Greg Clayton <gclayton@apple.com> |
Added new lldb_private::Process memory read/write functions to stop a bunch of duplicated code from appearing all over LLDB: lldb::addr_t Process::ReadPointerFromMemory (lldb::addr_t vm_addr, Error &error); bool Process::WritePointerToMemory (lldb::addr_t vm_addr, lldb::addr_t ptr_value, Error &error); size_t Process::ReadScalarIntegerFromMemory (lldb::addr_t addr, uint32_t byte_size, bool is_signed, Scalar &scalar, Error &error); size_t Process::WriteScalarToMemory (lldb::addr_t vm_addr, const Scalar &scalar, uint32_t size, Error &error); in lldb_private::Process the following functions were renamed: From: uint64_t Process::ReadUnsignedInteger (lldb::addr_t load_addr, size_t byte_size, Error &error); To: uint64_t Process::ReadUnsignedIntegerFromMemory (lldb::addr_t load_addr, size_t byte_size, uint64_t fail_value, Error &error); Cleaned up a lot of code that was manually doing what the above functions do to use the functions listed above. Added the ability to get a scalar value as a buffer that can be written down to a process (byte swapping the Scalar value if needed): uint32_t Scalar::GetAsMemoryData (void *dst, uint32_t dst_len, lldb::ByteOrder dst_byte_order, Error &error) const; The "dst_len" can be smaller that the size of the scalar and the least significant bytes will be written. "dst_len" can also be larger and the most significant bytes will be padded with zeroes. Centralized the code that adds or removes address bits for callable and opcode addresses into lldb_private::Target: lldb::addr_t Target::GetCallableLoadAddress (lldb::addr_t load_addr, AddressClass addr_class) const; lldb::addr_t Target::GetOpcodeLoadAddress (lldb::addr_t load_addr, AddressClass addr_class) const; All necessary lldb_private::Address functions now use the target versions so changes should only need to happen in one place if anything needs updating. Fixed up a lot of places that were calling : addr_t Address::GetLoadAddress(Target*); to call the Address::GetCallableLoadAddress() or Address::GetOpcodeLoadAddress() as needed. There were many places in the breakpoint code where things could go wrong for ARM if these weren't used. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@131878 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachThread.cpp
|
5a26910ed231503d2a7a71365a44e379a994f4e6 |
22-May-2011 |
Greg Clayton <gclayton@apple.com> |
Added functions to lldb_private::Address to set an address from a load address and set the address as an opcode address or as a callable address. This is needed in various places in the thread plans to make sure that addresses that might be found in symbols or runtime might already have extra bits set (ARM/Thumb). The new functions are: bool Address::SetCallableLoadAddress (lldb::addr_t load_addr, Target *target); bool Address::SetOpcodeLoadAddress (lldb::addr_t load_addr, Target *target); SetCallableLoadAddress will initialize a section offset address if it can, and if so it might possibly set some bits in the address to make the address callable (bit zero might get set for ARM for Thumb functions). SetOpcodeLoadAddress will initialize a section offset address using the specified target and it will strip any special address bits if needed depending on the target. Fixed the ABIMacOSX_arm::GetArgumentValues() function to require arguments 1-4 to be in the needed registers (previously this would incorrectly fallback to the stack) and return false if unable to get the register values. The function was also modified to first look for the generic argument registers and then fall back to finding the registers by name. Fixed the objective trampoline handler to use the new Address::SetOpcodeLoadAddress function when needed to avoid address mismatches when trying to complete steps into objective C methods. Make similar fixes inside the AppleThreadPlanStepThroughObjCTrampoline::ShouldStop() function. Modified ProcessGDBRemote::BuildDynamicRegisterInfo(...) to be able to deal with the new generic argument registers. Modified RNBRemote::HandlePacket_qRegisterInfo() to handle the new generic argument registers on the debugserver side. Modified DNBArchMachARM::NumSupportedHardwareBreakpoints() to be able to detect how many hardware breakpoint registers there are using a darwin sysctl. Did the same for hardware watchpoints in DNBArchMachARM::NumSupportedHardwareWatchpoints(). git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@131834 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/arm/DNBArchImpl.cpp
ebugserver/source/RNBRemote.cpp
|
845d6dac85acc72334aeef730f088168fe0eaf36 |
16-May-2011 |
Caroline Tice <ctice@apple.com> |
Fix places that were writing directly to the debugger's output handles to go through the appropriate channels instead. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@131415 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
d45c3d7d55439692aa3215a709046944353b5917 |
16-May-2011 |
Greg Clayton <gclayton@apple.com> |
Added the ability to get a 32 or 64 bit simple return value from the ABIMacOSX_arm plugin. Modified darwin-debug to print out the exectuable, working directory and arguments a bit differently. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@131392 91177308-0d34-0410-b5e6-96231b3b80d8
arwin-debug/darwin-debug.cpp
|
997b1e82f098a8b748b490d1ae6d0bbe597a59d5 |
15-May-2011 |
Greg Clayton <gclayton@apple.com> |
Added generic register numbers for simple ABI argument registers and defined the appropriate registers for arm and x86_64. The register names for the arguments that are the size of a pointer or less are all named "arg1", "arg2", etc. This allows you to read these registers by name: (lldb) register read arg1 arg2 arg3 ... You can also now specify you want to see alternate register names when executing the read register command: (lldb) register read --alternate (lldb) register read -A git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@131376 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/DNBDefs.h
ebugserver/source/MacOSX/arm/DNBArchImpl.cpp
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.cpp
|
75906e4ec98af3717e415727a8d663a4e246bb4f |
11-May-2011 |
Greg Clayton <gclayton@apple.com> |
Moved all code from ArchDefaultUnwindPlan and ArchVolatileRegs into their respective ABI plugins as they were plug-ins that supplied ABI specfic info. Also hookep up the UnwindAssemblyInstEmulation so that it can generate the unwind plans for ARM. Changed the way ABI plug-ins are handed out when you get an instance from the plug-in manager. They used to return pointers that would be mananged individually by each client that requested them, but now they are handed out as shared pointers since there is no state in the ABI objects, they can be shared. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@131193 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
b38df1e945846a5d956974ec157902a6ad748868 |
10-May-2011 |
Caroline Tice <ctice@apple.com> |
Make sure writing asynchronous output only backs up & overwrites prompt if the IOChannel input reader is the top input reader. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@131110 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.h
river/IOChannel.cpp
|
6b077117ad57c969286f72aae1d387ecd88769f5 |
09-May-2011 |
Greg Clayton <gclayton@apple.com> |
Revert some unintended project changes from my last checkin. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@131097 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
061b79dbf1fefaf157d414747e98a463a0f32eda |
09-May-2011 |
Greg Clayton <gclayton@apple.com> |
While implementing unwind information using UnwindAssemblyInstEmulation I ran into some cleanup I have been wanting to do when reading/writing registers. Previously all RegisterContext subclasses would need to implement: virtual bool ReadRegisterBytes (uint32_t reg, DataExtractor &data); virtual bool WriteRegisterBytes (uint32_t reg, DataExtractor &data, uint32_t data_offset = 0); There is now a new class specifically designed to hold register values: lldb_private::RegisterValue The new register context calls that subclasses must implement are: virtual bool ReadRegister (const RegisterInfo *reg_info, RegisterValue ®_value) = 0; virtual bool WriteRegister (const RegisterInfo *reg_info, const RegisterValue ®_value) = 0; The RegisterValue class must be big enough to handle any register value. The class contains an enumeration for the value type, and then a union for the data value. Any integer/float values are stored directly in an appropriate host integer/float. Anything bigger is stored in a byte buffer that has a length and byte order. The RegisterValue class also knows how to copy register value bytes into in a buffer with a specified byte order which can be used to write the register value down into memory, and this does the right thing when not all bytes from the register values are needed (getting a uint8 from a uint32 register value..). All RegiterContext and other sources have been switched over to using the new regiter value class. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@131096 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
5e47385b4f036f79b2acf6ea58b6fd6a40763443 |
09-May-2011 |
Jim Ingham <jingham@apple.com> |
Change an unconditional log to a conditional one. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@131079 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.cpp
|
a4582404fa50f89485e69a17281673147217d64f |
08-May-2011 |
Greg Clayton <gclayton@apple.com> |
Fixed not being able to launch the i386 slice of a universal binary by adding a new "QLaunchArch:<arch-name>" where <arch-name> is the architecture name. This allows us to remotely launch a debugserver and then set the architecture for the binary we will launch. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@131064 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/RNBRemote.cpp
ebugserver/source/RNBRemote.h
|
882c554207e94f66ba8d652302a9d817f275dc4e |
04-May-2011 |
Caroline Tice <ctice@apple.com> |
Add ability to search backwards through command history for a particular substring, using ctrl-r key. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@130871 91177308-0d34-0410-b5e6-96231b3b80d8
river/IOChannel.cpp
|
c5f0b99c2c2e40dca22cf11208da70ae979a37e8 |
04-May-2011 |
Caroline Tice <ctice@apple.com> |
Minor cleanup: When asynchronous output comes along, back up over and delete the prompt before writing out the asynchronous output, rather than just going to a new line. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@130843 91177308-0d34-0410-b5e6-96231b3b80d8
river/IOChannel.cpp
|
e1f50b9df1299f6b9181b5ac2699ed4a3ad38a59 |
04-May-2011 |
Greg Clayton <gclayton@apple.com> |
Added new OptionGroup classes for UInt64, UUID, File and Boolean values. Removed the "image" command and moved it to "target modules". Added an alias for "image" to "target modules". Added some new target commands to be able to add and load modules to a target: (lldb) target modules add <path> (lldb) target modules load [--file <path>] [--slide <offset>] [<sect-name> <sect-load-addr> ...] So you can load individual sections without running a target: (lldb) target modules load --file /usr/lib/libSystem.B.dylib __TEXT 0x7fccc80000 __DATA 0x1234000000 Or you can rigidly slide an entire shared library: (lldb) target modules load --file /usr/lib/libSystem.B.dylib --slid 0x7fccc80000 This should improve bare board debugging when symbol files need to be slid around manually. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@130796 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/DNB.cpp
ebugserver/source/MacOSX/MachThread.cpp
ebugserver/source/MacOSX/i386/DNBArchImplI386.cpp
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.cpp
ebugserver/source/RNBContext.cpp
ebugserver/source/RNBRemote.cpp
ebugserver/source/RNBRemote.h
|
388ca8fef002edf49d66126efa8f4dff7176edc1 |
03-May-2011 |
Caroline Tice <ctice@apple.com> |
Make the driver listen for asynchronous output, rather than the IOChannel, so that it can be written out even while the IOChannel is collecting user input. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@130789 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
river/IOChannel.cpp
river/IOChannel.h
|
4a348081030cdd2af758fddc869518357d9befd3 |
02-May-2011 |
Caroline Tice <ctice@apple.com> |
This patch captures and serializes all output being written by the command line driver, including the lldb prompt being output by editline, the asynchronous process output & error messages, and asynchronous messages written by target stop-hooks. As part of this it introduces a new Stream class, StreamAsynchronousIO. A StreamAsynchronousIO object is created with a broadcaster, who will eventually broadcast the stream's data for a listener to handle, and an event type indicating what type of event the broadcaster will broadcast. When the Write method is called on a StreamAsynchronousIO object, the data is appended to an internal string. When the Flush method is called on a StreamAsynchronousIO object, it broadcasts it's data string and clears the string. Anything in lldb-core that needs to generate asynchronous output for the end-user should use the StreamAsynchronousIO objects. I have also added a new notification type for InputReaders, to let them know that a asynchronous output has been written. This is to allow the input readers to, for example, refresh their prompts and lines, if desired. I added the case statements to all the input readers to catch this notification, but I haven't added any code for handling them yet (except to the IOChannel input reader). git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@130721 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
river/Driver.h
river/IOChannel.cpp
river/IOChannel.h
|
97eecb1834431b39d4d58257f8ccfdea1db7f1de |
25-Apr-2011 |
Greg Clayton <gclayton@apple.com> |
Put plug-ins into the correct directories as they were incorrectly located in a Utility directory. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@130135 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
abe0fed36d83e1c37af9dae90c2d25db742b4515 |
18-Apr-2011 |
Greg Clayton <gclayton@apple.com> |
Centralized a lot of the status information for processes, threads, and stack frame down in the lldb_private::Process, lldb_private::Thread, lldb_private::StackFrameList and the lldb_private::StackFrame classes. We had some command line commands that had duplicate versions of the process status output ("thread list" and "process status" for example). Removed the "file" command and placed it where it should have been: "target create". Made an alias for "file" to "target create" so we stay compatible with GDB commands. We can now have multple usable targets in lldb at the same time. This is nice for comparing two runs of a program or debugging more than one binary at the same time. The new command is "target select <target-idx>" and also to see a list of the current targets you can use the new "target list" command. The flow in a debug session can be: (lldb) target create /path/to/exe/a.out (lldb) breakpoint set --name main (lldb) run ... hit breakpoint (lldb) target create /bin/ls (lldb) run /tmp Process 36001 exited with status = 0 (0x00000000) (lldb) target list Current targets: target #0: /tmp/args/a.out ( arch=x86_64-apple-darwin, platform=localhost, pid=35999, state=stopped ) * target #1: /bin/ls ( arch=x86_64-apple-darwin, platform=localhost, pid=36001, state=exited ) (lldb) target select 0 Current targets: * target #0: /tmp/args/a.out ( arch=x86_64-apple-darwin, platform=localhost, pid=35999, state=stopped ) target #1: /bin/ls ( arch=x86_64-apple-darwin, platform=localhost, pid=36001, state=exited ) (lldb) bt * thread #1: tid = 0x2d03, 0x0000000100000b9a a.out`main + 42 at main.c:16, stop reason = breakpoint 1.1 frame #0: 0x0000000100000b9a a.out`main + 42 at main.c:16 frame #1: 0x0000000100000b64 a.out`start + 52 Above we created a target for "a.out" and ran and hit a breakpoint at "main". Then we created a new target for /bin/ls and ran it. Then we listed the targest and selected our original "a.out" program, so we showed two concurent debug sessions going on at the same time. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@129695 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
e41494a9092e15192012a5e0a8a1ffd66c70b8bb |
16-Apr-2011 |
Jim Ingham <jingham@apple.com> |
Add support for "dynamic values" for C++ classes. This currently only works for "frame var" and for the expressions that are simple enough to get passed to the "frame var" underpinnings. The parser code will have to be changed to also query for the dynamic types & offsets as it is looking up variables. The behavior of "frame var" is controlled in two ways. You can pass "-d {true/false} to the frame var command to get the dynamic or static value of the variables you are printing. There's also a general setting: target.prefer-dynamic-value (boolean) = 'true' which is consulted if you call "frame var" without supplying a value for the -d option. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@129623 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
5e342f50b42b265d8568e1c926328858e74b2c0a |
14-Apr-2011 |
Greg Clayton <gclayton@apple.com> |
Added auto completion for architecture names and for platforms. Modified the OptionGroupOptions to be able to specify only some of the options that should be appended by using the usage_mask in the group defintions and also provided a way to remap them to a new usage mask after the copy. This allows options to be re-used and also targetted for specific option groups. Modfied the CommandArgumentType to have a new eArgTypePlatform enumeration. Taught the option parser to be able to automatically use the appropriate auto completion for a given options if nothing is explicitly specified in the option definition. So you don't have to specify it in the option definition tables. Renamed the default host platform name to "host", and the default platform hostname to be "localhost". Modified the "file" and "platform select" commands to make sure all options and args are good prior to creating a new platform. Also defer the computation of the architecture in the file command until all options are parsed and the platform has either not been specified or reset to a new value to avoid computing the arch more than once. Switch the PluginManager code over to using llvm::StringRef for string comparisons and got rid of all the AccessorXXX functions in lieu of the newer mutex + collection singleton accessors. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@129483 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
b72d0f098e45936fa72e26b1a026c603e17e2d6c |
12-Apr-2011 |
Greg Clayton <gclayton@apple.com> |
Moved the execution context that was in the Debugger into the CommandInterpreter where it was always being used. Make sure that Modules can track their object file offsets correctly to allow opening of sub object files (like the "__commpage" on darwin). Modified the Platforms to be able to launch processes. The first part of this move is the platform soon will become the entity that launches your program and when it does, it uses a new ProcessLaunchInfo class which encapsulates all process launching settings. This simplifies the internal APIs needed for launching. I want to slowly phase out process launching from the process classes, so for now we can still launch just as we used to, but eventually the platform is the object that should do the launching. Modified the Host::LaunchProcess in the MacOSX Host.mm to correctly be able to launch processes with all of the new eLaunchFlag settings. Modified any code that was manually launching processes to use the Host::LaunchProcess functions. Fixed an issue where lldb_private::Args had implicitly defined copy constructors that could do the wrong thing. This has now been fixed by adding an appropriate copy constructor and assignment operator. Make sure we don't add empty ModuleSP entries to a module list. Fixed the commpage module creation on MacOSX, but we still need to train the MacOSX dynamic loader to not get rid of it when it doesn't have an entry in the all image infos. Abstracted many more calls from in ProcessGDBRemote down into the GDBRemoteCommunicationClient subclass to make the classes cleaner and more efficient. Fixed the default iOS ARM register context to be correct and also added support for targets that don't support the qThreadStopInfo packet by selecting the current thread (only if needed) and then sending a stop reply packet. Debugserver can now start up with a --unix-socket (-u for short) and can then bind to port zero and send the port it bound to to a listening process on the other end. This allows the GDB remote platform to spawn new GDB server instances (debugserver) to allow platform debugging. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@129351 91177308-0d34-0410-b5e6-96231b3b80d8
arwin-debug/darwin-debug.cpp
ebugserver/source/MacOSX/CFString.h
ebugserver/source/RNBSocket.cpp
ebugserver/source/RNBSocket.h
ebugserver/source/debugserver.cpp
ldb-platform/lldb-platform.cpp
|
dbeb3e1e038a75f00fd565203839020e1d00a7c6 |
11-Apr-2011 |
Stephen Wilson <wilsons@start.ca> |
Order of initialization lists. This patch fixes all of the warnings due to unordered initialization lists. Patch by Marco Minutoli. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@129290 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
06d7cc86937caca0acf2b990a02a641dc9c7579a |
04-Apr-2011 |
Greg Clayton <gclayton@apple.com> |
Added a speed test to the GDBRemoteCommunicationClient and GDBRemoteCommunicationServer classes. This involved adding a new packet named "qSpeedTest" which can test the speed of a packet send/response pairs using a wide variety of send/recv packet sizes. Added a few new connection classes: one for shared memory, and one for using mach messages (Apple only). The mach message stuff is experimental and not working yet, but added so I don't lose the code. The shared memory stuff uses pretty standard calls to setup shared memory. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@128837 91177308-0d34-0410-b5e6-96231b3b80d8
ldb-platform/lldb-platform.cpp
|
381f968161e2274c55706ead0baed444a26b5092 |
01-Apr-2011 |
Greg Clayton <gclayton@apple.com> |
Get rid of LONG_LONG_MAX and ULONG_LONG_MAX, and use LLONG_MAX and ULLONG_MAX respectively. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@128720 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/DNBDataRef.cpp
|
ff39f746ebaa3710c44ba49bd9b0a6cf05f60a3f |
01-Apr-2011 |
Greg Clayton <gclayton@apple.com> |
Added the ability to get a broadcaster event name for a given broadcaster event. Modified the ProcessInfo structure to contain all process arguments. Using the new function calls on MacOSX allows us to see the full process name, not just the first 16 characters. Added a new platform command: "platform process info <pid> [<pid> <pid> ...]" that can be used to get detailed information for a process including all arguments, user and group info and more. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@128694 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/RNBSocket.cpp
ebugserver/source/RNBSocket.h
ebugserver/source/debugserver.cpp
|
24bc5d9bfad2a1c562c27e7cf37e1c56d85c45e7 |
30-Mar-2011 |
Greg Clayton <gclayton@apple.com> |
Many improvements to the Platform base class and subclasses. The base Platform class now implements the Host functionality for a lot of things that make sense by default so that subclasses can check: int PlatformSubclass::Foo () { if (IsHost()) return Platform::Foo (); // Let the platform base class do the host specific stuff // Platform subclass specific code... int result = ... return result; } Added new functions to the platform: virtual const char *Platform::GetUserName (uint32_t uid); virtual const char *Platform::GetGroupName (uint32_t gid); The user and group names are cached locally so that remote platforms can avoid sending packets multiple times to resolve this information. Added the parent process ID to the ProcessInfo class. Added a new ProcessInfoMatch class which helps us to match processes up and changed the Host layer over to using this new class. The new class allows us to search for processs: 1 - by name (equal to, starts with, ends with, contains, and regex) 2 - by pid 3 - And further check for parent pid == value, uid == value, gid == value, euid == value, egid == value, arch == value, parent == value. This is all hookup up to the "platform process list" command which required adding dumping routines to dump process information. If the Host class implements the process lookup routines, you can now lists processes on your local machine: machine1.foo.com % lldb (lldb) platform process list PID PARENT USER GROUP EFF USER EFF GROUP TRIPLE NAME ====== ====== ========== ========== ========== ========== ======================== ============================ 99538 1 username usergroup username usergroup x86_64-apple-darwin FileMerge 94943 1 username usergroup username usergroup x86_64-apple-darwin mdworker 94852 244 username usergroup username usergroup x86_64-apple-darwin Safari 94727 244 username usergroup username usergroup x86_64-apple-darwin Xcode 92742 92710 username usergroup username usergroup i386-apple-darwin debugserver This of course also works remotely with the lldb-platform: machine1.foo.com % lldb-platform --listen 1234 machine2.foo.com % lldb (lldb) platform create remote-macosx Platform: remote-macosx Connected: no (lldb) platform connect connect://localhost:1444 Platform: remote-macosx Triple: x86_64-apple-darwin OS Version: 10.6.7 (10J869) Kernel: Darwin Kernel Version 10.7.0: Sat Jan 29 15:17:16 PST 2011; root:xnu-1504.9.37~1/RELEASE_I386 Hostname: machine1.foo.com Connected: yes (lldb) platform process list PID PARENT USER GROUP EFF USER EFF GROUP TRIPLE NAME ====== ====== ========== ========== ========== ========== ======================== ============================ 99556 244 username usergroup username usergroup x86_64-apple-darwin trustevaluation 99548 65539 username usergroup username usergroup x86_64-apple-darwin lldb 99538 1 username usergroup username usergroup x86_64-apple-darwin FileMerge 94943 1 username usergroup username usergroup x86_64-apple-darwin mdworker 94852 244 username usergroup username usergroup x86_64-apple-darwin Safari The lldb-platform implements everything with the Host:: layer, so this should "just work" for linux. I will probably be adding more stuff to the Host layer for launching processes and attaching to processes so that this support should eventually just work as well. Modified the target to be able to be created with an architecture that differs from the main executable. This is needed for iOS debugging since we can have an "armv6" binary which can run on an "armv7" machine, so we want to be able to do: % lldb (lldb) platform create remote-ios (lldb) file --arch armv7 a.out Where "a.out" is an armv6 executable. The platform then can correctly decide to open all "armv7" images for all dependent shared libraries. Modified the disassembly to show the current PC value. Example output: (lldb) disassemble --frame a.out`main: 0x1eb7: pushl %ebp 0x1eb8: movl %esp, %ebp 0x1eba: pushl %ebx 0x1ebb: subl $20, %esp 0x1ebe: calll 0x1ec3 ; main + 12 at test.c:18 0x1ec3: popl %ebx -> 0x1ec4: calll 0x1f12 ; getpid 0x1ec9: movl %eax, 4(%esp) 0x1ecd: leal 199(%ebx), %eax 0x1ed3: movl %eax, (%esp) 0x1ed6: calll 0x1f18 ; printf 0x1edb: leal 213(%ebx), %eax 0x1ee1: movl %eax, (%esp) 0x1ee4: calll 0x1f1e ; puts 0x1ee9: calll 0x1f0c ; getchar 0x1eee: movl $20, (%esp) 0x1ef5: calll 0x1e6a ; sleep_loop at test.c:6 0x1efa: movl $12, %eax 0x1eff: addl $20, %esp 0x1f02: popl %ebx 0x1f03: leave 0x1f04: ret This can be handy when dealing with the new --line options that was recently added: (lldb) disassemble --line a.out`main + 13 at test.c:19 18 { -> 19 printf("Process: %i\n\n", getpid()); 20 puts("Press any key to continue..."); getchar(); -> 0x1ec4: calll 0x1f12 ; getpid 0x1ec9: movl %eax, 4(%esp) 0x1ecd: leal 199(%ebx), %eax 0x1ed3: movl %eax, (%esp) 0x1ed6: calll 0x1f18 ; printf Modified the ModuleList to have a lookup based solely on a UUID. Since the UUID is typically the MD5 checksum of a binary image, there is no need to give the path and architecture when searching for a pre-existing image in an image list. Now that we support remote debugging a bit better, our lldb_private::Module needs to be able to track what the original path for file was as the platform knows it, as well as where the file is locally. The module has the two following functions to retrieve both paths: const FileSpec &Module::GetFileSpec () const; const FileSpec &Module::GetPlatformFileSpec () const; git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@128563 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
ebugserver/source/DNBLog.cpp
ebugserver/source/DNBLog.h
ebugserver/source/MacOSX/arm/DNBArchImpl.cpp
ebugserver/source/MacOSX/arm/DNBArchImpl.h
ebugserver/source/RNBRemote.cpp
ebugserver/source/RNBRemote.h
|
b344843f75ef893762c93fd0a22d2d45712ce74d |
24-Mar-2011 |
Greg Clayton <gclayton@apple.com> |
Fixed the LLDB build so that we can have private types, private enums and public types and public enums. This was done to keep the SWIG stuff from parsing all sorts of enums and types that weren't needed, and allows us to abstract our API better. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@128239 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
river/Driver.h
|
58e26e0935138225477fd61283215ceff2068899 |
24-Mar-2011 |
Greg Clayton <gclayton@apple.com> |
Did a lot more work on abtracting and organizing the platforms. On Mac OS X we now have 3 platforms: PlatformDarwin - must be subclassed to fill in the missing pure virtual funcs but this implements all the common functionality between remote-macosx and remote-ios. It also allows for another platform to be used (remote-gdb-server for now) when doing remote connections. Keeping this pluggable will allow for flexibility. PlatformMacOSX - Now implements both local and remote macosx desktop platforms. PlatformRemoteiOS - Remote only iOS that knows how to locate SDK files in the cached SDK locations on the host. A new agnostic platform has been created: PlatformRemoteGDBServer - this implements the platform using the GDB remote protocol and uses the built in lldb_private::Host static functions to implement many queries. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@128193 91177308-0d34-0410-b5e6-96231b3b80d8
ldb-platform/lldb-platform.cpp
|
cb8977d726be451df9978a74088435667fa37da2 |
23-Mar-2011 |
Greg Clayton <gclayton@apple.com> |
Added new platform commands: platform connect <args> platform disconnect Each platform can decide the args they want to use for "platform connect". I will need to add a function that gets the connect options for the current platform as each one can have different options and argument counts. Hooked up more functionality in the PlatformMacOSX and PlatformRemoteiOS. Also started an platform agnostic PlatformRemoteGDBServer.cpp which can end up being used by one or more actual platforms. It can also be specialized and allow for platform specific commands. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@128123 91177308-0d34-0410-b5e6-96231b3b80d8
ldb-platform/lldb-platform.cpp
|
4d3a89ef9d015e0cc3c12736b61d367fd98fe073 |
22-Mar-2011 |
Sean Callanan <scallanan@apple.com> |
Added AVX support to the Intel portion of debugserver. AVX autodetection is not yet implemented, but the structures and register reading/writing code are there. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@128111 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
ebugserver/source/DNBDefs.h
ebugserver/source/MacOSX/i386/DNBArchImplI386.cpp
ebugserver/source/MacOSX/i386/DNBArchImplI386.h
ebugserver/source/MacOSX/i386/MachRegisterStatesI386.h
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.cpp
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.h
ebugserver/source/MacOSX/x86_64/MachRegisterStatesX86_64.h
|
61d043bbb1a1a20abf01dc73fa50c1ca0a46d71d |
22-Mar-2011 |
Greg Clayton <gclayton@apple.com> |
Split the GDBRemoteCommunication class into three classes: GDBRemoteCommunication - The base GDB remote communication class GDBRemoteCommunicationClient - designed to be used for clients the connect to a remote GDB server GDBRemoteCommunicationServer - designed to be used on the server side of a GDB server implementation. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@128070 91177308-0d34-0410-b5e6-96231b3b80d8
ldb-platform/lldb-platform.cpp
|
b622560b2c28c95379edea0bd295555c4d686a13 |
22-Mar-2011 |
Greg Clayton <gclayton@apple.com> |
Added missing files. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@128061 91177308-0d34-0410-b5e6-96231b3b80d8
ldb-platform/lldb-platform.cpp
|
e86cbb9ef128db87cf904e330b2edfc15566bacd |
22-Mar-2011 |
Greg Clayton <gclayton@apple.com> |
Abtracted the innards of lldb-core away from the SB interface. There was some overlap in the SWIG integration which has now been fixed by introducing callbacks for initializing SWIG for each language (python only right now). There was also a breakpoint command callback that called into SWIG which has been abtracted into a callback to avoid cross over as well. Added a new binary: lldb-platform This will be the start of the remote platform that will use as much of the Host functionality to do its job so it should just work on all platforms. It is pretty hollowed out for now, but soon it will implement a platform using the GDB remote packets as the transport. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@128053 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/RNBRemote.cpp
|
4fdf7602bedd8be648f3c549074cf13d90a05f03 |
20-Mar-2011 |
Greg Clayton <gclayton@apple.com> |
Split all of the core of LLDB.framework/lldb.so into a static archive that can be linked against. LLDB.framework/lldb.so exports a very controlled API. Splitting the API into a static library allows other tools (debugserver for now) to use the power of the LLDB debugger core, yet not export it as its API is not portable or maintainable. The Host layer and many of the other internal only APIs can now be statically linked against. Now LLDB.framework/lldb.so links against "liblldb-core.a" instead of compiling the .o files only for the shared library. This fix is only for compiling with Xcode as the Makefile based build already does this. The Xcode projecdt compiler has been changed to LLVM. Anyone using Xcode 3 will need to manually change the compiler back to GCC 4.2, or update to Xcode 4. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@127963 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/RNBRemote.cpp
ebugserver/source/RNBRemote.h
ebugserver/source/debugserver.cpp
|
52ce56101e97732def08c46279cffcb693458e63 |
13-Mar-2011 |
Stephen Wilson <wilsons@start.ca> |
Fix makefile builds when llvm is configured with -enable-shared. We were dropping the expansion of -rpath=$(LibDir) on linux, which resulted in the build not being able to resolve libLLVM.so. Bring in the definition before expanding the values hanging off LD.Flags. Thanks to Jason E. Aten for reporting this! git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@127570 91177308-0d34-0410-b5e6-96231b3b80d8
river/Makefile
|
e4b9c1fb338ee1ada72e6a3c198afb342d68c5c1 |
08-Mar-2011 |
Greg Clayton <gclayton@apple.com> |
LLDB now has "Platform" plug-ins. Platform plug-ins are plug-ins that provide an interface to a local or remote debugging platform. By default each host OS that supports LLDB should be registering a "default" platform that will be used unless a new platform is selected. Platforms are responsible for things such as: - getting process information by name or by processs ID - finding platform files. This is useful for remote debugging where there is an SDK with files that might already or need to be cached for debug access. - getting a list of platform supported architectures in the exact order they should be selected. This helps the native x86 platform on MacOSX select the correct x86_64/i386 slice from universal binaries. - Connect to remote platforms for remote debugging - Resolving an executable including finding an executable inside platform specific bundles (macosx uses .app bundles that contain files) and also selecting the appropriate slice of universal files for a given platform. So by default there is always a local platform, but remote platforms can be connected to. I will soon be adding a new "platform" command that will support the following commands: (lldb) platform connect --name machine1 macosx connect://host:port Connected to "machine1" platform. (lldb) platform disconnect macosx This allows LLDB to be well setup to do remote debugging and also once connected process listing and finding for things like: (lldb) process attach --name x<TAB> The currently selected platform plug-in can now auto complete any available processes that start with "x". The responsibilities for the platform plug-in will soon grow and expand. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@127286 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
fc30997d8b7927a92c5ec69908c98912e7fc100c |
26-Feb-2011 |
Johnny Chen <johnny.chen@apple.com> |
If the user sets a working directory path using "process launch -w <path>", honor that dir path; otherwise, use the thing the debugserver is started with. Fixed rdar://problem/9056462 The process launch flag '-w' for setting the current working directory not working? git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@126537 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/debugserver.cpp
|
a2f7423310044cf76d8d52aa9153b7fd8b226b49 |
24-Feb-2011 |
Greg Clayton <gclayton@apple.com> |
Fixed CommandReturnObject::SetImmediateErrorFile() to set the correct stream. Modifed lldb_private::Process to be able to handle connecting to a remote target that isn't running a process. This leaves lldb_private::Process in the eStateConnected state from which we can then do an attach or launch. Modified ProcessGDBRemote to be able to set stdin, stdout, stderr, working dir, disable ASLR and a few other settings down by using new GDB remote packets. This allows us to keep all of our current launch flags and settings intact and still be able to communicate them over to the remote GDB server. Previously these were being sent as arguments to the debugserver binary that we were spawning. Also modified ProcessGDBRemote to handle losing connection to the remote GDB server and always exit immediately. We do this by watching the lldb_private::Communication event bit for the read thread exiting in the ProcessGDBRemote async thread. Added support for many of the new 'Q' packets for setting stdin, stdout, stderr, working dir and disable ASLR to the GDBRemoteCommunication class for easy accesss. Modified debugserver for all of the new 'Q' packets and also made it so that debugserver always exists if it loses connection with the remote debugger. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@126444 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/DNB.cpp
ebugserver/source/DNB.h
ebugserver/source/DNBArch.cpp
ebugserver/source/MacOSX/MachProcess.cpp
ebugserver/source/MacOSX/MachProcess.h
ebugserver/source/RNBContext.h
ebugserver/source/RNBRemote.cpp
ebugserver/source/RNBRemote.h
ebugserver/source/debugserver.cpp
|
aa378b1f53f8b557ceab403e31e6c9ef9a20b77d |
20-Feb-2011 |
Greg Clayton <gclayton@apple.com> |
Don't limit StreamTee to just two streams. It now can contain N streams by making the stream a vector of stream shared pointers that is protected by a mutex. Streams can be get/set by index which allows indexes to be defined as stream indentifiers. If a stream is set at index 3 and there are now streams in the collection, then empty stream objects are inserted to ensure that stream at index 3 has a valid stream. There is also an append method that allows a stream to be pushed onto the stack. This will allow our streams to be very flexible in where the output goes. Modified the CommandReturnObject to use the new StreamTee functionality. This class now defines two StreamTee indexes: 0 for the stream string stream, and 1 for the immediate stream. This is used both on the output and error streams. Added the ability to get argument types as strings or as descriptions. This is exported through the SBCommandInterpreter API to allow external access. Modified the Driver class to use the newly exported argument names from SBCommandInterpreter::GetArgumentTypeAsCString(). git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@126067 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
2e8cb8a7342a2ea672792067d712a794e215a3a7 |
19-Feb-2011 |
Jim Ingham <jingham@apple.com> |
- Changed all the places where CommandObjectReturn was exporting a StreamString to just exporting a Stream, and then added GetOutputData & GetErrorData to get the accumulated data. - Added a StreamTee that will tee output to two provided lldb::StreamSP's. - Made the CommandObjectReturn use this so you can Tee the results immediately to the debuggers output file, as well as saving up the results to return when the command is done executing. - HandleCommands now uses this so that if you have a set of commands that continue the target you will see the commands come out as they are processed. - The Driver now uses this to output the command results as you go, which makes the interface more reactive seeming. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@126015 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
75c703dd8b492bad25a987b96853626641ae7246 |
16-Feb-2011 |
Greg Clayton <gclayton@apple.com> |
The DynamicLoader plug-in instance now lives up in lldb_private::Process where it should live and the lldb_private::Process takes care of managing the auto pointer to the dynamic loader instance. Also, now that the ArchSpec contains the target triple, we are able to correctly set the Target architecture in DidLaunch/DidAttach in the subclasses, and then the lldb_private::Process will find the dynamic loader plug-in by letting the dynamic loader plug-ins inspect the arch/triple in the target. So now the ProcessGDBRemote plug-in is another step closer to be purely process/platform agnostic. I updated the ProcessMacOSX and the ProcessLinux plug-ins accordingly. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@125650 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/RNBRemote.cpp
|
395fc33dc4b06c048ed35047ec461bc092ef2df3 |
15-Feb-2011 |
Greg Clayton <gclayton@apple.com> |
Made lldb_private::ArchSpec contain much more than just an architecture. It now, in addition to cpu type/subtype and architecture flavor, contains: - byte order (big endian, little endian) - address size in bytes - llvm::Triple for true target triple support and for more powerful plug-in selection. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@125602 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/RNBRemote.cpp
|
c1f4587c3cc1b6de2f59d472762e9eb16819feff |
12-Feb-2011 |
Greg Clayton <gclayton@apple.com> |
Added the ability to detect which vCont packets (using the "vCont?") packet are supported by the remote GDB target. We can also now deal with the lack of vCont support and send packets that the remote GDB stub can use. We also error out of the continue if LLDB tries to do something too complex when vCont isn't supported. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@125433 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/DNBLog.cpp
|
f9f40c20b210eea72ab042c63178ca000f005ed9 |
08-Feb-2011 |
Jim Ingham <jingham@apple.com> |
Rework the RunThreadPlan event handling to use Event Hijacking not stopping the event thread. Also clarify the logic of the function. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@125083 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachThreadList.cpp
|
09c81efd010d1c9ac8821bad00cdfc9747fcae79 |
08-Feb-2011 |
Greg Clayton <gclayton@apple.com> |
Patch that allows for thread_t to be something more complex than an integer. Modified patch from Kirk Beitz. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@125067 91177308-0d34-0410-b5e6-96231b3b80d8
river/IOChannel.cpp
|
151c0eafe9eefb412026daead8ddd5ba40474991 |
05-Feb-2011 |
Greg Clayton <gclayton@apple.com> |
A tool for examining a mach process and its threads. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@124937 91177308-0d34-0410-b5e6-96231b3b80d8
arwin-threads/examine-threads.c
|
0467c78e9a75eff9ec33d3c1f39fa83e1c5d9241 |
04-Feb-2011 |
Greg Clayton <gclayton@apple.com> |
Applied a fix to qualify "UUID" with the lldb_private namespace to fix build issues on MinGW. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@124888 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
e71e258286a1713dbb2d366d8b81ff2f28e0216f |
04-Feb-2011 |
Greg Clayton <gclayton@apple.com> |
Added support for attaching to a remote debug server with the new command: (lldb) process connect <remote-url> Currently when you specify a file with the file command it helps us to find a process plug-in that is suitable for debugging. If you specify a file you can rely upon this to find the correct debugger plug-in: % lldb a.out Current executable set to 'a.out' (x86_64). (lldb) process connect connect://localhost:2345 ... If you don't specify a file, you will need to specify the plug-in name that you wish to use: % lldb (lldb) process connect --plugin process.gdb-remote connect://localhost:2345 Other connection URL examples: (lldb) process connect connect://localhost:2345 (lldb) process connect tcp://127.0.0.1 (lldb) process connect file:///dev/ttyS1 We are currently treating the "connect://host:port" as a way to do raw socket connections. If there is a URL for this already, please let me know and we will adopt it. So now you can connect to a remote debug server with the ProcessGDBRemote plug-in. After connection, it will ask for the pid info using the "qC" packet and if it responds with a valid process ID, it will be equivalent to attaching. If it response with an error or invalid process ID, the LLDB process will be in a new state: eStateConnected. This allows us to then download a program or specify the program to run (using the 'A' packet), or specify a process to attach to (using the "vAttach" packets), or query info about the processes that might be available. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@124846 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
17801bcb4f9ccd0bdd9cf5391e76834de593fbf3 |
29-Jan-2011 |
Greg Clayton <gclayton@apple.com> |
Bumped Xcode project versions to lldb-46 and debugserver-131. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@124531 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
679c77b1a1956ddff405fdb6e3c40035f0cc20a7 |
28-Jan-2011 |
Jim Ingham <jingham@apple.com> |
The thread_info changes over the life of the thread, so you can't get it once and cache it, you have to fetch it every time you want to use it. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@124463 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachThread.cpp
|
b2b604f51ef03beb85d3c8d997ec25d85dea26fa |
27-Jan-2011 |
Jim Ingham <jingham@apple.com> |
Adding a Xcode workspace for lldb. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@124416 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.xcworkspace/contents.xcworkspacedata
ebugserver/debugserver.xcodeproj/xcshareddata/xcschemes/debugserver.xcscheme
river/Driver.cpp
|
abea3cb5d11cf88e9ed35aae610caaa389db8472 |
27-Jan-2011 |
Greg Clayton <gclayton@apple.com> |
Updated Xcode project versions: lldb-45 and debugserver-130 git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@124372 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
db2bab463047edba4b01da1fcaf70f15e778095e |
27-Jan-2011 |
Greg Clayton <gclayton@apple.com> |
Finally tracked down the racy condition that would hose up our debug sessions: When continue packet has been sent and an interrupt packet was quickly sent, it would get read at the same time: $c#00\x03 There was an error where the packet end index was always being computed incorrectly by debugserver, but it wouldn't matter if there weren't extra bytes on the end (the hex \x03 interrupt byte in this case). The first '$' last 3 bytes of the data in the packet buffer were being trimmed (trying to trim the '#' + checksum (#XX)) which made: c# And this would then be passed to the handle routine for the 'c' packet which would see an extra character at the end and assume it was going to be in the form c[addr] where "[addr]" was a hex address to resume at and this would result in a malformed packet response. This is now fixed and everything works great. Another issue was issuing async packets correctly by doing correct handshakes between the thread that wants to send the async packet, and the thread that is tracking the current run. Added a write lock to the communication class as well to make sure you never get two threads trying to write data at the same time. This wasn't happening, but it is a good idea to make sure it doesn't. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@124369 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/RNBRemote.cpp
ebugserver/source/RNBRemote.h
|
bdcb6abaa287df2c5f312c51d993c1d0b0cb120c |
26-Jan-2011 |
Greg Clayton <gclayton@apple.com> |
Enabled extra warnings and fixed a bunch of small issues. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@124250 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
46cd50c064711df3c688a3c3c16c0d0d5da29e49 |
25-Jan-2011 |
Johnny Chen <johnny.chen@apple.com> |
Trivial comment fix. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@124195 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/debugserver.cpp
|
9d71c9599573e06643b300d83f43ee9d59fad984 |
25-Jan-2011 |
Greg Clayton <gclayton@apple.com> |
Bumped Xcode project versions to lldb-44 and debugserver-129. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@124181 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
cc3e640a1fdfb36a6a67eb04913ba18ac4ea8e3f |
25-Jan-2011 |
Greg Clayton <gclayton@apple.com> |
Reverting recent thread resume changes as it was causing testing issues. We will need to try again soon, but this change was causing instability. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@124180 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachThread.cpp
ebugserver/source/MacOSX/MachThread.h
|
c72af6b67914810cafc34a83c403235de58d2051 |
25-Jan-2011 |
Jim Ingham <jingham@apple.com> |
When we are stepping a thread, force it to resume ALL the way to 0. And of course, when we stop if we undid some user provided suspends, we need to re-do the suspends. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@124178 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
ebugserver/source/MacOSX/MachThread.cpp
ebugserver/source/MacOSX/MachThread.h
|
42ddc49f2a4b8ad5da9edb246790a52f4f194181 |
24-Jan-2011 |
Greg Clayton <gclayton@apple.com> |
Bumped Xcode project versions: lldb-43 and debugserver-128. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@124116 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
d330bfd8c5fff8cf2f883f55fa3d2de4a305c48f |
24-Jan-2011 |
Greg Clayton <gclayton@apple.com> |
One more thing... Resume any threads that we discover were created while we stop as they may be in sensitive areas and we set breakpoints on the thread creation routines if we are running expressions, so the threads should quickly get to a safe spot. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@124115 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
ebugserver/source/MacOSX/MachThreadList.cpp
|
ac95966f900e8af29c25b3bd85b3d41cd4568857 |
24-Jan-2011 |
Jim Ingham <jingham@apple.com> |
More useful STEP logging. Be sure to clear out the base plan's m_report_run and m_report_stop each time we resume so we don't use stale values. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@124113 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
2971e7fc7ede526af9b193f8a9eb10ec4cb2bd62 |
24-Jan-2011 |
Greg Clayton <gclayton@apple.com> |
Discover new threads right before we continue a process since libdispatch has been known to make threads for us while our process/task is suspended. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@124111 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachThreadList.cpp
|
9ace183f4dc5e6b6dae85ed0c197449c495007a2 |
24-Jan-2011 |
Greg Clayton <gclayton@apple.com> |
Added logging for threads that are spawned while we stop. We log their existence if the "thread" log bit is enabled right before we resume. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@124110 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachThreadList.cpp
ebugserver/source/MacOSX/MachThreadList.h
|
43457c521adf1fd88bc30a99c3aed0796ede717e |
24-Jan-2011 |
Jim Ingham <jingham@apple.com> |
Linebuffer the log file. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@124103 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/debugserver.cpp
|
879bfee0ce2ddaaa50d41042002d5e38c938aed4 |
23-Jan-2011 |
Greg Clayton <gclayton@apple.com> |
Restored some missing APIs for the test suite. Now testsuite still has some failures due to overloaded SBTarget::Launch() calls. Bumping Xcode project versions: lldb-42 and debugserver-127. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@124063 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
de915beb5febe597505ba33fdc2c39eea2abdbd4 |
23-Jan-2011 |
Greg Clayton <gclayton@apple.com> |
Added a new variant of SBTarget::Launch() that deprectates the old one that takes separate file handles for stdin, stdout, and stder and also allows for the working directory to be specified. Added support to "process launch" to a new option: --working-dir=PATH. We can now set the working directory. If this is not set, it defaults to that of the process that has LLDB loaded. Added the working directory to the host LaunchInNewTerminal function to allows the current working directory to be set in processes that are spawned in their own terminal. Also hooked this up to the lldb_private::Process and all mac plug-ins. The linux plug-in had its API changed, but nothing is making use of it yet. Modfied "debugserver" and "darwin-debug" to also handle the current working directory options and modified the code in LLDB that spawns these tools to pass the info along. Fixed ProcessGDBRemote to properly pass along all file handles for stdin, stdout and stderr. After clearing the default values for the stdin/out/err file handles for process to be NULL, we had a crasher in UserSettingsController::UpdateStringVariable which is now fixed. Also fixed the setting of boolean values to be able to be set as "true", "yes", "on", "1" for true (case insensitive) and "false", "no", "off", or "0" for false. Fixed debugserver to properly handle files for STDIN, STDOUT and STDERR that are not already opened. Previous to this fix debugserver would only correctly open and dupe file handles for the slave side of a pseudo terminal. It now correctly handles getting STDIN for the inferior from a file, and spitting STDOUT and STDERR out to files. Also made sure the file handles were correctly opened with the NOCTTY flag for terminals. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@124060 91177308-0d34-0410-b5e6-96231b3b80d8
arwin-debug/darwin-debug.cpp
ebugserver/source/DNB.cpp
ebugserver/source/MacOSX/MachProcess.cpp
ebugserver/source/debugserver.cpp
|
72e1c782ba1e4226da37af4722af608de9f39408 |
23-Jan-2011 |
Greg Clayton <gclayton@apple.com> |
Fixed an issue in "SBError SBProcess::Destroy ()" where it wasn't properly checking the validity of the shared pointer prior to using it. Fixed the GDB remote plug-in to once again watch for a reply from the "k" packet, and fixed the logic to make sure the thread requesting the kill and the async thread play nice (and very quickly) by synchronizing the packet sending and reply. I also tweaked some of the shut down packet ("k" kill, "D" detach, and the halt packet) to make sure they do the right thing. Fixed "StateType Process::WaitForProcessStopPrivate (...)" to correctly pass the timeout along to WaitForStateChangedEventsPrivate() and made the function behave correctly with respect to timing out. Added separate STDIN, STDOUT, and STDERR support to debugserver. Also added the start of being able to set the working directory for the inferior process. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@124049 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/DNB.cpp
ebugserver/source/DNB.h
ebugserver/source/MacOSX/MachProcess.cpp
ebugserver/source/MacOSX/MachProcess.h
ebugserver/source/RNBContext.cpp
ebugserver/source/RNBContext.h
ebugserver/source/RNBRemote.cpp
ebugserver/source/debugserver.cpp
|
a4881d04b4f367c67e34e8040e1257fc222a8b41 |
22-Jan-2011 |
Greg Clayton <gclayton@apple.com> |
Sped up the shutdown time on MacOSX by quite a bit by making sure any threads that we spawn let us know when they are going away and that we don't timeout waiting for a message from threads that have gone away. We also now don't expect the "k" packet (kill) to send a response. This greatly speeds up debugger shutdown performance. The test suite now runs quite a bit faster. Added a fix to the variable display code that fixes the display of base classes. We were assuming the virtual or normal base class offsets were being given in bit sizes, but they were being given as character sizes, so we needed to multiply the offset by 8. This wasn't affecting the expression parser, but it was affecting the correct display of C++ class base classes and all of their children. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@124024 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/RNBRemote.cpp
|
d5f41cad088434ac07365e11e8d83149aaba2e2a |
22-Jan-2011 |
Jim Ingham <jingham@apple.com> |
Add a (currently disabled) bear trap where instead of deallocating pages, we remove all permissions. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@124012 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachTask.cpp
|
61468e816e879874ee8499ce5a1b4f1d6759b026 |
19-Jan-2011 |
Greg Clayton <gclayton@apple.com> |
Took the timeout for a ClangUserExpression down from a 10 second timeout to 500 ms. Make MachThreadList more threadsafe. Added code to make sure the thread register state was properly flushed for x86_64. Fixed an missing return code for the current thread in the new thread suffix code. Improved debugserver logging. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@123815 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/DNBBreakpoint.cpp
ebugserver/source/MacOSX/MachProcess.cpp
ebugserver/source/MacOSX/MachProcess.h
ebugserver/source/MacOSX/MachThread.cpp
ebugserver/source/MacOSX/MachThreadList.cpp
ebugserver/source/MacOSX/MachThreadList.h
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.cpp
ebugserver/source/RNBRemote.cpp
|
c71899ef308e6134d1b0ca5f30cbc64414855e1a |
18-Jan-2011 |
Greg Clayton <gclayton@apple.com> |
Thread safety changes in debugserver and also in the process GDB remote plugin. I added support for asking if the GDB remote server supports thread suffixes for packets that should be thread specific (register read/write packets) because the way the GDB remote protocol does it right now is to have a notion of a current thread for register and memory reads/writes (set via the "$Hg%x" packet) and a current thread for running ("$Hc%x"). Now we ask the remote GDB server if it supports adding the thread ID to the register packets and we enable that feature in LLDB if supported. This stops us from having to send a bunch of packets that update the current thread ID to some value which is prone to error, or extra packets. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@123762 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/DNBThreadResumeActions.h
ebugserver/source/MacOSX/MachProcess.cpp
ebugserver/source/MacOSX/MachProcess.h
ebugserver/source/MacOSX/MachThread.cpp
ebugserver/source/MacOSX/MachThread.h
ebugserver/source/MacOSX/i386/DNBArchImplI386.cpp
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.cpp
ebugserver/source/RNBRemote.cpp
ebugserver/source/RNBRemote.h
|
1364b3bb79f528aed515ad38499d3ef07469c9e5 |
15-Jan-2011 |
Greg Clayton <gclayton@apple.com> |
lldb-41 and debugserver-126 are set in the Xcode projects. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@123513 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
7b19fc295e3a8cc46981442e0d8ae1fe38ffcc1e |
10-Jan-2011 |
Greg Clayton <gclayton@apple.com> |
Bumped Xcode versions to lldb-39 and debugserver-125. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@123187 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
4862fa2f3db6967464cd65a2c77b2e55de3da5ff |
08-Jan-2011 |
Greg Clayton <gclayton@apple.com> |
Modified the stop reply packet to be able to send the thread name using the new "hexname" key for the "key:value;" duple that is part of the packet. This allows for thread names to contain special characters such as $ # : ; + - Debugserver now detects if the thread name contains special characters and sends the chars in hex format if needed. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@123053 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/RNBRemote.cpp
|
124b23a6e5cf0c5b79ad1d6bffaf1ce276ec1773 |
05-Jan-2011 |
Greg Clayton <gclayton@apple.com> |
Bumped versions in Xcode projects: lldb is now at lldb-38, debugserver is now at debugserver-124. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@122897 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
a2cec4f0f4365822591ea5fc60b5bab819858792 |
21-Dec-2010 |
Greg Clayton <gclayton@apple.com> |
Updated Xcode build version to lldb-37 and debugserver-123. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@122308 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
3b2cfc2fb8b50ab2bdf96ad30b60ef9a5e6f541d |
17-Dec-2010 |
Greg Clayton <gclayton@apple.com> |
Bumped Xcode project versions to for lldb-36 and debugserver-122. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@122061 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
4dc1892eefc8ccaceec79c09b63fa198b40b4ab9 |
08-Dec-2010 |
Greg Clayton <gclayton@apple.com> |
Any arguments that are not options to the "lldb" command line driver, now get used as the arguments for the inferior program. So for example you can do % lldb /bin/ls /tmp ~/Documents And "lldb" will use "/bin/ls" as the program and send arguments "/tmp" and "~/Documents" as the launch args. If you specify a file, then all remaining args after option parsing will be used for program arguments: % lldb -f /bin/ls /tmp ~/Documents If you need to pass option values to your inferior program, just terminate the "lldb" command line driver options with "--": % lldb -- /bin/ls -AFl /tmp The arguments are placed into the "settings" variable named "target.process.run-args". This allows you to just run the program using "process launch" and, if no args are specified on that command, the "target.process.run-args" values will be used: % lldb -- /bin/ls -AFl /tmp Current executable set to '/bin/ls' (x86_64). (lldb) settings show target.process.run-args target.process.run-args (array): [0]: '-AFl' [1]: '/tmp' (lldb) (lldb) r Process 56753 launched: '/bin/ls' (x86_64) lrwxr-xr-x@ 1 root wheel 11 Nov 19 2009 /tmp@ -> private/tmp git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@121295 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
river/Driver.h
|
3355d11a95ddf94daf980db031683337bfc96d3f |
08-Dec-2010 |
Greg Clayton <gclayton@apple.com> |
Bumped lldb Xcode version to 35 for lldb-35, and debugserver to 121 for debugserver-121. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@121237 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
ebugserver/source/MacOSX/MachThread.cpp
|
eecb0f3b5021e37311f9588f14bcab38a35b8e9a |
04-Dec-2010 |
Greg Clayton <gclayton@apple.com> |
More reverting of the EOF stuff as the API was changed which we don't want to do. Closing on EOF is an option that can be set on the lldb_private::Communication or the lldb::SBCommunication objects after they are created. Of course the EOF support isn't hooked up, so they don't do anything at the moment, but they are left in so when the code is fixed, it will be easy to get working again. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@120885 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
304fab4f9ff49c30f0bd7a4db676fabc6e464143 |
04-Dec-2010 |
Greg Clayton <gclayton@apple.com> |
Bumped lldb version to lldb-33 and debugserver to debugserver-120. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@120864 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
638351aee118e89c658ca295cb4e9d1db7849bef |
04-Dec-2010 |
Greg Clayton <gclayton@apple.com> |
Added the ability for a process to inherit the current host environment. This was done as an settings variable in the process for now. We will eventually move all environment stuff over to the target, but we will leave it with the process for now. The default setting is for a process to inherit the host environment. This can be disabled by setting the "inherit-env" setting to false in the process. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@120862 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
bd666017403e102e0ca435d6da585ff979f83598 |
03-Dec-2010 |
Caroline Tice <ctice@apple.com> |
Add '-no-stdio' option to 'process launch' command, which causes the inferior to be launched without setting up terminal stdin/stdout for it (leaving the lldb command line accessible while the program is executing). Also add a user settings variable, 'target.process.disable-stdio' to allow the user to set this globally rather than having to use the command option each time the process is launched. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@120825 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/DNB.cpp
ebugserver/source/DNB.h
ebugserver/source/MacOSX/MachProcess.cpp
ebugserver/source/MacOSX/MachProcess.h
ebugserver/source/debugserver.cpp
|
b749a265a2b97f9cef71c362dfd6dae26c8f2973 |
03-Dec-2010 |
Greg Clayton <gclayton@apple.com> |
Fixed a race condition that could cause ProcessGDBRemote::DoResume() to return an error saying the resume timed out. Previously the thread that was trying to resume the process would eventually call ProcessGDBRemote::DoResume() which would broadcast an event over to the async GDB remote thread which would sent the continue packet to the remote gdb server. Right after this was sent, it would set a predicate boolean value (protected by a mutex and condition) and then the thread that issued the ProcessGDBRemote::DoResume() would then wait for that condition variable to be set. If the async gdb thread was too quick though, the predicate boolean value could have been set to true and back to false by the time the thread that issued the ProcessGDBRemote::DoResume() checks the boolean value. So we can't use the predicate value as a handshake. I have changed the code over to using a Event by having the GDB remote communication object post an event: GDBRemoteCommunication::eBroadcastBitRunPacketSent This allows reliable handshaking between the two threads and avoids the erroneous ProcessGDBRemote::DoResume() errors. Added a host backtrace service to allow in process backtraces when trying to track down tricky issues. I need to see if LLVM has any backtracing abilities abstracted in it already, and if so, use that, but I needed something ASAP for the current issue I was working on. The static function is: void Host::Backtrace (Stream &strm, uint32_t max_frames); And it will backtrace at most "max_frames" frames for the current thread and can be used with any of the Stream subclasses for logging. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@120793 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
ebugserver/source/DNBLog.cpp
|
9ac497bc11512d221b3962e4f883eeac07db188a |
02-Dec-2010 |
Caroline Tice <ctice@apple.com> |
Add proper EOF handling to Communication & Connection classes: Add bool member to Communication class indicating whether the Connection should be closed on receiving an EOF or not. Update the Connection read to return an EOF status when appropriate. Modify the Communication class to pass the EOF along or not, and to close the Connection or not, as appropriate. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@120723 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
97bd5670cdb415a95c84050c20cfacce8ed178e7 |
01-Dec-2010 |
Greg Clayton <gclayton@apple.com> |
Fixed 32 bit debugging after recent architecture changes to debugserver. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@120618 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/DNB.cpp
ebugserver/source/DNB.h
ebugserver/source/DNBArch.cpp
ebugserver/source/DNBArch.h
ebugserver/source/MacOSX/MachProcess.cpp
ebugserver/source/MacOSX/MachProcess.h
ebugserver/source/MacOSX/MachThreadList.cpp
ebugserver/source/debugserver.cpp
|
c4f55fee15b66ea53da092ca50400ac5d8b0692d |
19-Nov-2010 |
Caroline Tice <ctice@apple.com> |
Add the ability to catch and do the right thing with Interrupts (often control-c) and end-of-file (often control-d). git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@119837 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
river/IOChannel.cpp
|
c0c1b0c0cfd2aeaf01111762fd66e59d6273bcea |
19-Nov-2010 |
Greg Clayton <gclayton@apple.com> |
Fixed an issue where the UserSettingsControllers were being created out of order and this was causing the target, process and thread trees to not be available. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@119784 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
640dc6b983964615bcb149d7d37ee007a13fb02c |
18-Nov-2010 |
Greg Clayton <gclayton@apple.com> |
Added the ability to get more information on the SBThread's stop reason by being able to get the data count and data. Each thread stop reason has one or more data words that can help describe the stop. To do this I added: size_t SBThread::GetStopReasonDataCount(); uint64_t SBThread::GetStopReasonDataAtIndex(uint32_t idx); git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@119720 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
27eb3f7b287904f13cf18fb19f04c95f6271f336 |
18-Nov-2010 |
Greg Clayton <gclayton@apple.com> |
Added missing file. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@119709 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/DNBArch.cpp
|
20d338fad87eba91de65aa9bec76e01c04472848 |
18-Nov-2010 |
Greg Clayton <gclayton@apple.com> |
Fixed Process::Halt() as it was broken for "process halt" after recent changes to the DoHalt down in ProcessGDBRemote. I also moved the functionality that was in ProcessGDBRemote::DoHalt up into Process::Halt so not every class has to implement a tricky halt/resume on the internal state thread. The functionality is the same as it was before with two changes: - when we eat the event we now just reuse the event we consume when the private state thread is paused and set the interrupted bool on the event if needed - we also properly update the Process::m_public_state with the state of the event we consume. Prior to this, if you issued a "process halt" it would eat the event, not update the process state, and then produce a new event with the interrupted bit set and send it. Anyone listening to the event would get the stopped event with a process that whose state was set to "running". Fixed debugserver to not have to be spawned with the architecture of the inferior process. This worked fine for launching processes, but when attaching to processes by name or pid without a file in lldb, it would fail. Now debugserver can support multiple architectures for a native debug session on the current host. This currently means i386 and x86_64 are supported in the same binary and a x86_64 debugserver can attach to a i386 executable. This change involved a lot of changes to make sure we dynamically detect the correct registers for the inferior process. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@119680 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
ebugserver/source/DNB.cpp
ebugserver/source/DNB.h
ebugserver/source/DNBArch.h
ebugserver/source/MacOSX/MachProcess.cpp
ebugserver/source/MacOSX/MachProcess.h
ebugserver/source/MacOSX/MachThread.cpp
ebugserver/source/MacOSX/MachThread.h
ebugserver/source/MacOSX/MachThreadList.cpp
ebugserver/source/MacOSX/MachThreadList.h
ebugserver/source/MacOSX/arm/DNBArchImpl.h
ebugserver/source/MacOSX/i386/DNBArchImplI386.cpp
ebugserver/source/MacOSX/i386/DNBArchImplI386.h
ebugserver/source/MacOSX/ppc/DNBArchImpl.h
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.cpp
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.h
ebugserver/source/RNBRemote.cpp
ebugserver/source/RNBRemote.h
ebugserver/source/debugserver.cpp
|
3e783a9d14726f9f3c4308c65b7aa74ed86edd0f |
12-Nov-2010 |
Greg Clayton <gclayton@apple.com> |
Fixed more thread suspend/resume issues. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@118877 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachThread.cpp
|
02274ed47ccff35a64870331f6e2c88c711ca0f9 |
12-Nov-2010 |
Greg Clayton <gclayton@apple.com> |
Fixed an issue with the MachThread class where we might not get the initial thread basic info state and not realize that a thread was already suspended or if a thread was starting up and not ready to be displayed to the user (in an uninterruptable state). If it is not user ready yet, we don't add it to our list of threads that can be played with. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@118866 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachThread.cpp
ebugserver/source/MacOSX/MachThread.h
ebugserver/source/MacOSX/MachThreadList.cpp
|
abab5901e854c733be343fa3650082a2f8720b06 |
11-Nov-2010 |
Greg Clayton <gclayton@apple.com> |
Bumped Xcode versions to lldb-32 and debugserver-119. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@118772 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
670c1f8af084e0c98e760a8af71a75a9388334c8 |
09-Nov-2010 |
Greg Clayton <gclayton@apple.com> |
Bumped versions in Xcode projects to lldb-31 and debugserver-118. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@118489 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
95e33b7b4b832ff5a8dfd0720fe6a100be894df6 |
07-Nov-2010 |
Greg Clayton <gclayton@apple.com> |
Modified the DWARF parser for both the single DWARF file and for the case where the DWARF is in the .o files so they can track down the actual type for a forward declaration. This was working before for just DWARF files, but not for DWARF in .o files where the actual definition was in another .o file. Modified the main thread name in the driver to be more consistent with the other LLDB thread names. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@118383 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
538eb82a89a68dbc57251915080bd5152b333978 |
06-Nov-2010 |
Greg Clayton <gclayton@apple.com> |
Added copy constructors and assignment operators to all lldb::SB* classes so we don't end up with weak exports with some compilers. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@118312 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
91a1dabac7ef4a1c8a60dbbb8340d33b7d25f863 |
05-Nov-2010 |
Caroline Tice <ctice@apple.com> |
If debugserver is running on the local machine, pass it a pseudoterminal to pass to the inferior for the inferior's I/O (to allow direct writing, rather than passing all the I/O around via packets). git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@118308 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachProcess.cpp
ebugserver/source/debugserver.cpp
|
81ab6155b99e0e5f23209d4e4e4e08c30e4431bf |
04-Nov-2010 |
Greg Clayton <gclayton@apple.com> |
Bumped version for lldb-29 and debugserver-116 in the Xcode projects. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@118229 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
90b42255ccebbaa31e0f692c6211f7490b2da371 |
02-Nov-2010 |
Caroline Tice <ctice@apple.com> |
Fix problem where "process detach" was not working properly. The ptrace thread update that was replying to the SIGSTOP was also causing the process to not really be sigstop'd any more so then the call to ptrace detach was failing, and when debugserver exited the attached process was being killed. Now the ptrace thread update does not disturb the sigstop state of the thread, so the detach works properly. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@118018 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachProcess.cpp
ebugserver/source/MacOSX/MachProcess.h
|
b0f8e23d0bbe2cbc33425cb1cf9234d9dbc309b5 |
31-Oct-2010 |
Greg Clayton <gclayton@apple.com> |
Bumped version in Xcode project to lldb-27, and debugserver to debugserver-115. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@117852 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
f3d0b0c8081691128626eb496fdfcbf8ae54c1de |
27-Oct-2010 |
Greg Clayton <gclayton@apple.com> |
Updated the lldb_private::Flags class to have better method names and made all of the calls inlined in the header file for better performance. Fixed the summary for C string types (array of chars (with any combo if modifiers), and pointers to chars) work in all cases. Fixed an issue where a forward declaration to a clang type could cause itself to resolve itself more than once if, during the resolving of the type itself it caused something to try and resolve itself again. We now remove the clang type from the forward declaration map in the DWARF parser when we start to resolve it and avoid this additional call. This should stop any duplicate members from appearing and throwing all the alignment of structs, unions and classes. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@117437 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
0561f3da5dd365d1f75c0a6888293eaf1695ccd1 |
26-Oct-2010 |
Greg Clayton <gclayton@apple.com> |
Fixed vAttachWait by fixing a missed "else if". git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@117395 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/RNBRemote.cpp
|
6bd1a9ee0dd6f3b8a6e138ca17b2f1bb75660478 |
19-Oct-2010 |
Greg Clayton <gclayton@apple.com> |
Fixed all known race conditions with starting a process in a new terminal. We now spawn a thread to accept a unix socket connection from the inferior when it spawns in the terminal, then we launch the process, then we get the pid back through the unix socket, and then wait for it to SIGSTOP. darwin-debug now clears the terminal screen and prints out the program and arguments that are about to be launched. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@116841 91177308-0d34-0410-b5e6-96231b3b80d8
arwin-debug/darwin-debug.cpp
|
ea3259d21303612c58d4b520f1ce022abbcfd2c2 |
19-Oct-2010 |
Greg Clayton <gclayton@apple.com> |
Use AppleScript when lauching inferior in terminal so the command that is being run is visible in the terminal as opposed to just seeing a path to a .command file. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@116814 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
36f63a92bae332929e1a047b59ed6df651d8537f |
19-Oct-2010 |
Greg Clayton <gclayton@apple.com> |
Stop the driver from handling SIGPIPE in case we communicate with stale sockets so the driver doesn't just crash. Added support for connecting to named sockets (unix IPC sockets) in ConnectionFileDescriptor. Modified the Host::LaunchInNewTerminal() for MacOSX to return the process ID of the inferior process instead of the process ID of the Terminal.app. This was done by modifying the "darwin-debug" executable to connect to lldb through a named unix socket which is passed down as an argument. This allows a quick handshake between "lldb" and "darwin-debug" so we can get the process ID of the inferior and then attach by process ID and avoid attaching to the inferior by process name since there could be more than one process with that name. This still has possible race conditions, those will be fixed in the near future. This fixes the SIGPIPE issues that were sometimes being seen when task_for_pid was failing. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@116792 91177308-0d34-0410-b5e6-96231b3b80d8
arwin-debug/darwin-debug.cpp
river/Driver.cpp
|
3b2c41c9d12bafdad87cc271fadd1f816081b9a8 |
18-Oct-2010 |
Greg Clayton <gclayton@apple.com> |
Still trying to get detach to work with debugserver. Got a bit closer, but something is still killing our inferior. Fixed an issue with darwin-debug where it wasn't passing all needed arguments to the inferior. Fixed a race condition with the attach to named process code. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@116697 91177308-0d34-0410-b5e6-96231b3b80d8
arwin-debug/darwin-debug.cpp
ebugserver/source/MacOSX/MachProcess.cpp
ebugserver/source/MacOSX/MachProcess.h
ebugserver/source/MacOSX/MachThreadList.cpp
ebugserver/source/MacOSX/MachThreadList.h
ebugserver/source/RNBContext.cpp
ebugserver/source/RNBRemote.cpp
|
c1d3775eb2494c6e88ebee44c7d49beefcb3bb6a |
18-Oct-2010 |
Greg Clayton <gclayton@apple.com> |
Fixed debugserver to properly attach to a process by name with the "vAttachName;<PROCNAME>" packet, and wait for a new process by name to launch with the "vAttachWait;<PROCNAME>". Fixed a few issues with attaching where if DoAttach() returned no error, yet there was no valid process ID, we would deadlock waiting for an event that would never happen. Added a new "process launch" option "--tty" that will launch the process in a new terminal if the Host layer supports the "Host::LaunchInNewTerminal(...)" function. This currently works on MacOSX and will allow the debugging of terminal applications that do complex operations with the terminal. Cleaned up the output when the process resumes, stops and halts to be consistent with the output format. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@116693 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
ebugserver/source/DNB.cpp
ebugserver/source/RNBRemote.cpp
ebugserver/source/RNBRemote.h
|
24b48ff28b7c60dd4598212c3e77935a0fc1142d |
18-Oct-2010 |
Greg Clayton <gclayton@apple.com> |
Added a new Host call to find LLDB related paths: static bool Host::GetLLDBPath (lldb::PathType path_type, FileSpec &file_spec); This will fill in "file_spec" with an appropriate path that is appropriate for the current Host OS. MacOSX will return paths within the LLDB.framework, and other unixes will return the paths they want. The current PathType enums are: typedef enum PathType { ePathTypeLLDBShlibDir, // The directory where the lldb.so (unix) or LLDB mach-o file in LLDB.framework (MacOSX) exists ePathTypeSupportExecutableDir, // Find LLDB support executable directory (debugserver, etc) ePathTypeHeaderDir, // Find LLDB header file directory ePathTypePythonDir // Find Python modules (PYTHONPATH) directory } PathType; All places that were finding executables are and python paths are now updated to use this Host call. Added another new host call to launch the inferior in a terminal. This ability will be very host specific and doesn't need to be supported on all systems. MacOSX currently will create a new .command file and tell Terminal.app to open the .command file. It also uses the new "darwin-debug" app which is a small app that uses posix to exec (no fork) and stop at the entry point of the program. The GDB remote plug-in is almost able launch a process and attach to it, it currently will spawn the process, but it won't attach to it just yet. This will let LLDB not have to share the terminal with another process and a new terminal window will pop up when you launch. This won't get hooked up until we work out all of the kinks. The new Host function is: static lldb::pid_t Host::LaunchInNewTerminal ( const char **argv, // argv[0] is executable const char **envp, const ArchSpec *arch_spec, bool stop_at_entry, bool disable_aslr); Cleaned up FileSpec::GetPath to not use strncpy() as it was always zero filling the entire path buffer. Fixed an issue with the dynamic checker function where I missed a '$' prefix that should have been added. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@116690 91177308-0d34-0410-b5e6-96231b3b80d8
arwin-debug/darwin-debug.cpp
ebugserver/debugserver.xcodeproj/project.pbxproj
|
e8a17a98577d2b144405e68a8380b3473e076d6b |
16-Oct-2010 |
Greg Clayton <gclayton@apple.com> |
Fixed an issue with MachTask::TaskResume () where if the task was already suspended, we would call "int ::task_resume (task_t task);" as many times as it took to resume the task which isn't what we want to do. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@116674 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachTask.cpp
|
bd5c63ef58a9ebed5b458ddbb77eb334b84787bd |
12-Oct-2010 |
Caroline Tice <ctice@apple.com> |
Fix some memory leaks. Add call to lldb.SBDebugger.Initialize() to lldb.py, so it automatically gets called when the lldb Python module gets loaded. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@116345 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
9caa94672c3a70e76316edfd29fa52d4a1ff6729 |
11-Oct-2010 |
Greg Clayton <gclayton@apple.com> |
Exit if the command line is started with "--help". git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@116180 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
887aa2898314218406275a34cbec30c11cd00acd |
11-Oct-2010 |
Greg Clayton <gclayton@apple.com> |
Added a "--no-lldbinit" option (-n for short (which magically matches what gdb uses)) so we can tell our "lldb" driver program to not automatically parse any .lldbinit files. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@116179 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
887eb31b1e2c9f32d3b8e2b2bacbec2bb4f20e5d |
08-Oct-2010 |
Greg Clayton <gclayton@apple.com> |
Bumped versions to lldb-26 and debugserver-114 for a build. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@116019 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
5144f389f9417e106364d7fdbf5631de19ed4fe8 |
07-Oct-2010 |
Greg Clayton <gclayton@apple.com> |
More SWIG cleanup. Moved the breakpoint callback function back to the ScriptInterpreterPython class and made a simple callback function that ScriptInterpreterPython::BreakpointCallbackFunction() now calls so we don't include any internal API stuff into the cpp file that is generated by SWIG. Fixed a few build warnings in debugserver. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@115926 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
4d6675c8e1cab6360f59865229835ae137d6f68a |
01-Oct-2010 |
Caroline Tice <ctice@apple.com> |
Modify command options to use the new arguments mechanism. Now all command option arguments are specified in a standardized way, will have a standardized name, and have functioning help. The next step is to start writing useful help for all the argument types. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@115335 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
4b40711e7950310afb74835820eb669004cd8c44 |
30-Sep-2010 |
Greg Clayton <gclayton@apple.com> |
Cleaned up a unused member variable in Debugger. Added the start of Host specific launch services, though it currently isn't hookup up to anything. We want to be able to launch a process and use the native launch services to launch an app like it would be launched by the user double clicking on the app. We also eventually want to be able to run a command line app in a newly spawned terminal to avoid terminal sharing. Fixed an issue with the new DWARF forward type declaration stuff. A crasher was found that was happening when trying to properly expand the forward declarations. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@115213 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
8016967553a0e818d57ce5f86230c8cee7be7ecf |
30-Sep-2010 |
Greg Clayton <gclayton@apple.com> |
Retry task_for_pid a few times to avoid some cases where task_for_pid fails. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@115184 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachTask.cpp
ebugserver/source/MacOSX/MachTask.h
|
757500e29b7856823f2f4aedd30f206ec009147e |
29-Sep-2010 |
Caroline Tice <ctice@apple.com> |
Fix various timing/threading problems in IOChannel & Driver that were causing the prompt to be stomped on, mangled or omitted occasionally. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@115059 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
river/Driver.h
river/IOChannel.cpp
river/IOChannel.h
|
462d4147f3bb9141bf62d904f58a623db00669df |
29-Sep-2010 |
Greg Clayton <gclayton@apple.com> |
Fixed the forward declaration issue that was present in the DWARF parser after adding methods to C++ and objective C classes. In order to make methods, we need the function prototype which means we need the arguments. Parsing these could cause a circular reference that caused an assertion. Added a new typedef for the clang opaque types which are just void pointers: lldb::clang_type_t. This appears in lldb-types.h. This was fixed by enabling struct, union, class, and enum types to only get a forward declaration when we make the clang opaque qual type for these types. When they need to actually be resolved, lldb_private::Type will call a new function in the SymbolFile protocol to resolve a clang type when it is not fully defined (clang::TagDecl::getDefinition() returns NULL). This allows us to be a lot more lazy when parsing clang types and keeps down the amount of data that gets parsed into the ASTContext for each module. Getting the clang type from a "lldb_private::Type" object now takes a boolean that indicates if a forward declaration is ok: clang_type_t lldb_private::Type::GetClangType (bool forward_decl_is_ok); So function prototypes that define parameters that are "const T&" can now just parse the forward declaration for type 'T' and we avoid circular references in the type system. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@115012 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
fa1502444821fb699b14883bd24188c85a8793e0 |
28-Sep-2010 |
Johnny Chen <johnny.chen@apple.com> |
Another patch from Jean-Daniel. Thanks. Error in dbg server -> MachProcess::SetProcessID() and misc changes to make clang++ happy. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@114962 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachProcess.cpp
ebugserver/source/MacOSX/i386/DNBArchImplI386.h
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.h
ebugserver/source/PseudoTerminal.h
ebugserver/source/RNBRemote.h
|
102f4e320581fe6647d136ce1e660b9400f92bfe |
25-Sep-2010 |
Greg Clayton <gclayton@apple.com> |
Bumped Xcode lldb build number to 25 for lldb-25 and debugserver build to 113 for debugserver-113. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@114777 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
238c0a1e7b733cee539258faa656159c63f9e893 |
18-Sep-2010 |
Greg Clayton <gclayton@apple.com> |
Fixed the way set/show variables were being accessed to being natively accessed by the objects that own the settings. The previous approach wasn't very usable and made for a lot of unnecessary code just to access variables that were already owned by the objects. While I fixed those things, I saw that CommandObject objects should really have a reference to their command interpreter so they can access the terminal with if they want to output usaage. Fixed up all CommandObjects to take an interpreter and cleaned up the API to not need the interpreter to be passed in. Fixed the disassemble command to output the usage if no options are passed down and arguments are passed (all disassebmle variants take options, there are no "args only"). git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@114252 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
eddffe93d2c9ebb575e7b03fe1c5e71f9ecaf9f1 |
10-Sep-2010 |
Caroline Tice <ctice@apple.com> |
If the file the user specifies can't be found in the current directory, and the user didn't specify a particular directory, search for the file using the $PATH environment variable. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@113575 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
b8314fe67960cfcc5d9e9232be4c1914c9ef0ce3 |
09-Sep-2010 |
Caroline Tice <ctice@apple.com> |
Make API calls for setting/getting user settable variables static. Modify Driver to handle SIGWINCH signals and automatically re-set the term-width variable. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@113506 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
0a7f75f9e375911ca91a884968b0efa36f18588d |
09-Sep-2010 |
Greg Clayton <gclayton@apple.com> |
Got the ARM version of debugserver up to date. Renamed the "dispatchqaddr" setting that was coming back for stop reply packets to be named "qaddr" so that gdb doesn't thing it is a register number. gdb was checking the first character and assuming "di" was a hex register number because 'd' is a hex digit. It has been shortened so gdb can safely ignore it. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@113475 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
ebugserver/source/ARM_DWARF_Registers.h
ebugserver/source/ARM_GCC_Registers.h
ebugserver/source/MacOSX/MachProcess.cpp
ebugserver/source/MacOSX/arm/DNBArchImpl.cpp
ebugserver/source/MacOSX/arm/DNBArchImpl.h
ebugserver/source/RNBRemote.cpp
ebugserver/source/RNBRemote.h
ebugserver/source/RNBServices.cpp
ebugserver/source/debugserver.cpp
|
e40e76403faaf8f3c26eb95a8ee2b397987cd488 |
07-Sep-2010 |
Greg Clayton <gclayton@apple.com> |
Fixed a buffer overrun error that could occur every time the program was run due to a "sprintf" with a destination string that was too short. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@113180 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
72f8a3c26c70393c49cdcfe9ecbbd0e44ab90e4c |
07-Sep-2010 |
Greg Clayton <gclayton@apple.com> |
Fixed an error where a random string would get executed after a recent fix that checked if the window column size was zero was added on the lldb driver startup. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@113179 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
6e4c5ce0f697eb9899a54854a2a9004e961b0de2 |
04-Sep-2010 |
Caroline Tice <ctice@apple.com> |
This is a very large commit that completely re-does the way lldb handles user settable internal variables (the equivalent of set/show variables in gdb). In addition to the basic infrastructure (most of which is defined in UserSettingsController.{h,cpp}, there are examples of two classes that have been set up to contain user settable variables (the Debugger and Process classes). The 'settings' command has been modified to be a command-subcommand structure, and the 'set', 'show' and 'append' commands have been moved into this sub-commabnd structure. The old StateVariable class has been completely replaced by this, and the state variable dictionary has been removed from the Command Interpreter. Places that formerly accessed the state variable mechanism have been modified to access the variables in this new structure instead (checking the term-width; getting/checking the prompt; etc.) Variables are attached to classes; there are two basic "flavors" of variables that can be set: "global" variables (static/class-wide), and "instance" variables (one per instance of the class). The whole thing has been set up so that any global or instance variable can be set at any time (e.g. on start up, in your .lldbinit file), whether or not any instances actually exist (there's a whole pending and default values mechanism to help deal with that). git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@113041 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
1a67946295ac66ff7a8787be25d8b56f49742345 |
03-Sep-2010 |
Greg Clayton <gclayton@apple.com> |
Fixed a case where we might be able to acquire a mutex with a try lock and not release it by making sure a mutex locker object is appropriately used. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@112996 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
537926c76e5bc7b92ce9a74c864f1d2e2a346596 |
02-Sep-2010 |
Jim Ingham <jingham@apple.com> |
Move "variable list" to "frame variable" git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@112782 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
452bf613496c7290c6b7a1a1eb28efbce63fd3b9 |
31-Aug-2010 |
Greg Clayton <gclayton@apple.com> |
Added the ability to disable ASLR (Address Space Layout Randomization). ASLR is disabled by default, and can be enabled using: (lldb) set disable-aslr 0 git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@112616 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
ebugserver/source/DNB.cpp
ebugserver/source/DNB.h
ebugserver/source/MacOSX/MachProcess.cpp
ebugserver/source/MacOSX/MachProcess.h
ebugserver/source/debugserver.cpp
|
74989e88af7e04f3fe0bb3a800163113d7e0ca12 |
30-Aug-2010 |
Jim Ingham <jingham@apple.com> |
Added a way to open the current source file & line in an external editor, and you can turn this on with: lldb -e git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@112502 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
river/Driver.h
|
4ead2e9a5a74f465d00b0301c165fbebf4ee4ff3 |
28-Aug-2010 |
Johnny Chen <johnny.chen@apple.com> |
o Exposed SBFileSpec to the Python APIs in lldb.py. o Fixed a crasher when getting it via SBTarget.GetExecutable(). >>> filespec = target.GetExecutable() Segmentation fault o And renamed SBFileSpec::GetFileName() to GetFilename() to be consistent with FileSpec::GetFilename(). git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@112308 91177308-0d34-0410-b5e6-96231b3b80d8
river/IOChannel.cpp
|
c833295baeec641086f536e78050388af36784f8 |
26-Aug-2010 |
Jim Ingham <jingham@apple.com> |
Change "Current" as in GetCurrentThread, GetCurrentStackFrame, etc, to "Selected" i.e. GetSelectedThread. Selected makes more sense, since these are set by some user action (a selection). I didn't change "CurrentProcess" since this is always controlled by the target, and a given target can only have one process, so it really can't be selected. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@112221 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
river/Driver.h
|
35c0edcedb2058ca8d0758f71ce958c23836d52d |
31-Jul-2010 |
Greg Clayton <gclayton@apple.com> |
Fixed debugserver to not exit when we are able to spawn the process, yet not launch it due to not being able to get the task port. A SIGHUP was killing us and also an error string wasn't properly being passed along. Got rid of a class error variable that can only lead to multi-threaded crashes. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@109930 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachProcess.cpp
ebugserver/source/MacOSX/MachProcess.h
ebugserver/source/MacOSX/MachTask.cpp
ebugserver/source/debugserver.cpp
|
7c9842487cd2a61f12669624f4ba38bb5c8617ea |
28-Jul-2010 |
Johnny Chen <johnny.chen@apple.com> |
The unix "source" command maps to "command source" in lldb. :-) git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@109673 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
bef1583b89e73de77c8b0897fcf42b5b1fcabe4c |
14-Jul-2010 |
Greg Clayton <gclayton@apple.com> |
I enabled some extra warnings for hidden local variables and for hidden virtual functions and caught some things and did some general code cleanup. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@108299 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
river/IOChannel.cpp
|
980d067aa269147da6ca8e59dee583a7936af67c |
13-Jul-2010 |
Greg Clayton <gclayton@apple.com> |
Patch from Jean-Daniel Dupas: Makefile patch to explicitly use PROJ_SRC_DIR when required. It fixes build when obj dir is not source dir. I also fixed a build warning in ClangResultSynthesizer.cpp. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@108210 91177308-0d34-0410-b5e6-96231b3b80d8
river/Makefile
|
0a164a1664bce107a4049b838485863320c8292a |
10-Jul-2010 |
Eli Friedman <eli.friedman@gmail.com> |
Misc warning fixes. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@108029 91177308-0d34-0410-b5e6-96231b3b80d8
river/IOChannel.cpp
|
26f93cead39bed47837880605ed70562e2796818 |
10-Jul-2010 |
Eli Friedman <eli.friedman@gmail.com> |
Make current Makefiles work on Linux (at least, they work for me). Please tell me if this breaks anything. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@108025 91177308-0d34-0410-b5e6-96231b3b80d8
river/Makefile
|
54e7afa84d945f9137f9372ecde432f9e1a702fc |
09-Jul-2010 |
Greg Clayton <gclayton@apple.com> |
Merged Eli Friedman's linux build changes where he added Makefile files that enabled LLVM make style building and made this compile LLDB on Mac OS X. We can now iterate on this to make the build work on both linux and macosx. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@108009 91177308-0d34-0410-b5e6-96231b3b80d8
akefile
ebugserver/debugserver.xcodeproj/project.pbxproj
ebugserver/source/RNBRemote.cpp
river/Driver.cpp
river/IOChannel.cpp
river/IOChannel.h
river/Makefile
|
2ee73ea4ce3aa899885fa6bd7ea7119b675e982d |
06-Jul-2010 |
Greg Clayton <gclayton@apple.com> |
Added "-Wparentheses" so we catch possible errors like: if (a = 0) instead of: if (a == 0) Thanks to Jean-Daniel Dupas. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@107672 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugserver.xcodeproj/project.pbxproj
|
e9d0df45df0ee87623985d1e59947a2ca50c14ea |
02-Jul-2010 |
Greg Clayton <gclayton@apple.com> |
More leaks detection: - fixed 3 posix spawn attributes leaks - fixed us always leaking CXXBaseSpecifier objects when we create class base classes. Clang apparently copies the base classes we pass in. Fixed some code formatting in ClangASTContext.cpp. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@107459 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/source/MacOSX/MachProcess.cpp
|
12bec71b323dc520f0e985a86e09c4712559e115 |
28-Jun-2010 |
Greg Clayton <gclayton@apple.com> |
Added function name types to allow us to set breakpoints by name more intelligently. The four name types we currently have are: eFunctionNameTypeFull = (1 << 1), // The function name. // For C this is the same as just the name of the function // For C++ this is the demangled version of the mangled name. // For ObjC this is the full function signature with the + or // - and the square brackets and the class and selector eFunctionNameTypeBase = (1 << 2), // The function name only, no namespaces or arguments and no class // methods or selectors will be searched. eFunctionNameTypeMethod = (1 << 3), // Find function by method name (C++) with no namespace or arguments eFunctionNameTypeSelector = (1 << 4) // Find function by selector name (ObjC) names this allows much more flexibility when setting breakoints: (lldb) breakpoint set --name main --basename (lldb) breakpoint set --name main --fullname (lldb) breakpoint set --name main --method (lldb) breakpoint set --name main --selector The default: (lldb) breakpoint set --name main will inspect the name "main" and look for any parens, or if the name starts with "-[" or "+[" and if any are found then a full name search will happen. Else a basename search will be the default. Fixed some command option structures so not all options are required when they shouldn't be. Cleaned up the breakpoint output summary. Made the "image lookup --address <addr>" output much more verbose so it shows all the important symbol context results. Added a GetDescription method to many of the SymbolContext objects for the more verbose output. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@107075 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
63094e0bb161580564954dee512955c1c79d3476 |
23-Jun-2010 |
Greg Clayton <gclayton@apple.com> |
Very large changes that were needed in order to allow multiple connections to the debugger from GUI windows. Previously there was one global debugger instance that could be accessed that had its own command interpreter and current state (current target/process/thread/frame). When a GUI debugger was attached, if it opened more than one window that each had a console window, there were issues where the last one to setup the global debugger object won and got control of the debugger. To avoid this we now create instances of the lldb_private::Debugger that each has its own state: - target list for targets the debugger instance owns - current process/thread/frame - its own command interpreter - its own input, output and error file handles to avoid conflicts - its own input reader stack So now clients should call: SBDebugger::Initialize(); // (static function) SBDebugger debugger (SBDebugger::Create()); // Use which ever file handles you wish debugger.SetErrorFileHandle (stderr, false); debugger.SetOutputFileHandle (stdout, false); debugger.SetInputFileHandle (stdin, true); // main loop SBDebugger::Terminate(); // (static function) SBDebugger::Initialize() and SBDebugger::Terminate() are ref counted to ensure nothing gets destroyed too early when multiple clients might be attached. Cleaned up the command interpreter and the CommandObject and all subclasses to take more appropriate arguments. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@106615 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
river/Driver.h
river/IOChannel.cpp
|
41313fcfe1dac69ea33cc835c5eff28262e5cc04 |
18-Jun-2010 |
Jim Ingham <jingham@apple.com> |
Move the "status" command to "process status" since that's where it belongs. Also make it print "running" if invoked when the current process is running. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@106265 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
34e9a98dcff785b0693594b6d6753f560abf8be2 |
15-Jun-2010 |
Jim Ingham <jingham@apple.com> |
Change the Options parser over to use a mask rather than an ordinal for option sets. Fixed the Disassemble arguments so you can't specify start address or name in multiple ways. Fixed the command line input so you can specify the filename without "-f" even if you use other options. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@106020 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
ef2bc8787c6b12bd69dc45dd38ab2f1eb2673778 |
13-Jun-2010 |
Eli Friedman <eli.friedman@gmail.com> |
Make getopt() use portable to Linux. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@105922 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
|
dea5ea78ef9bf371a0d19590c6b7c6989cba9a89 |
09-Jun-2010 |
Jason Molenda <jmolenda@apple.com> |
Move source/Utility/PseudoTerminal.h into include/lldb/Utility. The top of the header file seems to indicate that this was intended to be over at include/lldb/Core but we should be in line with the .cpp file's location so it's include/lldb/Utility for now. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@105753 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.h
|
d6e167d0fe8666347554226424bb39e36686e0d6 |
09-Jun-2010 |
Eli Friedman <eli.friedman@gmail.com> |
Add a few more missing includes. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@105743 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
river/IOChannel.cpp
|
f2f321d826c21c674ca5787b18e8b3e0edaa214b |
09-Jun-2010 |
Eli Friedman <eli.friedman@gmail.com> |
Misc minor warning/error fixes. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@105720 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.cpp
river/Driver.h
river/IOChannel.cpp
|
fdd10d62bb2c1ccaf348015daae5e72d39fe19a6 |
09-Jun-2010 |
Eli Friedman <eli.friedman@gmail.com> |
And part two of two of fixing includes; somehow I thought the problem was more widespread than it was. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@105689 91177308-0d34-0410-b5e6-96231b3b80d8
river/Driver.h
|
24943d2ee8bfaa7cf5893e4709143924157a5c1e |
08-Jun-2010 |
Chris Lattner <sabre@nondot.org> |
Initial checkin of lldb code from internal Apple repo. git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@105619 91177308-0d34-0410-b5e6-96231b3b80d8
ebugserver/debugnub-exports
ebugserver/debugserver.xcodeproj/project.pbxproj
ebugserver/resources/lldb-debugserver-Info.plist
ebugserver/resources/lldb-debugserver-entitlements.plist
ebugserver/scripts/dbgnub-config.pl
ebugserver/source/ChangeLog
ebugserver/source/DNB.cpp
ebugserver/source/DNB.h
ebugserver/source/DNBArch.h
ebugserver/source/DNBBreakpoint.cpp
ebugserver/source/DNBBreakpoint.h
ebugserver/source/DNBDataRef.cpp
ebugserver/source/DNBDataRef.h
ebugserver/source/DNBDefs.h
ebugserver/source/DNBError.cpp
ebugserver/source/DNBError.h
ebugserver/source/DNBLog.cpp
ebugserver/source/DNBLog.h
ebugserver/source/DNBRegisterInfo.cpp
ebugserver/source/DNBRegisterInfo.h
ebugserver/source/DNBRuntimeAction.h
ebugserver/source/DNBThreadResumeActions.cpp
ebugserver/source/DNBThreadResumeActions.h
ebugserver/source/DNBTimer.h
ebugserver/source/FunctionProfiler.cpp
ebugserver/source/FunctionProfiler.h
ebugserver/source/MacOSX/CFBundle.cpp
ebugserver/source/MacOSX/CFBundle.h
ebugserver/source/MacOSX/CFData.cpp
ebugserver/source/MacOSX/CFData.h
ebugserver/source/MacOSX/CFString.cpp
ebugserver/source/MacOSX/CFString.h
ebugserver/source/MacOSX/CFUtils.h
ebugserver/source/MacOSX/MachDYLD.cpp
ebugserver/source/MacOSX/MachDYLD.h
ebugserver/source/MacOSX/MachException.cpp
ebugserver/source/MacOSX/MachException.h
ebugserver/source/MacOSX/MachProcess.cpp
ebugserver/source/MacOSX/MachProcess.h
ebugserver/source/MacOSX/MachTask.cpp
ebugserver/source/MacOSX/MachTask.h
ebugserver/source/MacOSX/MachThread.cpp
ebugserver/source/MacOSX/MachThread.h
ebugserver/source/MacOSX/MachThreadList.cpp
ebugserver/source/MacOSX/MachThreadList.h
ebugserver/source/MacOSX/MachVMMemory.cpp
ebugserver/source/MacOSX/MachVMMemory.h
ebugserver/source/MacOSX/MachVMRegion.cpp
ebugserver/source/MacOSX/MachVMRegion.h
ebugserver/source/MacOSX/arm/DNBArchImpl.cpp
ebugserver/source/MacOSX/arm/DNBArchImpl.h
ebugserver/source/MacOSX/dbgnub-mig.defs
ebugserver/source/MacOSX/i386/DNBArchImplI386.cpp
ebugserver/source/MacOSX/i386/DNBArchImplI386.h
ebugserver/source/MacOSX/ppc/DNBArchImpl.cpp
ebugserver/source/MacOSX/ppc/DNBArchImpl.h
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.cpp
ebugserver/source/MacOSX/x86_64/DNBArchImplX86_64.h
ebugserver/source/PThreadCondition.h
ebugserver/source/PThreadEvent.cpp
ebugserver/source/PThreadEvent.h
ebugserver/source/PThreadMutex.cpp
ebugserver/source/PThreadMutex.h
ebugserver/source/ProfileObjectiveC.cpp
ebugserver/source/ProfileObjectiveC.h
ebugserver/source/PseudoTerminal.cpp
ebugserver/source/PseudoTerminal.h
ebugserver/source/RNBContext.cpp
ebugserver/source/RNBContext.h
ebugserver/source/RNBDefs.h
ebugserver/source/RNBRemote.cpp
ebugserver/source/RNBRemote.h
ebugserver/source/RNBServices.cpp
ebugserver/source/RNBServices.h
ebugserver/source/RNBSocket.cpp
ebugserver/source/RNBSocket.h
ebugserver/source/SysSignal.cpp
ebugserver/source/SysSignal.h
ebugserver/source/TTYState.cpp
ebugserver/source/TTYState.h
ebugserver/source/com.apple.debugserver.applist.plist
ebugserver/source/com.apple.debugserver.plist
ebugserver/source/debugserver-entitlements.plist
ebugserver/source/debugserver.cpp
river/Driver.cpp
river/Driver.h
river/IOChannel.cpp
river/IOChannel.h
river/lldb-Info.plist
|