Jason Molenda
0b2dbe0ebe
Fix an error message in debugserver so it doesn't print "Unable to
...
launch process (null)" because we changed argv while doing argument
parsing.
llvm-svn: 167202
2012-11-01 02:02:59 +00:00
Jim Ingham
490bccd659
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>
llvm-svn: 167194
2012-11-01 01:04:46 +00:00
Greg Clayton
d9c2370b33
Added the plists to the debugserver project and fixed the labels for the new plists.
...
llvm-svn: 167183
2012-10-31 23:49:14 +00:00
Greg Clayton
e11b43bc69
More launchd style plists.
...
llvm-svn: 167182
2012-10-31 23:43:37 +00:00
Greg Clayton
48baf7a788
Resolve any bundle paths we are given when the specified executable is a bundle.
...
llvm-svn: 167175
2012-10-31 21:44:39 +00:00
Jason Molenda
67c3cf5357
eArgTypePath was removed in r166533; change -c to
...
expect eArgTypeFilename.
llvm-svn: 166542
2012-10-24 03:29:40 +00:00
Enrico Granata
430e540b6b
Removing the two extra GetXSize(bool) calls since we do not desire to support them long-term
...
llvm-svn: 166060
2012-10-16 21:11:14 +00:00
Enrico Granata
cd4d24d5e9
<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
...
llvm-svn: 166058
2012-10-16 20:57:12 +00:00
Greg Clayton
01db0c6823
Provide an SSL context ref in case SLL is needed for communication.
...
llvm-svn: 165856
2012-10-13 00:18:18 +00:00
Greg Clayton
3e672345bc
<rdar://problem/12042500>
...
Fixed an issue where we would try to launch an application twice and the second failure would cover up the first.
llvm-svn: 165756
2012-10-11 22:05:13 +00:00
Greg Clayton
1698be7352
Fix build warnings.
...
llvm-svn: 165755
2012-10-11 22:04:01 +00:00
Jim Ingham
4f465cff8a
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>
llvm-svn: 165640
2012-10-10 18:32:14 +00:00
Jason Molenda
65c28cb47a
Fix the extra space char being emitted in this message when breakpoints resolve -
...
1 location added to breakpoint 2
llvm-svn: 164810
2012-09-28 01:50:47 +00:00
Greg Clayton
dcadc5cfb7
Re-adding this previously removed file.
...
llvm-svn: 164331
2012-09-20 23:08:52 +00:00
Greg Clayton
b85248da95
This file is causing problems. I am going to remove it and try re-adding it.
...
llvm-svn: 164328
2012-09-20 23:08:12 +00:00
Jason Molenda
944cc67eba
Bump to lldb-168, debugserver-193.
...
llvm-svn: 164291
2012-09-20 06:42:30 +00:00
Greg Clayton
813ddfcdd0
<rdar://problem/12219840>
...
Don't leak mach ports when calling "mach_thread_self()".
llvm-svn: 164152
2012-09-18 18:19:49 +00:00
Greg Clayton
43e0af06b4
Stop using the "%z" size_t modifier and cast all size_t values to uint64_t. Some platforms don't support this modification.
...
llvm-svn: 164148
2012-09-18 18:04:04 +00:00
Filipe Cabecinhas
d0b87d81a1
Some more typing-related fixes.
...
llvm-svn: 163641
2012-09-11 18:11:16 +00:00
Greg Clayton
85fb1b93f3
<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.
llvm-svn: 163591
2012-09-11 02:33:37 +00:00
Sean Callanan
3ff3199e61
Fixed a bug where the LLDB_VERSION wasn't properly
...
truncated during install-headers.
<rdar://problem/12268130>
llvm-svn: 163559
2012-09-10 22:43:22 +00:00
Sean Callanan
433c8a1f44
Committed a simple dtrace script that tracks
...
process termination, which can be useful to track
debugserver's delivery of signals.
llvm-svn: 162104
2012-08-17 16:30:13 +00:00
Johnny Chen
eb46f78b08
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.
llvm-svn: 161993
2012-08-15 22:10:42 +00:00
Sean Callanan
d5e37e4d2b
Updating Xcode project version numbers for lldb-165 and debugserver-192
...
llvm-svn: 161374
2012-08-07 00:32:29 +00:00
Sean Callanan
c40b0f38b3
Updating Xcode project version numbers for lldb-164 and debugserver-191
...
llvm-svn: 161209
2012-08-02 20:40:53 +00:00
Jim Ingham
cfc0935ed9
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>
llvm-svn: 160903
2012-07-27 23:57:19 +00:00
Sean Callanan
6981f1d856
Updating Xcode project version numbers for lldb-163 and debugserver-190
...
llvm-svn: 160770
2012-07-26 01:42:37 +00:00
Jim Ingham
279ceecf65
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>
llvm-svn: 160756
2012-07-25 21:12:43 +00:00
Jim Ingham
1bfe4f6417
Use a more efficient API to tell if a process belongs to springboard or not.
...
llvm-svn: 160655
2012-07-24 01:23:53 +00:00
Jim Ingham
cd16df9154
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.
...
llvm-svn: 160578
2012-07-20 21:37:13 +00:00
Greg Clayton
7dab2be287
<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.
llvm-svn: 160487
2012-07-19 02:45:35 +00:00
Greg Clayton
9773542933
Update the project and schemes to the Xcode recommended settings.
...
llvm-svn: 160391
2012-07-17 19:47:06 +00:00
Greg Clayton
23f59509a8
Ran the static analyzer on the codebase and found a few things.
...
llvm-svn: 160338
2012-07-17 03:23:13 +00:00
Jim Ingham
73472eef4d
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>
llvm-svn: 160310
2012-07-16 18:56:05 +00:00
Jason Molenda
64e1d4abc7
Bump to lldb-162 / debugserver-189.
...
llvm-svn: 160212
2012-07-14 01:12:03 +00:00
Enrico Granata
f04a21917c
<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.
...
llvm-svn: 160199
2012-07-13 23:18:48 +00:00
Jim Ingham
9aa15a4562
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>
llvm-svn: 160147
2012-07-12 23:16:43 +00:00
Sean Callanan
9690a41e18
Added an editline fix to make the delete key act
...
as expected on Mac OS X.
<rdar://problem/11813365>
llvm-svn: 160091
2012-07-11 22:55:32 +00:00
Jason Molenda
84d32ddfc8
Bump versions to lldb-161, debugserver-188.
...
llvm-svn: 159798
2012-07-06 01:32:10 +00:00
Greg Clayton
503cd42259
Spelling fixes.
...
llvm-svn: 159466
2012-06-29 21:58:00 +00:00
Enrico Granata
c76715f3be
<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
...
llvm-svn: 159322
2012-06-28 01:23:30 +00:00
Filipe Cabecinhas
2f42bb03b7
DNBLogThreadedIf already inserts a newline
...
llvm-svn: 158995
2012-06-22 13:54:32 +00:00
Johnny Chen
9a63cfaf8d
rdar://problem/11649610
...
lldb confused by single quote in executable path
Also add a test case.
llvm-svn: 158693
2012-06-19 00:56:55 +00:00
Johnny Chen
be4e208103
rdar://problem/11390100
...
debugserver needs to be able to posix_spawn debugging apps that have ".app" in their path that aren't bundles
llvm-svn: 158327
2012-06-11 21:05:26 +00:00
Johnny Chen
a539598f65
Properly initialize the member fields used for hardware watchpoint transaction management.
...
llvm-svn: 157878
2012-06-02 06:25:23 +00:00
Johnny Chen
847075607f
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.
llvm-svn: 157858
2012-06-01 23:43:05 +00:00
Jim Ingham
d242f1c037
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.
...
llvm-svn: 157790
2012-06-01 01:07:02 +00:00
Jim Ingham
6d10c17a31
Add an API to determine whether there are any characters on the current input line.
...
llvm-svn: 157789
2012-06-01 01:03:40 +00:00
Johnny Chen
e48fb7d732
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.
...
llvm-svn: 157778
2012-05-31 23:02:30 +00:00
Filipe Cabecinhas
970c6f39da
Make dbgnub-config.pl work with multiline env vars.
...
llvm-svn: 157664
2012-05-30 00:44:14 +00:00
Filipe Cabecinhas
20a5813a5f
Substitute LLVMLibsOptions for LD.Flags so we can find the mentioned libs
...
llvm-svn: 157616
2012-05-29 13:35:46 +00:00
Johnny Chen
6463720505
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.
llvm-svn: 157345
2012-05-23 21:09:52 +00:00
Johnny Chen
e26c721976
Fix a typo.
...
llvm-svn: 156952
2012-05-16 22:01:10 +00:00
Jason Molenda
3bcf4b5cc7
Bump debugserver version # to 187.
...
llvm-svn: 156888
2012-05-16 00:40:45 +00:00
Jason Molenda
94379541e2
Change lockdown API use in RNBSocket::ConnectToService.
...
<rdar://problem/10800927>
llvm-svn: 156883
2012-05-16 00:36:21 +00:00
Greg Clayton
c0debe8566
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.
...
llvm-svn: 156595
2012-05-11 00:27:51 +00:00
Johnny Chen
bbc00939f2
Sanity check the return value from SBSCopyApplicationDisplayIdentifiers() before calling CFArrayGetCount() on it.
...
rdar://problem/11331867
llvm-svn: 156562
2012-05-10 19:24:41 +00:00
Johnny Chen
fd02a89960
Make ctrl-c terminate the current input line and start an empty line, instead of the previous content.
...
rdar://problem/11412821
llvm-svn: 156510
2012-05-09 21:03:07 +00:00
Jim Ingham
8499e1a4cb
Print out a notification when the process of a target other than the currently selected target stops.
...
llvm-svn: 156433
2012-05-08 23:06:07 +00:00
Greg Clayton
7051231709
<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.
llvm-svn: 156354
2012-05-08 01:45:38 +00:00
Johnny Chen
5a4b4b86d6
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.
llvm-svn: 156314
2012-05-07 18:18:08 +00:00
Johnny Chen
66b7c59593
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. :-)
llvm-svn: 156230
2012-05-05 04:44:12 +00:00
Jim Ingham
64e7ead1d8
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.
llvm-svn: 156101
2012-05-03 21:19:36 +00:00
Jim Ingham
57190baa6c
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
llvm-svn: 155665
2012-04-26 21:39:32 +00:00
Greg Clayton
caca09b628
Patch from Filipe Cabecinhas.
...
llvm-svn: 155641
2012-04-26 17:11:01 +00:00
Greg Clayton
7afbe07a0d
Patch from Filipe Cabecinhas.
...
llvm-svn: 155640
2012-04-26 17:09:38 +00:00
Jim Ingham
5d2735e502
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
llvm-svn: 155560
2012-04-25 17:45:26 +00:00
Greg Clayton
4463399b0d
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.
llvm-svn: 154380
2012-04-10 03:22:03 +00:00
Greg Clayton
3c18cd3de1
Fixed the C++11 #defines that wrap std::weak_ptr to actually use std::weak_ptr.
...
llvm-svn: 154041
2012-04-04 20:03:33 +00:00
Sean Callanan
139656580f
Updating Xcode project version numbers for lldb-137 and debugserver-186
...
llvm-svn: 153823
2012-04-01 06:36:59 +00:00
Greg Clayton
45cffd4943
Missed a file in the last FreeBSD patch.
...
llvm-svn: 153662
2012-03-29 17:46:49 +00:00
Greg Clayton
59b4fa1813
FreeBSD patch that enabled the lldb-platform to be built from Viktor Kutuzov.
...
llvm-svn: 153661
2012-03-29 17:46:11 +00:00
Sean Callanan
e41438ca8b
Updating Xcode project version numbers for lldb-136 and debugserver-185
...
llvm-svn: 153630
2012-03-29 02:40:34 +00:00
Jason Molenda
03c970e2fe
Bump version to debugserver-184, lldb-135.
...
llvm-svn: 153374
2012-03-24 04:05:56 +00:00
Jason Molenda
91fe8072ab
Small tweak to list of arches to build debugserver for on arm.
...
llvm-svn: 153371
2012-03-24 03:51:07 +00:00
Johnny Chen
760c54e640
Fix a typo.
...
llvm-svn: 153301
2012-03-23 01:28:19 +00:00
Johnny Chen
3f8140a6d8
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.
llvm-svn: 153300
2012-03-23 01:24:52 +00:00
Greg Clayton
aaaec7cf1f
Bumped Xcode project versions for lldb-134 and debugserver-183.
...
llvm-svn: 153298
2012-03-23 01:04:39 +00:00
Johnny Chen
d45a9c32c2
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
llvm-svn: 153273
2012-03-22 20:04:07 +00:00
Johnny Chen
8c9739eeda
Fixed a bug with the r153228 check-in earlier today in that the cached watchpoint
...
member variables were not reset appropriately.
llvm-svn: 153239
2012-03-22 05:10:43 +00:00
Johnny Chen
7cb09b61b2
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
llvm-svn: 153228
2012-03-22 00:08:13 +00:00
Jason Molenda
be55f383f0
Bump to lldb-133.
...
Remove unused entitlements plist from debugserver.
llvm-svn: 152973
2012-03-17 03:27:04 +00:00
Johnny Chen
e025e30a0e
Fix FRAMEWORK_SEARCH_PATHS for iOS builds.
...
llvm-svn: 152948
2012-03-16 21:25:14 +00:00
Sean Callanan
9f9ab86581
Updating Xcode project version numbers for lldb-132 and debugserver-182
...
llvm-svn: 152901
2012-03-16 06:05:58 +00:00
Sean Callanan
cc5039dd9e
Updating Xcode project version numbers for lldb-131 and debugserver-181
...
llvm-svn: 152726
2012-03-14 17:15:39 +00:00
Greg Clayton
d64afba584
<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++.
llvm-svn: 152698
2012-03-14 03:07:05 +00:00
Jason Molenda
64cab1220a
bump to debugserver-180
...
llvm-svn: 152687
2012-03-14 00:00:36 +00:00
Jason Molenda
9514fa3d39
On iOS builds, install debugserver in /Developer/usr/bin.
...
Also add a copy files phase for -target ios that installs
the debugserver launch plists.
llvm-svn: 152680
2012-03-13 23:29:39 +00:00
Jason Molenda
08441ba45e
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.
llvm-svn: 152671
2012-03-13 21:10:35 +00:00
Greg Clayton
9096603ae1
Bumped Xcode project versions for lldb-129 and debugserver-179.
...
llvm-svn: 152606
2012-03-13 02:26:21 +00:00
Jason Molenda
0c482971e4
version bump to 178
...
llvm-svn: 152602
2012-03-13 02:12:55 +00:00
Jason Molenda
d60205e68e
Don't SKIP_INSTALL for sdk==iOS, install in to /usr/local/bin for now.
...
llvm-svn: 152601
2012-03-13 01:56:24 +00:00
Jason Molenda
16d7581fdb
Pull in another plist from the old debugserver project.
...
Switch default compiler to clang.
llvm-svn: 152600
2012-03-13 01:23:54 +00:00
Greg Clayton
701a6b473d
<rdar://problem/11030692>
...
SBProcess::PutSTDIN() was not working for a few builds on darwin when using debugserver. This is now fixed.
llvm-svn: 152569
2012-03-12 19:02:41 +00:00
Jason Molenda
5a37223ece
Bump debugserver version to 177.
...
llvm-svn: 152464
2012-03-10 01:09:40 +00:00
Jason Molenda
bdf4161ab7
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>
llvm-svn: 152463
2012-03-10 01:09:05 +00:00
Jim Ingham
329617a80a
Make debugserver quieter about memory read errors.
...
<rdar://problem/10681220>
llvm-svn: 152438
2012-03-09 21:09:42 +00:00
Greg Clayton
b5225c863c
Bumping Xcode project versions for lldb-126 and debugserver-176.
...
llvm-svn: 152383
2012-03-09 04:31:35 +00:00
Greg Clayton
ef5a7b1c36
Bumping Xcode project version for lldb-124 and debugserver-175.
...
llvm-svn: 152294
2012-03-08 04:15:20 +00:00
Greg Clayton
85f3fa5411
<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.
llvm-svn: 152291
2012-03-08 03:27:27 +00:00