diff options
author | Pavel Labath <labath@google.com> | 2015-08-20 09:06:12 +0000 |
---|---|---|
committer | Pavel Labath <labath@google.com> | 2015-08-20 09:06:12 +0000 |
commit | 0e1d729b7541cb90c7e5d6107e96347abd120c39 (patch) | |
tree | 834b2ee3104745d04828a2c653b6ab1264a5d3f9 /clang/lib/Parse/ParseOpenMP.cpp | |
parent | cfc1df553e22f44b8b14a43da02f700297e7c52d (diff) | |
download | bcm5719-llvm-0e1d729b7541cb90c7e5d6107e96347abd120c39.tar.gz bcm5719-llvm-0e1d729b7541cb90c7e5d6107e96347abd120c39.zip |
[NativeProcessLinux] Fix a bug in instruction-stepping over thread creation
Summary:
There was a bug in NativeProcessLinux, where doing an instruction-level single-step over the
thread-creation syscall resulted in loss of control over the inferior. This happened because
after the inferior entered the thread-creation maintenance stop, we unconditionally performed a
PTRACE_CONT, even though the original intention was to do a PTRACE_SINGLESTEP. This is fixed by
storing the original state of the thread before the stop (stepping or running) and then
performing the appropriate action when resuming.
I also get rid of the callback in the ThreadContext structure, which stored the lambda used to
resume the thread, but which was not used consistently.
A test verifying the correctness of the new behavior is included.
Reviewers: ovyalov, tberghammer
Subscribers: lldb-commits
Differential Revision: http://reviews.llvm.org/D12104
llvm-svn: 245545
Diffstat (limited to 'clang/lib/Parse/ParseOpenMP.cpp')
0 files changed, 0 insertions, 0 deletions