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 665 of file EmulateInstructionRISCV.cpp.

Member Enumeration Documentation

◆ F_CMP

Enumerator
FEQ 
FLT 
FLE 

Definition at line 1391 of file EmulateInstructionRISCV.cpp.

Constructor & Destructor Documentation

◆ Executor()

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

Definition at line 678 of file EmulateInstructionRISCV.cpp.

Member Function Documentation

◆ delta()

uint64_t lldb_private::Executor::delta ( )
inlineprivate

Definition at line 675 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 1396 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 1234 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 1341 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 1284 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 1306 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 1320 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 1246 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 1432 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 1468 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 1499 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 1266 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 1372 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 1484 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 786 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 738 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [3/146]

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

Definition at line 898 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [4/146]

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

Definition at line 930 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 1196 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [6/146]

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

Definition at line 1156 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [7/146]

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

Definition at line 1203 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [8/146]

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

Definition at line 1163 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [9/146]

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

Definition at line 1217 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [10/146]

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

Definition at line 1177 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [11/146]

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

Definition at line 1228 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [12/146]

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

Definition at line 1188 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [13/146]

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

Definition at line 1211 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [14/146]

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

Definition at line 1171 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [15/146]

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

Definition at line 1223 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [16/146]

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

Definition at line 1183 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [17/146]

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

Definition at line 1207 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [18/146]

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

Definition at line 1167 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [19/146]

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

Definition at line 1193 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [20/146]

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

Definition at line 1153 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [21/146]

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

Definition at line 1199 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [22/146]

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

Definition at line 1159 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [23/146]

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

Definition at line 862 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 778 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 1021 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 1037 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 1102 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 1086 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 1596 of file EmulateInstructionRISCV.cpp.

◆ operator()() [32/146]

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

Definition at line 1527 of file EmulateInstructionRISCV.cpp.

◆ operator()() [33/146]

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

Definition at line 1298 of file EmulateInstructionRISCV.cpp.

References F_Op().

◆ operator()() [34/146]

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

Definition at line 1561 of file EmulateInstructionRISCV.cpp.

◆ operator()() [35/146]

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

Definition at line 1466 of file EmulateInstructionRISCV.cpp.

◆ operator()() [36/146]

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

Definition at line 1585 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 1588 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 1549 of file EmulateInstructionRISCV.cpp.

◆ operator()() [39/146]

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

Definition at line 1570 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 1573 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 1576 of file EmulateInstructionRISCV.cpp.

◆ operator()() [42/146]

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

Definition at line 1507 of file EmulateInstructionRISCV.cpp.

◆ operator()() [43/146]

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

Definition at line 1580 of file EmulateInstructionRISCV.cpp.

◆ operator()() [44/146]

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

Definition at line 1511 of file EmulateInstructionRISCV.cpp.

◆ operator()() [45/146]

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

Definition at line 1540 of file EmulateInstructionRISCV.cpp.

◆ operator()() [46/146]

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

Definition at line 1515 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 1518 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 1477 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 1480 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 1562 of file EmulateInstructionRISCV.cpp.

◆ operator()() [51/146]

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

Definition at line 1364 of file EmulateInstructionRISCV.cpp.

◆ operator()() [52/146]

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

Definition at line 1566 of file EmulateInstructionRISCV.cpp.

◆ operator()() [53/146]

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

Definition at line 1368 of file EmulateInstructionRISCV.cpp.

◆ operator()() [54/146]

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

Definition at line 1530 of file EmulateInstructionRISCV.cpp.

◆ operator()() [55/146]

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

Definition at line 1301 of file EmulateInstructionRISCV.cpp.

References F_Op().

◆ operator()() [56/146]

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

Definition at line 1558 of file EmulateInstructionRISCV.cpp.

◆ operator()() [57/146]

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

Definition at line 1429 of file EmulateInstructionRISCV.cpp.

◆ operator()() [58/146]

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

Definition at line 1521 of file EmulateInstructionRISCV.cpp.

◆ operator()() [59/146]

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

Definition at line 1560 of file EmulateInstructionRISCV.cpp.

◆ operator()() [60/146]

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

Definition at line 1431 of file EmulateInstructionRISCV.cpp.

◆ operator()() [61/146]

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

Definition at line 1559 of file EmulateInstructionRISCV.cpp.

◆ operator()() [62/146]

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

Definition at line 1430 of file EmulateInstructionRISCV.cpp.

◆ operator()() [63/146]

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

Definition at line 1245 of file EmulateInstructionRISCV.cpp.

References F_Load().

◆ operator()() [64/146]

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

Definition at line 1523 of file EmulateInstructionRISCV.cpp.

◆ operator()() [65/146]

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

Definition at line 1279 of file EmulateInstructionRISCV.cpp.

References FMA().

◆ operator()() [66/146]

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

Definition at line 1539 of file EmulateInstructionRISCV.cpp.

◆ operator()() [67/146]

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

Definition at line 1363 of file EmulateInstructionRISCV.cpp.

◆ operator()() [68/146]

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

