Hi folks
I've synced with the head of the tree this morning and rebuilt and I'm seeing
another assertion failure impacting my 32-bit linux experience. Running my test
app looks like this:
$ lldb hello
Current executable set to 'hello' (i386).
(lldb) log enable linux ptrace
(lldb) run
operation ptrace(PTRACE_SETOPTIONS, 8832, (nil), 0x58, 0)=0 called from file
/home/mg11/src/heracles2/llvm/tools/lldb/source/Plugins/Process/Linux/ProcessMonitor.cpp
line 1456
operation ptrace(PTRACE_TRACEME, 0, (nil), (nil), 0)=0 called from file
/home/mg11/src/heracles2/llvm/tools/lldb/source/Plugins/Process/Linux/ProcessMonitor.cpp
line 1196
Process 8832 launching
operation ptrace(PTRACE_PEEKDATA, 8832, 0x8048340, (nil), 0)=895EED31 called
from file
/home/mg11/src/heracles2/llvm/tools/lldb/source/Plugins/Process/Linux/ProcessMonitor.cpp
line 245
operation ptrace(PTRACE_PEEKDATA, 8832, 0x8048340, (nil), 0)=895EED31 called
from file
/home/mg11/src/heracles2/llvm/tools/lldb/source/Plugins/Process/Linux/ProcessMonitor.cpp
line 245
operation ptrace(PTRACE_POKEDATA, 8832, 0x8048340, 0x895eedcc, 0)=0 called from
file
/home/mg11/src/heracles2/llvm/tools/lldb/source/Plugins/Process/Linux/ProcessMonitor.cpp
line 319
operation ptrace(PTRACE_PEEKDATA, 8832, 0x8048340, (nil), 0)=895EEDCC called
from file
/home/mg11/src/heracles2/llvm/tools/lldb/source/Plugins/Process/Linux/ProcessMonitor.cpp
line 245
operation ptrace(PTRACE_POKEUSER, 8832, 0x2a8, 0xffffffff, 0)=FFFFFFFF called
from file
/home/mg11/src/heracles2/llvm/tools/lldb/source/Plugins/Process/Linux/ProcessMonitor.cpp
line 543
operation ptrace() failed; errno=5 (<unknown>)
lldb: /home/mg11/src/heracles2/llvm/tools/lldb/source/Plugins/Process/POSIX/RegisterContextPOSIXProcessMonitor_x86.cpp:511: virtual bool
RegisterContextPOSIXProcessMonitor_x86_64::IsWatchpointHit(uint32_t): Assertion `false && "Could not initialize watchpoint registers"' failed.
Aborted (core dumped)
The source of the failure is now:
bool
RegisterContextPOSIXProcessMonitor_x86_64::IsWatchpointHit(uint32_t hw_index)
{
bool is_hit = false;
if (m_watchpoints_initialized == false)
{
// Reset the debug status and debug control registers
RegisterValue zero_bits = RegisterValue(uint64_t(0));
if (!WriteRegister(m_reg_info.first_dr + 6, zero_bits) ||
!WriteRegister(m_reg_info.first_dr + 7, zero_bits))
--> assert(false && "Could not initialize watchpoint registers");
I'll re-sync and build, just to rule out my wimpy build environment, then start
digging again...
Matt
Member of the CSR plc group of companies. CSR plc registered in England and
Wales, registered number 4187346, registered office Churchill House, Cambridge
Business Park, Cowley Road, Cambridge, CB4 0WZ, United Kingdom
More information can be found at www.csr.com. Keep up to date with CSR on our
technical blog, www.csr.com/blog, CSR people blog, www.csr.com/people, YouTube,
www.youtube.com/user/CSRplc, Facebook,
www.facebook.com/pages/CSR/191038434253534, or follow us on Twitter at
www.twitter.com/CSR_plc.
New for 2014, you can now access the wide range of products powered by aptX at
www.aptx.com.
_______________________________________________
lldb-dev mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev