LLDB mainline
Public Types | Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | List of all members
lldb_private::Executor Class Reference

Public Types

enum  F_CMP { FEQ , FLT , FLE }
 

Public Member Functions

 Executor (EmulateInstructionRISCV &emulator, bool ignoreCond, bool is_rvc)
 
bool operator() (LUI inst)
 
bool operator() (AUIPC inst)
 
bool operator() (JAL inst)
 
bool operator() (JALR inst)
 
bool operator() (B inst)
 
bool operator() (LB inst)
 
bool operator() (LH inst)
 
bool operator() (LW inst)
 
bool operator() (LBU inst)
 
bool operator() (LHU inst)
 
bool operator() (SB inst)
 
bool operator() (SH inst)
 
bool operator() (SW inst)
 
bool operator() (ADDI inst)
 
bool operator() (SLTI inst)
 
bool operator() (SLTIU inst)
 
bool operator() (XORI inst)
 
bool operator() (ORI inst)
 
bool operator() (ANDI inst)
 
bool operator() (ADD inst)
 
bool operator() (SUB inst)
 
bool operator() (SLL inst)
 
bool operator() (SLT inst)
 
bool operator() (SLTU inst)
 
bool operator() (XOR inst)
 
bool operator() (SRL inst)
 
bool operator() (SRA inst)
 
bool operator() (OR inst)
 
bool operator() (AND inst)
 
bool operator() (LWU inst)
 
bool operator() (LD inst)
 
bool operator() (SD inst)
 
bool operator() (SLLI inst)
 
bool operator() (SRLI inst)
 
bool operator() (SRAI inst)
 
bool operator() (ADDIW inst)
 
bool operator() (SLLIW inst)
 
bool operator() (SRLIW inst)
 
bool operator() (SRAIW inst)
 
bool operator() (ADDW inst)
 
bool operator() (SUBW inst)
 
bool operator() (SLLW inst)
 
bool operator() (SRLW inst)
 
bool operator() (SRAW inst)
 
bool operator() (MUL inst)
 
bool operator() (MULH inst)
 
bool operator() (MULHSU inst)
 
bool operator() (MULHU inst)
 
bool operator() (DIV inst)
 
bool operator() (DIVU inst)
 
bool operator() (REM inst)
 
bool operator() (REMU inst)
 
bool operator() (MULW inst)
 
bool operator() (DIVW inst)
 
bool operator() (DIVUW inst)
 
bool operator() (REMW inst)
 
bool operator() (REMUW inst)
 
bool operator() (LR_W)
 
bool operator() (LR_D)
 
bool operator() (SC_W)
 
bool operator() (SC_D)
 
bool operator() (AMOSWAP_W inst)
 
bool operator() (AMOADD_W inst)
 
bool operator() (AMOXOR_W inst)
 
bool operator() (AMOAND_W inst)
 
bool operator() (AMOOR_W inst)
 
bool operator() (AMOMIN_W inst)
 
bool operator() (AMOMAX_W inst)
 
bool operator() (AMOMINU_W inst)
 
bool operator() (AMOMAXU_W inst)
 
bool operator() (AMOSWAP_D inst)
 
bool operator() (AMOADD_D inst)
 
bool operator() (AMOXOR_D inst)
 
bool operator() (AMOAND_D inst)
 
bool operator() (AMOOR_D inst)
 
bool operator() (AMOMIN_D inst)
 
bool operator() (AMOMAX_D inst)
 
bool operator() (AMOMINU_D inst)
 
bool operator() (AMOMAXU_D inst)
 
template<typename T >
bool F_Load (T inst, const fltSemantics &(*semantics)(), unsigned int numBits)
 
bool operator() (FLW inst)
 
template<typename T >
bool F_Store (T inst, bool isDouble)
 
bool operator() (FSW inst)
 
std::tuple< bool, APFloat > FusedMultiplyAdd (APFloat rs1, APFloat rs2, APFloat rs3)
 
template<typename T >
bool FMA (T inst, bool isDouble, float rs2_sign, float rs3_sign)
 
bool operator() (FMADD_S inst)
 
bool operator() (FMSUB_S inst)
 
bool operator() (FNMSUB_S inst)
 
bool operator() (FNMADD_S inst)
 
template<typename T >
bool F_Op (T inst, bool isDouble, APFloat::opStatus(APFloat::*f)(const APFloat &RHS, APFloat::roundingMode RM))
 
bool operator() (FADD_S inst)
 
bool operator() (FSUB_S inst)
 
bool operator() (FMUL_S inst)
 
bool operator() (FDIV_S inst)
 
bool operator() (FSQRT_S inst)
 
template<typename T >
bool F_SignInj (T inst, bool isDouble, bool isNegate)
 
bool operator() (FSGNJ_S inst)
 
bool operator() (FSGNJN_S inst)
 
template<typename T >
bool F_SignInjXor (T inst, bool isDouble)
 
bool operator() (FSGNJX_S inst)
 
