diff options
-rw-r--r-- | lldb/include/lldb/Host/common/NativeRegisterContext.h | 2 | ||||
-rw-r--r-- | lldb/include/lldb/Target/RegisterContext.h | 2 | ||||
-rw-r--r-- | lldb/source/Host/common/NativeRegisterContext.cpp | 24 | ||||
-rw-r--r-- | lldb/source/Target/RegisterContext.cpp | 25 |
4 files changed, 25 insertions, 28 deletions
diff --git a/lldb/include/lldb/Host/common/NativeRegisterContext.h b/lldb/include/lldb/Host/common/NativeRegisterContext.h index 25449ac..dd583d7 100644 --- a/lldb/include/lldb/Host/common/NativeRegisterContext.h +++ b/lldb/include/lldb/Host/common/NativeRegisterContext.h @@ -126,7 +126,7 @@ public: virtual NativeThreadProtocol &GetThread() { return m_thread; } - const RegisterInfo *GetRegisterInfoByName(const char *reg_name, + const RegisterInfo *GetRegisterInfoByName(llvm::StringRef reg_name, uint32_t start_idx = 0); const RegisterInfo *GetRegisterInfo(uint32_t reg_kind, uint32_t reg_num); diff --git a/lldb/include/lldb/Target/RegisterContext.h b/lldb/include/lldb/Target/RegisterContext.h index 6e213e0..485645b 100644 --- a/lldb/include/lldb/Target/RegisterContext.h +++ b/lldb/include/lldb/Target/RegisterContext.h @@ -155,7 +155,7 @@ public: virtual Thread &GetThread() { return m_thread; } - const RegisterInfo *GetRegisterInfoByName(const char *reg_name, + const RegisterInfo *GetRegisterInfoByName(llvm::StringRef reg_name, uint32_t start_idx = 0); const RegisterInfo *GetRegisterInfo(lldb::RegisterKind reg_kind, diff --git a/lldb/source/Host/common/NativeRegisterContext.cpp b/lldb/source/Host/common/NativeRegisterContext.cpp index e143b9a..73b2629 100644 --- a/lldb/source/Host/common/NativeRegisterContext.cpp +++ b/lldb/source/Host/common/NativeRegisterContext.cpp @@ -56,20 +56,18 @@ NativeRegisterContext::~NativeRegisterContext() {} // } const RegisterInfo * -NativeRegisterContext::GetRegisterInfoByName(const char *reg_name, +NativeRegisterContext::GetRegisterInfoByName(llvm::StringRef reg_name, uint32_t start_idx) { - if (reg_name && reg_name[0]) { - const uint32_t num_registers = GetRegisterCount(); - for (uint32_t reg = start_idx; reg < num_registers; ++reg) { - const RegisterInfo *reg_info = GetRegisterInfoAtIndex(reg); - - if ((reg_info->name != nullptr && - ::strcasecmp(reg_info->name, reg_name) == 0) || - (reg_info->alt_name != nullptr && - ::strcasecmp(reg_info->alt_name, reg_name) == 0)) { - return reg_info; - } - } + if (reg_name.empty()) + return nullptr; + + const uint32_t num_registers = GetRegisterCount(); + for (uint32_t reg = start_idx; reg < num_registers; ++reg) { + const RegisterInfo *reg_info = GetRegisterInfoAtIndex(reg); + + if (reg_name.equals_lower(reg_info->name) || + reg_name.equals_lower(reg_info->alt_name)) + return reg_info; } return nullptr; } diff --git a/lldb/source/Target/RegisterContext.cpp b/lldb/source/Target/RegisterContext.cpp index 31ccd2a..4cce4dd 100644 --- a/lldb/source/Target/RegisterContext.cpp +++ b/lldb/source/Target/RegisterContext.cpp @@ -53,20 +53,19 @@ void RegisterContext::InvalidateIfNeeded(bool force) { } } -const RegisterInfo *RegisterContext::GetRegisterInfoByName(const char *reg_name, - uint32_t start_idx) { - if (reg_name && reg_name[0]) { - const uint32_t num_registers = GetRegisterCount(); - for (uint32_t reg = start_idx; reg < num_registers; ++reg) { - const RegisterInfo *reg_info = GetRegisterInfoAtIndex(reg); +const RegisterInfo * +RegisterContext::GetRegisterInfoByName(llvm::StringRef reg_name, + uint32_t start_idx) { + if (reg_name.empty()) + return nullptr; - if ((reg_info->name != nullptr && - ::strcasecmp(reg_info->name, reg_name) == 0) || - (reg_info->alt_name != nullptr && - ::strcasecmp(reg_info->alt_name, reg_name) == 0)) { - return reg_info; - } - } + const uint32_t num_registers = GetRegisterCount(); + for (uint32_t reg = start_idx; reg < num_registers; ++reg) { + const RegisterInfo *reg_info = GetRegisterInfoAtIndex(reg); + + if (reg_name.equals_lower(reg_info->name) || + reg_name.equals_lower(reg_info->alt_name)) + return reg_info; } return nullptr; } |