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