template<typename T >
bool F_MAX_MIN (T inst, bool isDouble, APFloat(*f)(const APFloat &A, const APFloat &B))
 
bool operator() (FMIN_S inst)
 
bool operator() (FMAX_S inst)
 
bool operator() (FCVT_W_S inst)
 
bool operator() (FCVT_WU_S inst)
 
template<typename T >
bool FMV_f2i (T inst, bool isDouble)
 
bool operator() (FMV_X_W inst)
 
template<typename T >
bool F_Compare (T inst, bool isDouble, F_CMP cmp)
 
bool operator() (FEQ_S inst)
 
bool operator() (FLT_S inst)
 
bool operator() (FLE_S inst)
 
template<typename T >
bool FCLASS (T inst, bool isDouble)
 
bool operator() (FCLASS_S inst)
 
template<typename T , typename E >
bool FCVT_f2i (T inst, std::optional< E >(Rs::*f)(EmulateInstructionRISCV &emu), const fltSemantics &semantics)
 
bool operator() (FCVT_S_W inst)
 
bool operator() (FCVT_S_WU inst)
 
template<typename T , typename E >
bool FMV_i2f (T inst, unsigned int numBits, E(APInt::*f)() const)
 
bool operator() (FMV_W_X inst)
 
template<typename I , typename E , typename T >
bool FCVT_i2f (I inst, bool isDouble, T(APFloat::*f)() const)
 
bool operator() (FCVT_L_S inst)
 
bool operator() (FCVT_LU_S inst)
 
bool operator() (FCVT_S_L inst)
 
bool operator() (FCVT_S_LU inst)
 
bool operator() (FLD inst)
 
bool operator() (FSD inst)
 
bool operator() (FMADD_D inst)
 
bool operator() (FMSUB_D inst)
 
bool operator() (FNMSUB_D inst)
 
bool operator() (FNMADD_D inst)
 
bool operator() (FADD_D inst)
 
bool operator() (FSUB_D inst)
 
bool operator() (FMUL_D inst)
 
bool operator() (FDIV_D inst)
 
bool operator() (FSQRT_D inst)
 
bool operator() (FSGNJ_D inst)
 
bool operator() (FSGNJN_D inst)
 
bool operator() (FSGNJX_D inst)
 
bool operator() (FMIN_D inst)
 
bool operator() (FMAX_D inst)
 
bool operator() (FCVT_S_D inst)
 
bool operator() (FCVT_D_S inst)
 
bool operator() (FEQ_D inst)
 
bool operator() (FLT_D inst)
 
bool operator() (FLE_D inst)
 
bool operator() (FCLASS_D inst)
 
bool operator() (FCVT_W_D inst)
 
bool operator() (FCVT_WU_D inst)
 
bool operator() (FCVT_D_W inst)
 
bool operator() (FCVT_D_WU inst)
 
bool operator() (FCVT_L_D inst)
 
bool operator() (FCVT_LU_D inst)
 
bool operator() (FMV_X_D inst)
 
bool operator() (FCVT_D_L inst)
 
bool operator() (FCVT_D_LU inst)
 
bool operator() (FMV_D_X inst)
 
bool operator() (INVALID inst)
 
bool operator() (RESERVED inst)
 
bool operator() (EBREAK inst)
 
bool operator() (HINT inst)
 
bool operator() (NOP inst)
 

Static Public Member Functions

static uint64_t size (bool is_rvc)
 

Private Member Functions

uint64_t delta ()
 

Private Attributes

EmulateInstructionRISCVm_emu
 
bool m_ignore_cond
 
bool m_is_rvc
 

Detailed Description

Definition at line 650 of file EmulateInstructionRISCV.cpp.

Member Enumeration Documentation

◆ F_CMP

Enumerator
FEQ 
FLT 
FLE 

Definition at line 1376 of file EmulateInstructionRISCV.cpp.

Constructor & Destructor Documentation

◆ Executor()

lldb_private::Executor::Executor ( EmulateInstructionRISCV emulator,
bool  ignoreCond,
bool  is_rvc 
)
inline

Definition at line 663 of file EmulateInstructionRISCV.cpp.

Member Function Documentation

◆ delta()

uint64_t lldb_private::Executor::delta ( )
inlineprivate

Definition at line 660 of file EmulateInstructionRISCV.cpp.

References m_is_rvc, and size().

◆ F_Compare()

template<typename T >
bool lldb_private::Executor::F_Compare ( inst,
bool  isDouble,
F_CMP  cmp 
)
inline

Definition at line 1381 of file EmulateInstructionRISCV.cpp.

References lldb_private::zipOpt().

◆ F_Load()

template<typename T >
bool lldb_private::Executor::F_Load ( inst,
const fltSemantics &(*)()  semantics,
unsigned int  numBits 
)
inline

Definition at line 1219 of file EmulateInstructionRISCV.cpp.

References m_emu.

Referenced by operator()().

◆ F_MAX_MIN()

template<typename T >
bool lldb_private::Executor::F_MAX_MIN ( inst,
bool  isDouble,
APFloat(*)(const APFloat &A, const APFloat &B f 
)
inline

Definition at line 1326 of file EmulateInstructionRISCV.cpp.

References lldb_private::zipOpt().

◆ F_Op()

template<typename T >
bool lldb_private::Executor::F_Op ( inst,
bool  isDouble,
APFloat::opStatus(APFloat::*)(const APFloat &RHS, APFloat::roundingMode RM)  f 
)
inline

Definition at line 1269 of file EmulateInstructionRISCV.cpp.

References m_emu, and lldb_private::zipOpt().

Referenced by operator()().

◆ F_SignInj()

template<typename T >
bool lldb_private::Executor::F_SignInj ( inst,
bool  isDouble,
bool  isNegate 
)
inline

Definition at line 1291 of file EmulateInstructionRISCV.cpp.

References m_emu, and lldb_private::zipOpt().

Referenced by operator()().

◆ F_SignInjXor()

template<typename T >
bool lldb_private::Executor::F_SignInjXor ( inst,
bool  isDouble 
)
inline

Definition at line 1305 of file EmulateInstructionRISCV.cpp.

References m_emu, and lldb_private::zipOpt().

◆ F_Store()

template<typename T >
bool lldb_private::Executor::F_Store ( inst,
bool  isDouble 
)
inline

Definition at line 1231 of file EmulateInstructionRISCV.cpp.

References m_emu, and lldb_private::zipOpt().

Referenced by operator()().

◆ FCLASS()

template<typename T >
bool lldb_private::Executor::FCLASS ( inst,
bool  isDouble 
)
inline

Definition at line 1417 of file EmulateInstructionRISCV.cpp.

◆ FCVT_f2i()

template<typename T , typename E >
bool lldb_private::Executor::FCVT_f2i ( inst,
std::optional< E >(Rs::*)(EmulateInstructionRISCV &emu)  f,
const fltSemantics &  semantics 
)
inline

Definition at line 1453 of file EmulateInstructionRISCV.cpp.

◆ FCVT_i2f()

template<typename I , typename E , typename T >
bool lldb_private::Executor::FCVT_i2f ( inst,
bool  isDouble,
T(APFloat::*)() const  f 
)
inline

Definition at line 1484 of file EmulateInstructionRISCV.cpp.

◆ FMA()

template<typename T >
bool lldb_private::Executor::FMA ( inst,
bool  isDouble,
float  rs2_sign,
float  rs3_sign 
)
inline

Definition at line 1251 of file EmulateInstructionRISCV.cpp.

References m_emu, and lldb_private::zipOpt().

Referenced by operator()().

◆ FMV_f2i()

template<typename T >
bool lldb_private::Executor::FMV_f2i ( inst,
bool  isDouble 
)
inline

Definition at line 1357 of file EmulateInstructionRISCV.cpp.

References lldb_private::bits().

◆ FMV_i2f()

template<typename T , typename E >
bool lldb_private::Executor::FMV_i2f ( inst,
unsigned int  numBits,
E(APInt::*)() const  f 
)
inline

Definition at line 1469 of file EmulateInstructionRISCV.cpp.

◆ FusedMultiplyAdd()

std::tuple< bool, APFloat > lldb_private::Executor::FusedMultiplyAdd ( APFloat  rs1,
APFloat  rs2,
APFloat  rs3 
)
inline

◆ operator()() [1/146]

bool lldb_private::Executor::operator() ( ADD  inst)
inline

Definition at line 771 of file EmulateInstructionRISCV.cpp.

References m_emu, and lldb_private::zipOpt().

◆ operator()() [2/146]

bool lldb_private::Executor::operator() ( ADDI  inst)
inline

Definition at line 723 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [3/146]

bool lldb_private::Executor::operator() ( ADDIW  inst)
inline

Definition at line 883 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [4/146]

bool lldb_private::Executor::operator() ( ADDW  inst)
inline

Definition at line 915 of file EmulateInstructionRISCV.cpp.

References m_emu, and lldb_private::zipOpt().

◆ operator()() [5/146]

bool lldb_private::Executor::operator() ( AMOADD_D  inst)
inline

Definition at line 1181 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [6/146]

bool lldb_private::Executor::operator() ( AMOADD_W  inst)
inline

Definition at line 1141 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [7/146]

bool lldb_private::Executor::operator() ( AMOAND_D  inst)
inline

Definition at line 1188 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [8/146]

bool lldb_private::Executor::operator() ( AMOAND_W  inst)
inline

Definition at line 1148 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [9/146]

bool lldb_private::Executor::operator() ( AMOMAX_D  inst)
inline

Definition at line 1202 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [10/146]

bool lldb_private::Executor::operator() ( AMOMAX_W  inst)
inline

Definition at line 1162 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [11/146]

bool lldb_private::Executor::operator() ( AMOMAXU_D  inst)
inline

Definition at line 1213 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [12/146]

bool lldb_private::Executor::operator() ( AMOMAXU_W  inst)
inline

Definition at line 1173 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [13/146]

bool lldb_private::Executor::operator() ( AMOMIN_D  inst)
inline

Definition at line 1196 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [14/146]

bool lldb_private::Executor::operator() ( AMOMIN_W  inst)
inline

Definition at line 1156 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [15/146]

bool lldb_private::Executor::operator() ( AMOMINU_D  inst)
inline

Definition at line 1208 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [16/146]

bool lldb_private::Executor::operator() ( AMOMINU_W  inst)
inline

Definition at line 1168 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [17/146]

bool lldb_private::Executor::operator() ( AMOOR_D  inst)
inline

Definition at line 1192 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [18/146]

bool lldb_private::Executor::operator() ( AMOOR_W  inst)
inline

Definition at line 1152 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [19/146]

bool lldb_private::Executor::operator() ( AMOSWAP_D  inst)
inline

Definition at line 1178 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [20/146]

bool lldb_private::Executor::operator() ( AMOSWAP_W  inst)
inline

Definition at line 1138 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [21/146]

bool lldb_private::Executor::operator() ( AMOXOR_D  inst)
inline

Definition at line 1184 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [22/146]

bool lldb_private::Executor::operator() ( AMOXOR_W  inst)
inline

Definition at line 1144 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [23/146]

bool lldb_private::Executor::operator() ( AND  inst)
inline

Definition at line 847 of file EmulateInstructionRISCV.cpp.

References m_emu, and lldb_private::zipOpt().

◆ operator()() [24/146]

bool lldb_private::Executor::operator() ( ANDI  inst)
inline

Definition at line 763 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [25/146]

bool lldb_private::Executor::operator() ( AUIPC  inst)
inline

◆ operator()() [26/146]

bool lldb_private::Executor::operator() ( B  inst)
inline

◆ operator()() [27/146]

bool lldb_private::Executor::operator() ( DIV  inst)
inline

Definition at line 1006 of file EmulateInstructionRISCV.cpp.

References m_emu, and lldb_private::zipOpt().

◆ operator()() [28/146]

bool lldb_private::Executor::operator() ( DIVU  inst)
inline

Definition at line 1022 of file EmulateInstructionRISCV.cpp.

References m_emu, and lldb_private::zipOpt().

◆ operator()() [29/146]

bool lldb_private::Executor::operator() ( DIVUW  inst)
inline

Definition at line 1087 of file EmulateInstructionRISCV.cpp.

References m_emu, and lldb_private::zipOpt().

◆ operator()() [30/146]

bool lldb_private::Executor::operator() ( DIVW  inst)
inline

Definition at line 1071 of file EmulateInstructionRISCV.cpp.

References m_emu, and lldb_private::zipOpt().

◆ operator()() [31/146]

bool lldb_private::Executor::operator() ( EBREAK  inst)
inline

Definition at line 1581 of file EmulateInstructionRISCV.cpp.

◆ operator()() [32/146]

bool lldb_private::Executor::operator() ( FADD_D  inst)
inline

Definition at line 1512 of file EmulateInstructionRISCV.cpp.

◆ operator()() [33/146]

bool lldb_private::Executor::operator() ( FADD_S  inst)
inline

Definition at line 1283 of file EmulateInstructionRISCV.cpp.

References F_Op().

◆ operator()() [34/146]

bool lldb_private::Executor::operator() ( FCLASS_D  inst)
inline

Definition at line 1546 of file EmulateInstructionRISCV.cpp.

◆ operator()() [35/146]

bool lldb_private::Executor::operator() ( FCLASS_S  inst)
inline

Definition at line 1451 of file EmulateInstructionRISCV.cpp.

◆ operator()() [36/146]

bool lldb_private::Executor::operator() ( FCVT_D_L  inst)
inline

Definition at line 1570 of file EmulateInstructionRISCV.cpp.

References lldb_private::Rs::ReadI64().

◆ operator()() [37/146]

bool lldb_private::Executor::operator() ( FCVT_D_LU  inst)
inline

Definition at line 1573 of file EmulateInstructionRISCV.cpp.

References lldb_private::Rs::Read().

◆ operator()() [38/146]

bool lldb_private::Executor::operator() ( FCVT_D_S  inst)
inline

Definition at line 1534 of file EmulateInstructionRISCV.cpp.

◆ operator()() [39/146]

bool lldb_private::Executor::operator() ( FCVT_D_W  inst)
inline

Definition at line 1555 of file EmulateInstructionRISCV.cpp.

References lldb_private::Rs::ReadI32().

◆ operator()() [40/146]

bool lldb_private::Executor::operator() ( FCVT_D_WU  inst)
inline

Definition at line 1558 of file EmulateInstructionRISCV.cpp.

References lldb_private::Rs::ReadU32().

◆ operator()() [41/146]

bool lldb_private::Executor::operator() ( FCVT_L_D  inst)
inline

Definition at line 1561 of file EmulateInstructionRISCV.cpp.

◆ operator()() [42/146]

bool lldb_private::Executor::operator() ( FCVT_L_S  inst)
inline

Definition at line 1492 of file EmulateInstructionRISCV.cpp.

◆ operator()() [43/146]

bool lldb_private::Executor::operator() ( FCVT_LU_D  inst)
inline

Definition at line 1565 of file EmulateInstructionRISCV.cpp.

◆ operator()() [44/146]

bool lldb_private::Executor::operator() ( FCVT_LU_S  inst)
inline

Definition at line 1496 of file EmulateInstructionRISCV.cpp.

◆ operator()() [45/146]

bool lldb_private::Executor::operator() ( FCVT_S_D  inst)
inline

Definition at line 1525 of file EmulateInstructionRISCV.cpp.

◆ operator()() [46/146]

bool lldb_private::Executor::operator() ( FCVT_S_L  inst)
inline

Definition at line 1500 of file EmulateInstructionRISCV.cpp.

References lldb_private::Rs::ReadI64().

◆ operator()() [47/146]

bool lldb_private::Executor::operator() ( FCVT_S_LU  inst)
inline

Definition at line 1503 of file EmulateInstructionRISCV.cpp.

References lldb_private::Rs::Read().

◆ operator()() [48/146]

bool lldb_private::Executor::operator() ( FCVT_S_W  inst)
inline

Definition at line 1462 of file EmulateInstructionRISCV.cpp.

References lldb_private::Rs::ReadI32().

◆ operator()() [49/146]

bool lldb_private::Executor::operator() ( FCVT_S_WU  inst)
inline

Definition at line 1465 of file EmulateInstructionRISCV.cpp.

References lldb_private::Rs::ReadU32().

◆ operator()() [50/146]

bool lldb_private::Executor::operator() ( FCVT_W_D  inst)
inline

Definition at line 1547 of file EmulateInstructionRISCV.cpp.

◆ operator()() [51/146]

bool lldb_private::Executor::operator() ( FCVT_W_S  inst)
inline

Definition at line 1349 of file EmulateInstructionRISCV.cpp.

◆ operator()() [52/146]

bool lldb_private::Executor::operator() ( FCVT_WU_D  inst)
inline

Definition at line 1551 of file EmulateInstructionRISCV.cpp.

◆ operator()() [53/146]

bool lldb_private::Executor::operator() ( FCVT_WU_S  inst)
inline

Definition at line 1353 of file EmulateInstructionRISCV.cpp.

◆ operator()() [54/146]

bool lldb_private::Executor::operator() ( FDIV_D  inst)
inline

Definition at line 1515 of file EmulateInstructionRISCV.cpp.

◆ operator()() [55/146]

bool lldb_private::Executor::operator() ( FDIV_S  inst)
inline

Definition at line 1286 of file EmulateInstructionRISCV.cpp.

References F_Op().

◆ operator()() [56/146]

bool lldb_private::Executor::operator() ( FEQ_D  inst)
inline

Definition at line 1543 of file EmulateInstructionRISCV.cpp.

◆ operator()() [57/146]

bool lldb_private::Executor::operator() ( FEQ_S  inst)
inline

Definition at line 1414 of file EmulateInstructionRISCV.cpp.

◆ operator()() [58/146]

bool lldb_private::Executor::operator() ( FLD  inst)
inline

Definition at line 1506 of file EmulateInstructionRISCV.cpp.

◆ operator()() [59/146]

bool lldb_private::Executor::operator() ( FLE_D  inst)
inline

Definition at line 1545 of file EmulateInstructionRISCV.cpp.

◆ operator()() [60/146]

bool lldb_private::Executor::operator() ( FLE_S  inst)
inline

Definition at line 1416 of file EmulateInstructionRISCV.cpp.

◆ operator()() [61/146]

bool lldb_private::Executor::operator() ( FLT_D  inst)
inline

Definition at line 1544 of file EmulateInstructionRISCV.cpp.

◆ operator()() [62/146]

bool lldb_private::Executor::operator() ( FLT_S  inst)
inline

Definition at line 1415 of file EmulateInstructionRISCV.cpp.

◆ operator()() [63/146]

bool lldb_private::Executor::operator() ( FLW  inst)
inline

Definition at line 1230 of file EmulateInstructionRISCV.cpp.

References F_Load().

◆ operator()() [64/146]

bool lldb_private::Executor::operator() ( FMADD_D  inst)
inline

Definition at line 1508 of file EmulateInstructionRISCV.cpp.

◆ operator()() [65/146]

bool lldb_private::Executor::operator() ( FMADD_S  inst)
inline

Definition at line 1264 of file EmulateInstructionRISCV.cpp.

References FMA().

◆ operator()() [66/146]

bool lldb_private::Executor::operator() ( FMAX_D  inst)
inline

Definition at line 1524 of file EmulateInstructionRISCV.cpp.

◆ operator()() [67/146]

bool lldb_private::Executor::operator() ( FMAX_S  inst)
inline

Definition at line 1348 of file EmulateInstructionRISCV.cpp.

◆ operator()() [68/146]

bool lldb_private::Executor::operator() ( FMIN_D  inst)
inline

Definition at line 1523 of file EmulateInstructionRISCV.cpp.

◆ operator()() [69/146]

bool lldb_private::Executor::operator() ( FMIN_S  inst)
inline

Definition at line 1347 of file EmulateInstructionRISCV.cpp.

◆ operator()() [70/146]

bool lldb_private::Executor::operator() ( FMSUB_D  inst)
inline

Definition at line 1509 of file EmulateInstructionRISCV.cpp.

◆ operator()() [71/146]

bool lldb_private::Executor::operator() ( FMSUB_S  inst)
inline

Definition at line 1265 of file EmulateInstructionRISCV.cpp.

References FMA().

◆ operator()() [72/146]

bool lldb_private::Executor::operator() ( FMUL_D  inst)
inline

Definition at line 1514 of file EmulateInstructionRISCV.cpp.

◆ operator()() [73/146]

bool lldb_private::Executor::operator() ( FMUL_S  inst)
inline

Definition at line 1285 of file EmulateInstructionRISCV.cpp.

References F_Op().

◆ operator()() [74/146]

bool lldb_private::Executor::operator() ( FMV_D_X  inst)
inline

Definition at line 1576 of file EmulateInstructionRISCV.cpp.

◆ operator()() [75/146]

bool lldb_private::Executor::operator() ( FMV_W_X  inst)
inline

Definition at line 1480 of file EmulateInstructionRISCV.cpp.

◆ operator()() [76/146]

bool lldb_private::Executor::operator() ( FMV_X_D  inst)
inline

Definition at line 1569 of file EmulateInstructionRISCV.cpp.

◆ operator()() [77/146]

bool lldb_private::Executor::operator() ( FMV_X_W  inst)
inline

Definition at line 1375 of file EmulateInstructionRISCV.cpp.

◆ operator()() [78/146]

bool lldb_private::Executor::operator() ( FNMADD_D  inst)
inline

Definition at line 1511 of file EmulateInstructionRISCV.cpp.

◆ operator()() [79/146]

bool lldb_private::Executor::operator() ( FNMADD_S  inst)
inline

Definition at line 1267 of file EmulateInstructionRISCV.cpp.

References FMA().

◆ operator()() [80/146]

bool lldb_private::Executor::operator() ( FNMSUB_D  inst)
inline

Definition at line 1510 of file EmulateInstructionRISCV.cpp.

◆ operator()() [81/146]

bool lldb_private::Executor::operator() ( FNMSUB_S  inst)
inline

Definition at line 1266 of file EmulateInstructionRISCV.cpp.

References FMA().

◆ operator()() [82/146]

bool lldb_private::Executor::operator() ( FSD  inst)
inline

Definition at line 1507 of file EmulateInstructionRISCV.cpp.

◆ operator()() [83/146]

bool lldb_private::Executor::operator() ( FSGNJ_D  inst)
inline

Definition at line 1520 of file EmulateInstructionRISCV.cpp.

◆ operator()() [84/146]

bool lldb_private::Executor::operator() ( FSGNJ_S  inst)
inline

Definition at line 1303 of file EmulateInstructionRISCV.cpp.

References F_SignInj().

◆ operator()() [85/146]

bool lldb_private::Executor::operator() ( FSGNJN_D  inst)
inline

Definition at line 1521 of file EmulateInstructionRISCV.cpp.

◆ operator()() [86/146]

bool lldb_private::Executor::operator() ( FSGNJN_S  inst)
inline

Definition at line 1304 of file EmulateInstructionRISCV.cpp.

References F_SignInj().

◆ operator()() [87/146]

bool lldb_private::Executor::operator() ( FSGNJX_D  inst)
inline

Definition at line 1522 of file EmulateInstructionRISCV.cpp.

◆ operator()() [88/146]

bool lldb_private::Executor::operator() ( FSGNJX_S  inst)
inline

Definition at line 1324 of file EmulateInstructionRISCV.cpp.

◆ operator()() [89/146]

bool lldb_private::Executor::operator() ( FSQRT_D  inst)
inline

Definition at line 1516 of file EmulateInstructionRISCV.cpp.

◆ operator()() [90/146]

bool lldb_private::Executor::operator() ( FSQRT_S  inst)
inline

Definition at line 1287 of file EmulateInstructionRISCV.cpp.

◆ operator()() [91/146]

bool lldb_private::Executor::operator() ( FSUB_D  inst)
inline

Definition at line 1513 of file EmulateInstructionRISCV.cpp.

◆ operator()() [92/146]

bool lldb_private::Executor::operator() ( FSUB_S  inst)
inline

Definition at line 1284 of file EmulateInstructionRISCV.cpp.

References F_Op().

◆ operator()() [93/146]

bool lldb_private::Executor::operator() ( FSW  inst)
inline

Definition at line 1243 of file EmulateInstructionRISCV.cpp.

References F_Store().

◆ operator()() [94/146]

bool lldb_private::Executor::operator() ( HINT  inst)
inline

Definition at line 1582 of file EmulateInstructionRISCV.cpp.

◆ operator()() [95/146]

bool lldb_private::Executor::operator() ( INVALID  inst)
inline

Definition at line 1579 of file EmulateInstructionRISCV.cpp.

◆ operator()() [96/146]

bool lldb_private::Executor::operator() ( JAL  inst)
inline

◆ operator()() [97/146]

bool lldb_private::Executor::operator() ( JALR  inst)
inline

◆ operator()() [98/146]

bool lldb_private::Executor::operator() ( LB  inst)
inline

Definition at line 705 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [99/146]

bool lldb_private::Executor::operator() ( LBU  inst)
inline

Definition at line 714 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [100/146]

bool lldb_private::Executor::operator() ( LD  inst)
inline

Definition at line 858 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [101/146]

bool lldb_private::Executor::operator() ( LH  inst)
inline

Definition at line 708 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [102/146]

bool lldb_private::Executor::operator() ( LHU  inst)
inline

Definition at line 717 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [103/146]

bool lldb_private::Executor::operator() ( LR_D  )
inline

Definition at line 1131 of file EmulateInstructionRISCV.cpp.

References lldb_private::AtomicSequence(), and m_emu.

◆ operator()() [104/146]

bool lldb_private::Executor::operator() ( LR_W  )
inline

Definition at line 1130 of file EmulateInstructionRISCV.cpp.

References lldb_private::AtomicSequence(), and m_emu.

◆ operator()() [105/146]

bool lldb_private::Executor::operator() ( LUI  inst)
inline

Definition at line 666 of file EmulateInstructionRISCV.cpp.

References m_emu, and lldb_private::SignExt().

◆ operator()() [106/146]

bool lldb_private::Executor::operator() ( LW  inst)
inline

Definition at line 711 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [107/146]

bool lldb_private::Executor::operator() ( LWU  inst)
inline

Definition at line 855 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [108/146]

bool lldb_private::Executor::operator() ( MUL  inst)
inline

Definition at line 961 of file EmulateInstructionRISCV.cpp.

References m_emu, and lldb_private::zipOpt().

◆ operator()() [109/146]

bool lldb_private::Executor::operator() ( MULH  inst)
inline

Definition at line 969 of file EmulateInstructionRISCV.cpp.

References m_emu, and lldb_private::zipOpt().

◆ operator()() [110/146]

bool lldb_private::Executor::operator() ( MULHSU  inst)
inline

Definition at line 981 of file EmulateInstructionRISCV.cpp.

References m_emu, and lldb_private::zipOpt().

◆ operator()() [111/146]

bool lldb_private::Executor::operator() ( MULHU  inst)
inline

Definition at line 994 of file EmulateInstructionRISCV.cpp.

References m_emu, and lldb_private::zipOpt().

◆ operator()() [112/146]

bool lldb_private::Executor::operator() ( MULW  inst)
inline

Definition at line 1062 of file EmulateInstructionRISCV.cpp.

References m_emu, and lldb_private::zipOpt().

◆ operator()() [113/146]

bool lldb_private::Executor::operator() ( NOP  inst)
inline

Definition at line 1583 of file EmulateInstructionRISCV.cpp.

◆ operator()() [114/146]

bool lldb_private::Executor::operator() ( OR  inst)
inline

Definition at line 839 of file EmulateInstructionRISCV.cpp.

References m_emu, and lldb_private::zipOpt().

◆ operator()() [115/146]

bool lldb_private::Executor::operator() ( ORI  inst)
inline

Definition at line 755 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [116/146]

bool lldb_private::Executor::operator() ( REM  inst)
inline

Definition at line 1034 of file EmulateInstructionRISCV.cpp.

References m_emu, and lldb_private::zipOpt().

◆ operator()() [117/146]

bool lldb_private::Executor::operator() ( REMU  inst)
inline

Definition at line 1050 of file EmulateInstructionRISCV.cpp.

References m_emu, and lldb_private::zipOpt().

◆ operator()() [118/146]

bool lldb_private::Executor::operator() ( REMUW  inst)
inline

Definition at line 1116 of file EmulateInstructionRISCV.cpp.

References m_emu, and lldb_private::zipOpt().

◆ operator()() [119/146]

bool lldb_private::Executor::operator() ( REMW  inst)
inline

Definition at line 1100 of file EmulateInstructionRISCV.cpp.

References m_emu, and lldb_private::zipOpt().

◆ operator()() [120/146]

bool lldb_private::Executor::operator() ( RESERVED  inst)
inline

Definition at line 1580 of file EmulateInstructionRISCV.cpp.

◆ operator()() [121/146]

bool lldb_private::Executor::operator() ( SB  inst)
inline

Definition at line 720 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [122/146]

bool lldb_private::Executor::operator() ( SC_D  )
inline

Definition at line 1135 of file EmulateInstructionRISCV.cpp.

◆ operator()() [123/146]

bool lldb_private::Executor::operator() ( SC_W  )
inline

Definition at line 1132 of file EmulateInstructionRISCV.cpp.

◆ operator()() [124/146]

bool lldb_private::Executor::operator() ( SD  inst)
inline

Definition at line 861 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [125/146]

bool lldb_private::Executor::operator() ( SH  inst)
inline

Definition at line 721 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [126/146]

bool lldb_private::Executor::operator() ( SLL  inst)
inline

Definition at line 787 of file EmulateInstructionRISCV.cpp.

References m_emu, and lldb_private::zipOpt().

◆ operator()() [127/146]

bool lldb_private::Executor::operator() ( SLLI  inst)
inline

Definition at line 862 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [128/146]

bool lldb_private::Executor::operator() ( SLLIW  inst)
inline

Definition at line 891 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [129/146]

bool lldb_private::Executor::operator() ( SLLW  inst)
inline

Definition at line 933 of file EmulateInstructionRISCV.cpp.

References m_emu, and lldb_private::zipOpt().

◆ operator()() [130/146]

bool lldb_private::Executor::operator() ( SLT  inst)
inline

Definition at line 796 of file EmulateInstructionRISCV.cpp.

References m_emu, and lldb_private::zipOpt().

◆ operator()() [131/146]

bool lldb_private::Executor::operator() ( SLTI  inst)
inline

Definition at line 731 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [132/146]

bool lldb_private::Executor::operator() ( SLTIU  inst)
inline

Definition at line 739 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [133/146]

bool lldb_private::Executor::operator() ( SLTU  inst)
inline

Definition at line 805 of file EmulateInstructionRISCV.cpp.

References m_emu, and lldb_private::zipOpt().

◆ operator()() [134/146]

bool lldb_private::Executor::operator() ( SRA  inst)
inline

Definition at line 830 of file EmulateInstructionRISCV.cpp.

References m_emu, and lldb_private::zipOpt().

◆ operator()() [135/146]

bool lldb_private::Executor::operator() ( SRAI  inst)
inline

Definition at line 876 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [136/146]

bool lldb_private::Executor::operator() ( SRAIW  inst)
inline

Definition at line 907 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [137/146]

bool lldb_private::Executor::operator() ( SRAW  inst)
inline

Definition at line 951 of file EmulateInstructionRISCV.cpp.

References m_emu, and lldb_private::zipOpt().

◆ operator()() [138/146]

bool lldb_private::Executor::operator() ( SRL  inst)
inline

Definition at line 821 of file EmulateInstructionRISCV.cpp.

References m_emu, and lldb_private::zipOpt().

◆ operator()() [139/146]

bool lldb_private::Executor::operator() ( SRLI  inst)
inline

Definition at line 869 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [140/146]

bool lldb_private::Executor::operator() ( SRLIW  inst)
inline

Definition at line 899 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [141/146]

bool lldb_private::Executor::operator() ( SRLW  inst)
inline

Definition at line 942 of file EmulateInstructionRISCV.cpp.

References m_emu, and lldb_private::zipOpt().

◆ operator()() [142/146]

bool lldb_private::Executor::operator() ( SUB  inst)
inline

Definition at line 779 of file EmulateInstructionRISCV.cpp.

References m_emu, and lldb_private::zipOpt().

◆ operator()() [143/146]

bool lldb_private::Executor::operator() ( SUBW  inst)
inline

Definition at line 924 of file EmulateInstructionRISCV.cpp.

References m_emu, and lldb_private::zipOpt().

◆ operator()() [144/146]

bool lldb_private::Executor::operator() ( SW  inst)
inline

Definition at line 722 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [145/146]

bool lldb_private::Executor::operator() ( XOR  inst)
inline

Definition at line 813 of file EmulateInstructionRISCV.cpp.

References m_emu, and lldb_private::zipOpt().

◆ operator()() [146/146]

bool lldb_private::Executor::operator() ( XORI  inst)
inline

Definition at line 747 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ size()

static uint64_t lldb_private::Executor::size ( bool  is_rvc)
inlinestatic

Member Data Documentation

◆ m_emu

EmulateInstructionRISCV& lldb_private::Executor::m_emu
private

◆ m_ignore_cond

bool lldb_private::Executor::m_ignore_cond
private

Definition at line 652 of file EmulateInstructionRISCV.cpp.

◆ m_is_rvc

bool lldb_private::Executor::m_is_rvc
private

Definition at line 653 of file EmulateInstructionRISCV.cpp.

Referenced by delta().


The documentation for this class was generated from the following file: