| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
Now lldb can build on FreeBSD with -Werror again.
llvm-svn: 256771
|
|
|
|
|
|
|
|
|
| |
As of r240543 ProcessPOSIX and POSIXThread are used only on FreeBSD, so
just roll them into ProcessFreeBSD and FreeBSDThread.
Differential Revision: http://reviews.llvm.org/D10698
llvm-svn: 243427
|
|
|
|
| |
llvm-svn: 242113
|
|
|
|
|
|
|
|
| |
The values of four important registers are included in logs for ptrace
PT_GETREGS. Put all four on the same line for a more compact log. Also
use the proper 64-bit register names.
llvm-svn: 240581
|
|
|
|
|
|
| |
This is the FreeBSD change for r238604.
llvm-svn: 238752
|
|
|
|
|
|
|
| |
This debug register diagnostic is really only applicable to amd64 at
present.
llvm-svn: 233403
|
|
|
|
|
|
|
|
|
|
| |
The latter is uint64_t beacuse lldb supports arbitrary pid/platforms
but in this case we're using it as return value for fork() which might
return -1 to the parent in case the syscall fails.
Differential Revision: http://reviews.llvm.org/D8491
llvm-svn: 232926
|
|
|
|
| |
llvm-svn: 231157
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
After closing all the leaked file descriptors to the inferior tty, the following problem occured:
- when stdin, stdout and stderr are redirected, there are no slave descriptors open (which is good)
- lldb has a reader thread, which attempts to read from the master end of the tty
- this thread receives an EOF
- in response, it closes it's master end
- as this is the last open file descriptor for the master end, this deletes the tty and sends
SIGHUP to the inferior (this is bad)
I fix this problem by making sure the master end remains open for the duration of the inferior
process by storing a copy of the file descriptor in ProcessMonitor. I create a copy to avoid
ownership issues with the reading thread.
Reviewers: ovyalov, emaste
Subscribers: lldb-commits
Differential Revision: http://reviews.llvm.org/D7440
llvm-svn: 228391
|
|
|
|
| |
llvm-svn: 228305
|
|
|
|
|
|
|
| |
CrashReason class. Deliver crash information from LLGS to lldb via
description field of thread stop packet.
llvm-svn: 227926
|
|
|
|
|
|
|
|
|
|
| |
Process/ProcessPOSIX.cpp
and FreeBSD/ProcessMonitor.
http://reviews.llvm.org/D6240
llvm-svn: 222372
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Taking advantage of the new 'CFAIsRegisterDereferenced' CFA register type, add
full stack unwind support to the PowerPC/PowerPC64 ABI. Also, add a new
register set for powerpc32-on-64, so the register sizes are correct. This also
requires modifying the ProcessMonitor to add support for non-uintptr_t-sized
register values.
Reviewers: jasonmolenda, emaste
Subscribers: emaste, lldb-commits
Differential Revision: http://reviews.llvm.org/D6183
llvm-svn: 221789
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
This adds preliminary support for PowerPC/PowerPC64, for FreeBSD. There are
some issues still:
* Breakpoints don't work well on powerpc64.
* Shared libraries don't yet get loaded for a 32-bit process on powerpc64 host.
* Backtraces don't work. This is due to PowerPC ABI using a backchain pointer
in memory, instead of a dedicated frame pointer register for the backchain.
* Breakpoints on functions without debug info may not work correctly for 32-bit
powerpc.
Reviewers: emaste, tfiala, jingham, clayborg
Reviewed By: clayborg
Subscribers: emaste, lldb-commits
Differential Revision: http://reviews.llvm.org/D5988
llvm-svn: 220944
|
|
|
|
| |
llvm-svn: 218685
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch moves creates a thread abstraction that represents a
thread running inside the LLDB process. This is a replacement for
otherwise using lldb::thread_t, and provides a platform agnostic
interface to managing these threads.
Differential Revision: http://reviews.llvm.org/D5198
Reviewed by: Jim Ingham
llvm-svn: 217460
|
|
|
|
|
|
|
|
|
|
| |
and remotely.
See the following links for details:
http://llvm.org/bugs/show_bug.cgi?id=20658
See http://reviews.llvm.org/D4941
llvm-svn: 215822
|
|
|
|
| |
llvm-svn: 209739
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
On FreeBSD ptrace(PT_KILL) is used to terminate the traced process
(as if PT_CONTINUE had been used with SIGKILL as the signal to be
delivered), and is the desired behaviour for ProcessPOSIX::DoDestroy.
On Linux, after ptrace(PTRACE_KILL) the traced process still exists
and can be interrogated. It is only upon resume that it exits as though
it received SIGKILL.
For now I'm committing only the FreeBSD change, until the Linux change
(review D3159) is successfully tested.
http://llvm.org/pr18894
llvm-svn: 205315
|
|
|
|
| |
llvm-svn: 204064
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Implement x86_64 debug register read/write in support of hardware
watchpoints. Hoist LinuxThread::TraceNotify code back into
POSIXThread::TraceNotify()
Patch by John Wolfe.
We still need to rework this later to avoid the #ifdef FreeBSD.
llvm-reviews.chandlerc.com/D2572
llvm.org/pr16706
llvm-svn: 201706
|
|
|
|
|
|
|
| |
This is SVN r191618 by Sylvestre Ledru applied to the FreeBSD
ProcessMonitor.
llvm-svn: 200791
|
|
|
|
|
|
|
| |
Modelled in part on GDBRemoteCommunicationClient.
Review: http://llvm-reviews.chandlerc.com/D2267
llvm-svn: 196787
|
|
|
|
| |
llvm-svn: 195685
|
|
|
|
| |
llvm-svn: 195683
|
|
|
|
|
|
|
|
|
|
| |
Although ptrace() can be passed a PID or TID for PT_CONTINUE and PT_STEP,
the kernel operates on all threads in the process in both cases. (See
the FOREACH_THREAD_IN_PROC in FreeBSD's sys_process.c:kern_ptrace.)
Make this clear by using the PID from the ProcessMonitor instance.
llvm-svn: 195656
|
|
|
|
|
|
|
|
|
|
| |
In almost all cases, the misuse is about "%lu" being used instead of the correct "%zu" (even though these are compatible on 64-bit platforms in practice). There are even a couple of cases where "%ld" (ie., signed int) is used instead of "%zu", and one where "%lu" is used instead of "%" PRIu64.
Fixes bug #17551.
Patch by "/dev/humancontroller"
llvm-svn: 193832
|
|
|
|
| |
llvm-svn: 192994
|
|
|
|
|
|
|
|
| |
::Fork already does this internally, so this was simply leaking file handles.
This fixes the problem where the test suite would occasionally run out of file handles.
llvm-svn: 192929
|
|
|
|
| |
llvm-svn: 190954
|
|
|
|
| |
llvm-svn: 190831
|
|
|
|
|
|
| |
ConnectionFileDescriptor.
llvm-svn: 190733
|
|
|
|
|
|
|
|
| |
Instead of directly manipulating the thread list in Launch and Attach,
just rely on RefreshStateAfterStop to populate the initial list.
Review: http://llvm-reviews.chandlerc.com/D1565
llvm-svn: 189889
|
|
|
|
|
|
|
|
|
|
|
| |
always now.
Created new LinuxThread class inherited from POSIXThread and removed linux / freebsd ifdefs
Removed several un-needed set thread name calls
CR (and multiple suggestions): mkopec
llvm-svn: 187545
|
|
|
|
| |
llvm-svn: 186871
|
|
|
|
| |
llvm-svn: 186509
|
|
|
|
|
|
|
| |
For thread support we are going to need other members of struct
ptrace_lwpinfo.
llvm-svn: 186505
|
|
|
|
| |
llvm-svn: 185981
|
|
|
|
| |
llvm-svn: 185946
|
|
|
|
|
|
| |
This change is equivalent to the Linux threading support.
llvm-svn: 185671
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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
|
|
|
|
| |
llvm-svn: 184854
|
|
|
|
|
|
|
|
|
| |
- Sort functions in the same order
- Match whitespace
- Remove commetned out code
- Make filename in comments match filename
llvm-svn: 184746
|
|
|
|
| |
llvm-svn: 184745
|
|
|
|
|
|
| |
Akin to r181712 (88e529b7) of Linux/ProcessMonitor.cpp
llvm-svn: 184742
|
|
|
|
| |
llvm-svn: 183150
|
|
|
|
|
|
|
|
|
|
| |
- Eliminated the use of static for methods that read m_register_infos, so that these routines can be implemented in the base class.
- Eliminated m_register_infos in the base class because this is not used when derived classes call UpdateRegisterInfo.
- Also moved the namespace using declarations from headers to source files.
Thanks to Daniel and Samuel for their review feedback.
llvm-svn: 181538
|
|
|
|
|
|
|
|
| |
- TODO: Support extended register sets on FreeBSD.
Patch by Samuel Jacob.
llvm-svn: 180879
|
|
|
|
|
|
| |
the macros and just use C++11.
llvm-svn: 179805
|
|
|
|
|
|
|
|
| |
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.
llvm-svn: 179779
|