1 //===-- ABIX86_i386.cpp ---------------------------------------------------===// 2 // 3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 4 // See https://llvm.org/LICENSE.txt for license information. 5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 6 // 7 //===----------------------------------------------------------------------===// 8 9 #include "ABIX86_i386.h" 10 11 uint32_t ABIX86_i386::GetGenericNum(llvm::StringRef name) { 12 return llvm::StringSwitch<uint32_t>(name) 13 .Case("eip", LLDB_REGNUM_GENERIC_PC) 14 .Case("esp", LLDB_REGNUM_GENERIC_SP) 15 .Case("ebp", LLDB_REGNUM_GENERIC_FP) 16 .Case("eflags", LLDB_REGNUM_GENERIC_FLAGS) 17 .Case("edi", LLDB_REGNUM_GENERIC_ARG1) 18 .Case("esi", LLDB_REGNUM_GENERIC_ARG2) 19 .Case("edx", LLDB_REGNUM_GENERIC_ARG3) 20 .Case("ecx", LLDB_REGNUM_GENERIC_ARG4) 21 .Default(LLDB_INVALID_REGNUM); 22 } 23