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