Definition at line 1538 of file EmulateInstructionRISCV.cpp.

◆ operator()() [69/146]

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

Definition at line 1362 of file EmulateInstructionRISCV.cpp.

◆ operator()() [70/146]

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

Definition at line 1524 of file EmulateInstructionRISCV.cpp.

◆ operator()() [71/146]

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

Definition at line 1280 of file EmulateInstructionRISCV.cpp.

References FMA().

◆ operator()() [72/146]

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

Definition at line 1529 of file EmulateInstructionRISCV.cpp.

◆ operator()() [73/146]

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

Definition at line 1300 of file EmulateInstructionRISCV.cpp.

References F_Op().

◆ operator()() [74/146]

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

Definition at line 1591 of file EmulateInstructionRISCV.cpp.

◆ operator()() [75/146]

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

Definition at line 1495 of file EmulateInstructionRISCV.cpp.

◆ operator()() [76/146]

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

Definition at line 1584 of file EmulateInstructionRISCV.cpp.

◆ operator()() [77/146]

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

Definition at line 1390 of file EmulateInstructionRISCV.cpp.

◆ operator()() [78/146]

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

Definition at line 1526 of file EmulateInstructionRISCV.cpp.

◆ operator()() [79/146]

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

Definition at line 1282 of file EmulateInstructionRISCV.cpp.

References FMA().

◆ operator()() [80/146]

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

Definition at line 1525 of file EmulateInstructionRISCV.cpp.

◆ operator()() [81/146]

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

Definition at line 1281 of file EmulateInstructionRISCV.cpp.

References FMA().

◆ operator()() [82/146]

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

Definition at line 1522 of file EmulateInstructionRISCV.cpp.

◆ operator()() [83/146]

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

Definition at line 1535 of file EmulateInstructionRISCV.cpp.

◆ operator()() [84/146]

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

Definition at line 1318 of file EmulateInstructionRISCV.cpp.

References F_SignInj().

◆ operator()() [85/146]

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

Definition at line 1536 of file EmulateInstructionRISCV.cpp.

◆ operator()() [86/146]

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

Definition at line 1319 of file EmulateInstructionRISCV.cpp.

References F_SignInj().

◆ operator()() [87/146]

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

Definition at line 1537 of file EmulateInstructionRISCV.cpp.

◆ operator()() [88/146]

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

Definition at line 1339 of file EmulateInstructionRISCV.cpp.

◆ operator()() [89/146]

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

Definition at line 1531 of file EmulateInstructionRISCV.cpp.

◆ operator()() [90/146]

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

Definition at line 1302 of file EmulateInstructionRISCV.cpp.

◆ operator()() [91/146]

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

Definition at line 1528 of file EmulateInstructionRISCV.cpp.

◆ operator()() [92/146]

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

Definition at line 1299 of file EmulateInstructionRISCV.cpp.

References F_Op().

◆ operator()() [93/146]

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

Definition at line 1258 of file EmulateInstructionRISCV.cpp.

References F_Store().

◆ operator()() [94/146]

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

Definition at line 1597 of file EmulateInstructionRISCV.cpp.

◆ operator()() [95/146]

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

Definition at line 1594 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 720 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [99/146]

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

Definition at line 729 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [100/146]

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

Definition at line 873 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [101/146]

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

Definition at line 723 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [102/146]

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

Definition at line 732 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [103/146]

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

Definition at line 1146 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 1145 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 681 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 726 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [107/146]

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

Definition at line 870 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [108/146]

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

Definition at line 976 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 984 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 996 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 1009 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 1077 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 1598 of file EmulateInstructionRISCV.cpp.

◆ operator()() [114/146]

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

Definition at line 854 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 770 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [116/146]

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

Definition at line 1049 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 1065 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 1131 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 1115 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 1595 of file EmulateInstructionRISCV.cpp.

◆ operator()() [121/146]

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

Definition at line 735 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [122/146]

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

Definition at line 1150 of file EmulateInstructionRISCV.cpp.

◆ operator()() [123/146]

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

Definition at line 1147 of file EmulateInstructionRISCV.cpp.

◆ operator()() [124/146]

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

Definition at line 876 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [125/146]

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

Definition at line 736 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [126/146]

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

Definition at line 802 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 877 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [128/146]

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

Definition at line 906 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [129/146]

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

Definition at line 948 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 811 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 746 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [132/146]

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

Definition at line 754 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [133/146]

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

Definition at line 820 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 845 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 891 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [136/146]

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

Definition at line 922 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [137/146]

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

Definition at line 966 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 836 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 884 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [140/146]

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

Definition at line 914 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [141/146]

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

Definition at line 957 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 794 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 939 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 737 of file EmulateInstructionRISCV.cpp.

References m_emu.

◆ operator()() [145/146]

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

Definition at line 828 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 762 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 667 of file EmulateInstructionRISCV.cpp.

◆ m_is_rvc

bool lldb_private::Executor::m_is_rvc
private

Definition at line 668 of file EmulateInstructionRISCV.cpp.

Referenced by delta().


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