Andrew Kaylor
bc68b431ba
Stop process monitor from ProcessPOSIX::Finalize
...
llvm-svn: 186039
2013-07-10 21:57:27 +00:00
Matt Kopec
fb6ab54000
Add support for listing inferior thread names on Linux.
...
llvm-svn: 186033
2013-07-10 20:53:11 +00:00
Greg Clayton
a063c810a0
Fixed an issue introduced with my last fix where the command and sequence ID extraction were moved causing them to be reversed.
...
llvm-svn: 186020
2013-07-10 17:58:19 +00:00
Greg Clayton
7ad05d136a
Fixed the CommunicationKDP::SendRequestAndGetReply() to correctly be able to deal with getting a reply from a previous packet without resending the packet again.
...
llvm-svn: 185988
2013-07-10 01:05:05 +00:00
Andrew Kaylor
6578cb6478
Reverting ProcessMonitor shared pointer changes
...
llvm-svn: 185981
2013-07-09 22:36:48 +00:00
Andrew Kaylor
214f3a8a78
Use shared pointers to hold the process in ProcessMonitor
...
llvm-svn: 185946
2013-07-09 16:44:27 +00:00
Matt Kopec
b29104467f
Fix signal handling for POSIX (only tested on Linux) processes in multi-threaded programs.
...
Also fix a related issue where if a thread exits after a thread continue, lldb would hang.
llvm-svn: 185944
2013-07-09 15:09:45 +00:00
Ed Maste
6f066412ac
Pass tid through to ptrace operations
...
This change is equivalent to the Linux threading support.
llvm-svn: 185671
2013-07-04 21:47:32 +00:00
Ed Maste
be0b55d121
Avoid crash if we fail to resolve process in attach
...
llvm-svn: 185661
2013-07-04 18:25:34 +00:00
Ed Maste
4331ac7bd3
Remove empty files left behind from move to POSIX/
...
llvm-svn: 185559
2013-07-03 17:41:40 +00:00
Ed Maste
1875776e68
Update error message; detach-keeps-stopped is also not on FreeBSD
...
llvm-svn: 185549
2013-07-03 16:26:34 +00:00
Ed Maste
a02f553e50
Sync parts of FreeBSD Process plugin with Linux
...
* Use PseudoTerminal to fix stdio handling / passthrough to the inferior
process.
* Add log messages equivalent to the Linux ones.
* Port changes relating to process creation / termination.
This revision contains changes equivalent to (parts of) SVN revisions
109318 142384 166055 168503 169645 177116 182809.
llvm-svn: 185442
2013-07-02 16:45:16 +00:00
Jason Molenda
54d04f3bec
Change the default timeout for KDP communications to be 5 seconds.
...
<rdar://problem/13793059>
llvm-svn: 185400
2013-07-02 01:29:59 +00:00
Michael Sartain
a7499c9830
Split symbol support for ELF and Linux.
...
llvm-svn: 185366
2013-07-01 19:45:50 +00:00
Sylvestre Ledru
594058394e
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.
llvm-svn: 185313
2013-07-01 08:21:36 +00:00
Matt Kopec
eb7f2315f4
Remove unneeded limbo state flag.
...
llvm-svn: 185010
2013-06-26 18:46:08 +00:00
Ed Maste
a708a36cea
Match printf format specifiers and arguments
...
llvm-svn: 184854
2013-06-25 14:47:45 +00:00
Ed Maste
d66d3ec036
Update comment after Linux->POSIX rename
...
llvm-svn: 184850
2013-06-25 14:29:15 +00:00
Han Ming Ong
91ed6b878f
<rdar://problem/14182286>
...
Made sure that temporary object created from HarmonizeThreadIdsForProfileData() doesn’t get passed around without creating an object first.
Reviewed by Greg
llvm-svn: 184769
2013-06-24 18:15:05 +00:00
Ed Maste
5d34af358a
Sync FreeBSD files to Linux equivalents, to reduce noise in diff
...
- Sort functions in the same order
- Match whitespace
- Remove commetned out code
- Make filename in comments match filename
llvm-svn: 184746
2013-06-24 15:09:18 +00:00
Ed Maste
428a6784b7
Update comment to match class name
...
llvm-svn: 184745
2013-06-24 15:04:47 +00:00
Ed Maste
5a9a6260c6
Eliminate missing virtual destructor warning on FreeBSD
...
Akin to r181712 (88e529b7) of Linux/ProcessMonitor.cpp
llvm-svn: 184742
2013-06-24 14:55:03 +00:00
Ed Maste
69b76d5d65
Update for Linux->POSIX rename
...
Revision r147613 (2341d35) renamed this file with s/Linux/POSIX/, but
header guards and comments were not updated to match.
llvm-svn: 184741
2013-06-24 14:51:39 +00:00
Andy Gibbs
4e279ae0c8
Using offsetof to an item within an array is an extension so mark it as such to avoid compiler warnings.
...
llvm-svn: 184738
2013-06-24 14:05:59 +00:00
Jim Ingham
dee1bc98f9
Add some useful logging for tracking thread matching problems.
...
llvm-svn: 184619
2013-06-22 00:27:45 +00:00
Han Ming Ong
399289e931
<rdar://problem/13980489>
...
I added scan type to ‘qGetProfileData’ previously but forgot to update the check to be a substring search.
llvm-svn: 184588
2013-06-21 19:56:59 +00:00
Andy Gibbs
897f50c5ba
Use LLDB_INVALID_REGNUM at Mike Sartain's suggestion
...
llvm-svn: 184342
2013-06-19 20:04:56 +00:00
Andy Gibbs
44f4db784b
Fix two 'variable is used uninitialised' warnings. Change assert to llvm_unreachable.
...
llvm-svn: 184334
2013-06-19 19:05:52 +00:00
Andy Gibbs
a297a97e09
Sort out a number of mismatched integer types in order to cut down the number of compiler warnings.
...
llvm-svn: 184333
2013-06-19 19:04:53 +00:00
Matt Kopec
246a89562c
Add assertion for when no watchpoint found in POSIX watchnotify handler.
...
Also, ensure x86_64 watchpoint registers are initialized before they are accessed on the POSIX side.
llvm-svn: 184246
2013-06-18 21:58:02 +00:00
Matt Kopec
362f503519
Temporarily disable checking of watchpoint hit on FreeBSD on trace message.
...
Patch from Ed Maste.
llvm-svn: 184241
2013-06-18 21:35:32 +00:00
Matt Kopec
b96a126b5b
Add output of fault address on an address related crash (ie. segfault).
...
llvm-svn: 183701
2013-06-10 22:14:47 +00:00
Jim Ingham
4e5c821087
Don't retry the Connect when starting up debugserver if the reason for the previous failure was
...
EINTR. That means the user was trying to interrupt us, and we should just stop instead.
<rdar://problem/13184758>
llvm-svn: 183577
2013-06-07 22:09:53 +00:00
Ashok Thirumurthi
a3dd4899e8
Use std::vector for the array of RegisterInfo structs that describe the register context.
...
- Ensures that this container is populated once for the lifetime of lldb
--- In particular, static methods can query this data even after the first RegisterContext has been destroyed.
- Uses a singleton function to avoid global constructors.
Thanks to Greg Clayton for the suggestion!
llvm-svn: 183313
2013-06-05 14:12:43 +00:00
Jason Molenda
23399d765c
Change UnwindLLDB::SearchForSavedLocationForRegister so that it will allow for
...
the link register save location being in the link register - in which case we
should iterate down the stack, not recursively try to find the lr in the current
frame over and over.
<rdar://problem/13932954>
llvm-svn: 183282
2013-06-05 00:12:50 +00:00
Greg Clayton
76ea03ea7b
Add a more clear explanation of what is missing for core files with no LC_THREAD load commands.
...
llvm-svn: 183253
2013-06-04 21:48:36 +00:00
Greg Clayton
9645e82ce2
Make sure a core file has thread contexts before we try and load it.
...
llvm-svn: 183252
2013-06-04 21:34:37 +00:00
Daniel Malea
6f0a5edb3f
More minor FreeBSD fixes.
...
- link libexecinfo (as libc is missing backtrace())
- enable FreeBSD-specific plugins
Patch by Ed Maste!
llvm-svn: 183233
2013-06-04 15:59:01 +00:00
Matt Kopec
edee182bef
Fix FreeBSD build due to previous changes to ProcessMonitor::Detach.
...
llvm-svn: 183150
2013-06-03 19:48:53 +00:00
Jim Ingham
35579dde40
Fix a couple of error message typos.
...
llvm-svn: 183145
2013-06-03 19:34:01 +00:00
Matt Kopec
ef14371d3f
Fix various build warnings.
...
llvm-svn: 183140
2013-06-03 18:00:07 +00:00
Matt Kopec
6f961239ae
Fix setting of watchpoints on inferior thread creation for Linux.
...
llvm-svn: 183139
2013-06-03 17:40:20 +00:00
Ashok Thirumurthi
880728f3eb
Matched a vector new with vector delete.
...
Thanks to Daniel and valgrind.
llvm-svn: 183110
2013-06-03 15:53:40 +00:00
Matt Kopec
085d6cec1a
Add ability to attach/detach to multi-threaded inferiors on Linux.
...
All running threads will be detected and stopped on attach and all threads get resumed on detach.
llvm-svn: 183049
2013-05-31 22:00:07 +00:00
Daniel Malea
e376a65182
FreeBSD cmake build fixes.
...
- missing #include <cstdlib> in Mangled.cpp
- missing include dirs in FreeBSD CMakeLists.txt
Patch by Ed Maste!
llvm-svn: 183032
2013-05-31 19:24:53 +00:00
Andrew Kaylor
93132f504f
Adding support for stopping all threads of multithreaded inferiors on Linux. Also adding multithreaded test cases.
...
llvm-svn: 182809
2013-05-28 23:04:25 +00:00
Greg Clayton
a1b5dd9a20
<rdar://problem/13956179>
...
Fixed ProcessMachCore to be able to locate the main executeable in the core file even if it doesn't start at a core file address range boundary. Prior to this we only checked the first bytes of each range in the core file for mach_kernel or dyld. Now we still do this, but if we don't find the mach_kernel or dyld anywhere, we go through all core file ranges and check every 0x1000 to see if we can find dyld or the mach_kernel.
Now that we can properly detect the mach_kernel at any address, we don't need to call "DynamicLoaderDarwinKernel::SearchForDarwinKernel(Process*)" anymore.
llvm-svn: 182513
2013-05-22 21:00:49 +00:00
Greg Clayton
8cda7f0830
Added a test case that verifies that LLDB can debug across a process exec'ing itself into a new program. This currently is only enabled for Darwin since we exec from 64 bit to 32 bit and vice versa for 'x86_64' targets.
...
This can easily be adapted for linux and other platforms, but I didn't want to break any buildbots by assuming it will work.
llvm-svn: 182428
2013-05-21 21:55:59 +00:00
Greg Clayton
15fc2be75b
<rdar://problem/13892516>
...
LLDB can now debug across calls to exec when the architecture changes from say i386 to x86_64 (on darwin).
llvm-svn: 182345
2013-05-21 01:00:52 +00:00
Matt Kopec
841a5488fb
The Linux process plugin wasn't returning the correct linux signals. This fixes that.
...
Thus, this patch also negates a previous fix for handling SIGCHLD.
llvm-svn: 182166
2013-05-17 22:21:08 +00:00