Return the correct user register count for arm from NativeRegisterContext
authorTamas Berghammer <tberghammer@google.com>
Tue, 12 May 2015 10:27:45 +0000 (10:27 +0000)
committerTamas Berghammer <tberghammer@google.com>
Tue, 12 May 2015 10:27:45 +0000 (10:27 +0000)
The defult implementation falls back to GetRegisterCount what
includes the debug registers also what shouldn't be displayed to
the user.

llvm-svn: 237111

lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_arm.cpp
lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_arm.h

index 9d67c38..670b2f8 100644 (file)
@@ -139,6 +139,15 @@ NativeRegisterContextLinux_arm::GetRegisterSetCount () const
     return k_num_register_sets;
 }
 
+uint32_t
+NativeRegisterContextLinux_arm::GetUserRegisterCount() const
+{
+    uint32_t count = 0;
+    for (uint32_t set_index = 0; set_index < k_num_register_sets; ++set_index)
+        count += g_reg_sets_arm[set_index].num_registers;
+    return count;
+}
+
 const RegisterSet *
 NativeRegisterContextLinux_arm::GetRegisterSet (uint32_t set_index) const
 {
index 38be1e4..d96cec6 100644 (file)
@@ -30,6 +30,9 @@ namespace process_linux {
         const RegisterSet *
         GetRegisterSet (uint32_t set_index) const override;
 
+        uint32_t
+        GetUserRegisterCount() const override;
+
         Error
         ReadRegister (const RegisterInfo *reg_info, RegisterValue &reg_value) override;