23 lines · cpp
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-exception6//7//===----------------------------------------------------------------------===//8 9#include "ABIX86_i386.h"10 11uint32_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