Fix missing NEON registers for the 'register read' command with the lldb debugserver...
authorJohnny Chen <johnny.chen@apple.com>
Mon, 14 May 2012 18:44:23 +0000 (18:44 +0000)
committerJohnny Chen <johnny.chen@apple.com>
Mon, 14 May 2012 18:44:23 +0000 (18:44 +0000)
commit2fa9de1080b4338f89be046402e8f362a74e7087
tree0e0c387ea1babb2ae45246a14012199b8a68dbab
parent67c09afab1561f3da044c81eb44a1e81ae77f637
Fix missing NEON registers for the 'register read' command with the lldb debugserver which supports the 'qRegisterInfo' packet
that dynamically discovers remote register context information.

o GDBRemoteRegisterContext.h:

Change the prototype of HardcodeARMRegisters() to take a boolean flag, which now becomes

    void
    HardcodeARMRegisters(bool from_scratch);

o GDBRemoteRegisterContext.cpp:

HardcodeARMRegisters() now checks the from_scratch flag and decides whether to add composite registers to the already
existing primordial registers based on a table called g_composites which describes the composite registers.

o ProcessGDBRemote.cpp:

Modify the logic of ProcessGDBRemote::BuildDynamicRegisterInfo() to call m_register_info.HardcodeARMRegisters()
with the newly introduced 'bool from_scrach' flag.

rdar://problem/10652076

llvm-svn: 156773
lldb/source/Plugins/Process/gdb-remote/GDBRemoteRegisterContext.cpp
lldb/source/Plugins/Process/gdb-remote/GDBRemoteRegisterContext.h
lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp