LLVM 19.0.0git
Public Member Functions | Static Public Member Functions | List of all members
llvm::MCOperand Class Reference

Instances of this class represent operands of the MCInst class. More...

#include "llvm/MC/MCInst.h"

Public Member Functions

 MCOperand ()
 
bool isValid () const
 
bool isReg () const
 
bool isImm () const
 
bool isSFPImm () const
 
bool isDFPImm () const
 
bool isExpr () const
 
bool isInst () const
 
unsigned getReg () const
 Returns the register number.
 
void setReg (unsigned Reg)
 Set the register number.
 
int64_t getImm () const
 
void setImm (int64_t Val)
 
uint32_t getSFPImm () const
 
void setSFPImm (uint32_t Val)
 
uint64_t getDFPImm () const
 
void setDFPImm (uint64_t Val)
 
void setFPImm (double Val)
 
const MCExprgetExpr () const
 
void setExpr (const MCExpr *Val)
 
const MCInstgetInst () const
 
void setInst (const MCInst *Val)
 
void print (raw_ostream &OS, const MCRegisterInfo *RegInfo=nullptr) const
 
void dump () const
 
bool isBareSymbolRef () const
 
bool evaluateAsConstantImm (int64_t &Imm) const
 

Static Public Member Functions

static MCOperand createReg (unsigned Reg)
 
static MCOperand createImm (int64_t Val)
 
static MCOperand createSFPImm (uint32_t Val)
 
static MCOperand createDFPImm (uint64_t Val)
 
static MCOperand createExpr (const MCExpr *Val)
 
static MCOperand createInst (const MCInst *Val)
 

Detailed Description

Instances of this class represent operands of the MCInst class.

This is a simple discriminated union.

Definition at line 36 of file MCInst.h.

Constructor & Destructor Documentation

◆ MCOperand()

llvm::MCOperand::MCOperand ( )
inline

Definition at line 58 of file MCInst.h.

Member Function Documentation

◆ createDFPImm()

static MCOperand llvm::MCOperand::createDFPImm ( uint64_t  Val)
inlinestatic

◆ createExpr()

static MCOperand llvm::MCOperand::createExpr ( const MCExpr Val)
inlinestatic

Definition at line 162 of file MCInst.h.

Referenced by llvm::X86Operand::addAbsMemOperands(), llvm::HexagonMCInstrInfo::addConstant(), llvm::MCInstBuilder::addExpr(), llvm::X86Operand::addExpr(), XtensaOperand::addExpr(), llvm::X86Operand::addMemOffsOperands(), addNegOperand(), adjustDuplex(), createGOTRelExprOp(), createPCXRelExprOp(), createSparcMCOperand(), createVEMCOperand(), llvm::AMDGPUDisassembler::decodeVersionImm(), llvm::HexagonMCInstrInfo::deriveExtender(), llvm::MipsTargetELFStreamer::emitDirectiveCpLoad(), llvm::MipsTargetELFStreamer::emitDirectiveCpsetup(), llvm::ARMAsmPrinter::emitInstruction(), llvm::HexagonAsmPrinter::EmitSled(), GetSymbolRef(), llvm::HexagonLowerToMC(), llvm::HexagonAsmPrinter::HexagonProcessInstruction(), llvm::BPFMCInstLower::Lower(), llvm::LanaiMCInstLower::Lower(), llvm::MSP430MCInstLower::Lower(), llvm::AVRMCInstLower::lowerInstruction(), llvm::SystemZMCInstLower::lowerOperand(), llvm::ARMAsmPrinter::lowerOperand(), llvm::AArch64MCInstLower::lowerOperand(), AMDGPUMCInstLower::lowerOperand(), llvm::CSKYMCInstLower::lowerOperand(), llvm::LowerPPCMachineOperandToMCOperand(), LowerSymbolOperand(), llvm::XtensaAsmPrinter::LowerSymbolOperand(), llvm::BPFMCInstLower::LowerSymbolOperand(), llvm::CSKYMCInstLower::lowerSymbolOperand(), llvm::LanaiMCInstLower::LowerSymbolOperand(), llvm::M68kMCInstLower::LowerSymbolOperand(), llvm::MSP430MCInstLower::LowerSymbolOperand(), lowerSymbolOperand(), llvm::AVRMCInstLower::lowerSymbolOperand(), llvm::AArch64MCInstLower::lowerSymbolOperandCOFF(), llvm::AArch64MCInstLower::lowerSymbolOperandELF(), llvm::AArch64MCInstLower::lowerSymbolOperandMachO(), ScaleVectorOffset(), llvm::AMDGPUSymbolizer::tryAddingSymbolicOperand(), llvm::MCExternalSymbolizer::tryAddingSymbolicOperand(), and llvm::AArch64ExternalSymbolizer::tryAddingSymbolicOperand().

◆ createImm()

static MCOperand llvm::MCOperand::createImm ( int64_t  Val)
inlinestatic

Definition at line 141 of file MCInst.h.

Referenced by llvm::X86Operand::addAbsMemOperands(), llvm::X86Operand::addExpr(), XtensaOperand::addExpr(), llvm::MCInstBuilder::addImm(), llvm::X86Operand::addMemOffsOperands(), llvm::X86Operand::addMemOperands(), addNegOperand(), addOpsFromMDNode(), addOptionalImmOperand(), llvm::addStringImm(), llvm::AMDGPUDisassembler::convertDPP8Inst(), llvm::AMDGPUDisassembler::convertEXPInst(), llvm::AMDGPUDisassembler::convertFMAanyK(), llvm::AMDGPUDisassembler::convertMacDPPInst(), llvm::AMDGPUDisassembler::convertMIMGInst(), llvm::AMDGPUDisassembler::convertSDWAInst(), llvm::AMDGPUDisassembler::convertVINTERPInst(), llvm::AMDGPUDisassembler::convertVOP3DPPInst(), llvm::AMDGPUDisassembler::convertVOP3PDPPInst(), llvm::AMDGPUDisassembler::convertVOPCDPPInst(), llvm::HexagonMCShuffler::copyTo(), Decode2RImmInstruction(), Decode2RUSInstruction(), Decode3RImmInstruction(), DecodeAddiGroupBranch(), DecodeAddiur2Simm7(), DecodeAddrMode2IdxInstruction(), DecodeAddrMode3Instruction(), DecodeAddrMode5FP16Operand(), DecodeAddrMode5Operand(), DecodeAddrMode6Operand(), DecodeAddrModeImm12Operand(), DecodeAddSubERegInstruction(), DecodeAddSubImmShift(), DecodeAdrInstruction(), DecodeANDI16Imm(), DecodeArmMOVTWInstruction(), DecodeAS(), DecodeASX(), decodeB4constOperand(), decodeB4constuOperand(), DecodeBankedReg(), DecodeBFAfterTargetOperand(), DecodeBFLabelOperand(), DecodeBgtzGroupBranch(), DecodeBgtzGroupBranchMMR6(), DecodeBgtzlGroupBranch(), DecodeBitfieldMaskOperand(), DecodeBitpOperand(), DecodeBlezGroupBranch(), DecodeBlezGroupBranchMMR6(), DecodeBlezlGroupBranch(), decodeBranch(), DecodeBranchCondition(), DecodeBranchImmInstruction(), decodeBranchOperand(), DecodeBranchTarget(), DecodeBranchTarget10MM(), DecodeBranchTarget1SImm16(), DecodeBranchTarget21(), DecodeBranchTarget21MM(), DecodeBranchTarget26(), DecodeBranchTarget26MM(), DecodeBranchTarget7MM(), DecodeBranchTargetMM(), DecodeCacheeOp_CacheOpR6(), DecodeCacheOp(), DecodeCacheOpMM(), DecodeCall(), decodeCallOperand(), decodeCallTarget(), DecodeCAS(), DecodeCCOperand(), DecodeCCRU6Instruction(), DecodeCGImm(), decodeCLUIImmOperand(), decodeCondBranch(), decodeCondBrTarget(), DecodeCopMemInstruction(), DecodeCoprocessor(), DecodeCPSInstruction(), DecodeDaddiGroupBranch(), DecodeDAHIDATI(), DecodeDAHIDATIMMR6(), DecodeDEXT(), DecodeDINS(), decodeDirectBrTarget(), decodeDispRIHashOperand(), decodeDispRIX16Operand(), decodeDispRIXOperand(), decodeDispSPE2Operand(), decodeDispSPE4Operand(), decodeDispSPE8Operand(), llvm::AMDGPUDisassembler::decodeDpp8FI(), decodeFBRk(), decodeFIOARr(), decodeFIOBIT(), decodeFIORdA(), DecodeFixedPointScaleImm32(), DecodeFixedPointScaleImm64(), DecodeFMem(), DecodeFMem2(), DecodeFMem3(), DecodeFMemCop2MMR6(), DecodeFMemCop2R6(), DecodeFMemMMR2(), DecodeFMOVLaneInstruction(), DecodeForVMRSandVMSR(), llvm::AMDGPUDisassembler::decodeFPImmed(), decodeFRMArg(), DecodeFromCyclicRange(), decodeFWRdK(), DecodeHINTInstruction(), decodeImm12Operand(), decodeImm1_16Operand(), DecodeImm32(), decodeImm8_sh8Operand(), decodeImm8Operand(), DecodeImm8OptLsl(), decodeImmShiftOpValue(), decodeImmZeroOperand(), DecodeInsSize(), DecodeInstSyncBarrierOption(), DecodeINSVE_DF(), llvm::AMDGPUDisassembler::decodeIntImmed(), DecodeIT(), decodeJMPIXImmOperand(), decodeJumpOperand(), DecodeJumpTarget(), DecodeJumpTargetMM(), DecodeJumpTargetXMM(), DecodeL2RUSInstruction(), decodeL32ROperand(), DecodeLazyLoadStoreMul(), DecodeLdLImmInstruction(), DecodeLdRLImmInstruction(), decodeLenOperand(), DecodeLi16Imm(), llvm::AMDGPUDisassembler::decodeLiteralConstant(), DecodeLoadByte15(), decodeLoadStore(), DecodeLogicalImmInstruction(), DecodeLongShiftOperand(), decodeLRW16Imm8(), llvm::AMDGPUDisassembler::decodeMandatoryLiteralConstant(), DecodeMatrixTileListRegisterClass(), DecodeMem(), decodeMem16Operand(), decodeMem32Operand(), decodeMem8Operand(), DecodeMemBarrierOption(), DecodeMemEVA(), DecodeMemExtend(), DecodeMemMMGPImm7Lsl2(), DecodeMemMMImm12(), DecodeMemMMImm16(), DecodeMemMMImm4(), DecodeMemMMImm9(), DecodeMemMMReglistImm4Lsl2(), DecodeMemMMSPImm5Lsl2(), DecodeMemMultipleWritebackInstruction(), DecodeMemOperand(), decodeMemoryOpValue(), decodeMemri(), DecodeMEMrs9(), DecodeModImmInstruction(), DecodeModImmTiedInstruction(), DecodeMoveHRegInstruction(), DecodeMoveImmInstruction(), DecodeMRSSystemRegister(), DecodeMSA128Mem(), DecodeMSRMask(), DecodeMSRSystemRegister(), DecodeMveAddrModeQ(), DecodeMVEModImmInstruction(), DecodeMVEOverlappingLongShift(), DecodeMVEPairVectorIndexOperand(), DecodeMVEVADCInstruction(), DecodeMVEVCMP(), DecodeNegImmOperand(), DecodeNEONComplexLane64Instruction(), llvm::AMDGPUDisassembler::decodeNonVGPRSrcOp(), decodeOImmOperand(), DecodePairLdStInstruction(), decodePCDBLOperand(), DecodePCRelLabel16(), DecodePCRelLabel19(), DecodePOOL16BEncodedField(), DecodePOP35GroupBranchMMR6(), DecodePOP37GroupBranchMMR6(), DecodePOP65GroupBranchMMR6(), DecodePOP75GroupBranchMMR6(), DecodePostIdxReg(), DecodePowerTwoOperand(), DecodePredicateOperand(), decodePredicateOperand(), DecodePredNoALOperand(), DecodePrefeOpMM(), DecodePRFMRegInstruction(), DecodeRDOperand(), DecodeRestrictedFPPredicateOperand(), DecodeRestrictedIPredicateOperand(), DecodeRestrictedSPredicateOperand(), DecodeRestrictedUPredicateOperand(), DecodeRFEInstruction(), DecoderForMRRC2AndMCRR2(), decodeRiMemoryValue(), DecodeRUSInstruction(), decodeRVCInstrRdRs1ImmZero(), DecodeSETPANInstruction(), decodeShiftImm(), DecodeShiftRight16Imm(), DecodeShiftRight32Imm(), DecodeShiftRight64Imm(), DecodeShiftRight8Imm(), decodeShimm1_31Operand(), DecodeSignedLdStInstruction(), DecodeSignedOperand(), DecodeSImm(), DecodeSIMM13(), DecodeSimm18Lsl3(), DecodeSimm19Lsl2(), DecodeSimm23Lsl2(), DecodeSIMM32(), DecodeSIMM7(), DecodeSimm9SP(), decodeSImmOperand(), decodeSImmOperandAndLsl1(), DecodeSImmWithOffsetAndScale(), decodeSMEMOffset(), decodeSOPPBrTarget(), DecodeSOPwithRS12(), DecodeSOPwithRU6(), DecodeSORegImmOperand(), DecodeSORegMemOperand(), DecodeSORegRegOperand(), DecodeSpecial3LlSc(), decodeSplsValue(), DecodeStLImmInstruction(), DecodeSVCROp(), DecodeSVEIncDecImm(), DecodeSVELogicalImmInstruction(), DecodeSymbolicOperandOff(), DecodeSyncI(), DecodeSyncI_MM(), DecodeSynciR6(), DecodeSyspXzrInstruction(), DecodeSystemPStateImm0_15Instruction(), DecodeSystemPStateImm0_1Instruction(), DecodeT2AddrModeImm0_1020s4(), DecodeT2AddrModeImm12(), DecodeT2AddrModeSOReg(), DecodeT2AddSubSPImm(), DecodeT2Adr(), DecodeT2BInstruction(), DecodeT2BROperand(), DecodeT2CPSInstruction(), DecodeT2HintSpaceInstruction(), DecodeT2Imm7(), DecodeT2Imm7S4(), DecodeT2Imm8(), DecodeT2Imm8S4(), DecodeT2LoadLabel(), DecodeT2MOVTWInstruction(), DecodeT2ShifterImmOperand(), DecodeT2SOImm(), DecodeTestAndBranch(), DecodeThreeAddrSRegInstruction(), DecodeThumbAddrModeIS(), DecodeThumbAddrModePC(), DecodeThumbAddrModeSP(), DecodeThumbAddSpecialReg(), DecodeThumbAddSPImm(), DecodeThumbBCCTargetOperand(), DecodeThumbBLTargetOperand(), DecodeThumbBLXOffset(), DecodeThumbBROperand(), DecodeThumbCmpBROperand(), DecodeThumbCPS(), DecodeTSBInstruction(), decodeUimm4Operand(), decodeUimm5Operand(), decodeUImmOperand(), DecodeUImmWithOffsetAndScale(), DecodeUnconditionalBranch(), DecodeUnsignedLdStInstruction(), DecodeVCVTD(), DecodeVCVTImmOperand(), DecodeVCVTQ(), DecodeVecShiftLImm(), DecodeVecShiftRImm(), llvm::AMDGPUDisassembler::decodeVersionImm(), DecodeVLD1DupInstruction(), DecodeVLD1LN(), DecodeVLD2DupInstruction(), DecodeVLD2LN(), DecodeVLD3DupInstruction(), DecodeVLD3LN(), DecodeVLD4DupInstruction(), DecodeVLD4LN(), DecodeVLDInstruction(), DecodeVMOVModImmInstruction(), DecodeVPTMaskOperand(), DecodeVSCCLRM(), DecodeVSHLMaxInstruction(), DecodeVST1LN(), DecodeVST2LN(), DecodeVST3LN(), DecodeVST4LN(), DecodeVSTInstruction(), DecodeVSTRVLDR_SYSREG(), decodeXTHeadMemPair(), decodeZcmpRlist(), decodeZcmpSpimm(), llvm::HexagonMCInstrInfo::deriveExtender(), emitBSIC(), llvm::MipsTargetELFStreamer::emitDirectiveCpreturn(), emitHiLo(), llvm::MipsTargetStreamer::emitII(), llvm::ARMAsmPrinter::emitInstruction(), llvm::HexagonAsmPrinter::emitInstruction(), emitLEASLzzi(), emitLEAzii(), emitLEAzzi(), llvm::MipsTargetStreamer::emitRI(), llvm::MipsTargetStreamer::emitRRI(), llvm::MipsTargetStreamer::emitRRIII(), llvm::HexagonAsmPrinter::EmitSled(), llvm::AArch64Disassembler::getInstruction(), llvm::AMDGPUDisassembler::getInstruction(), llvm::ARMInstrInfo::getNop(), llvm::BTFDebug::InstLower(), AMDGPUMCInstLower::lower(), llvm::BPFMCInstLower::Lower(), llvm::LanaiMCInstLower::Lower(), llvm::MSP430MCInstLower::Lower(), llvm::WebAssemblyMCInstLower::lower(), llvm::SPIRVMCInstLower::lower(), lowerAlignmentHint(), llvm::AVRMCInstLower::lowerInstruction(), llvm::lowerLoongArchMachineOperandToMCOperand(), llvm::M68kMCInstLower::LowerOperand(), LowerOperand(), llvm::SystemZMCInstLower::lowerOperand(), llvm::MipsMCInstLower::LowerOperand(), llvm::ARMAsmPrinter::lowerOperand(), llvm::AArch64MCInstLower::lowerOperand(), AMDGPUMCInstLower::lowerOperand(), llvm::CSKYMCInstLower::lowerOperand(), llvm::ARCMCInstLower::LowerOperand(), llvm::XCoreMCInstLower::LowerOperand(), llvm::XtensaAsmPrinter::lowerOperand(), llvm::LowerPPCMachineOperandToMCOperand(), lowerRISCVVMachineInstrToMCInst(), parseImmediate(), parseLEBImmediate(), PostOperandDecodeAdjust(), llvm::SystemZAsmPrinter::PrintAsmMemoryOperand(), llvm::ARMAsmBackend::relaxInstruction(), translateImmediate(), translateOperand(), and translateRMMemory().

◆ createInst()

static MCOperand llvm::MCOperand::createInst ( const MCInst Val)
inlinestatic

◆ createReg()

static MCOperand llvm::MCOperand::createReg ( unsigned  Reg)
inlinestatic

Definition at line 134 of file MCInst.h.

References Reg.

Referenced by llvm::X86Operand::addDstIdxOperands(), llvm::X86Operand::addGR16orGR32orGR64Operands(), llvm::X86Operand::addGR32orGR64Operands(), llvm::X86Operand::addMaskPairOperands(), llvm::X86Operand::addMemOffsOperands(), llvm::X86Operand::addMemOperands(), addOpsFromMDNode(), llvm::MCInstBuilder::addReg(), llvm::X86Operand::addRegOperands(), XtensaOperand::addRegOperands(), llvm::X86Operand::addSrcIdxOperands(), llvm::AMDGPUDisassembler::convertMacDPPInst(), llvm::AMDGPUDisassembler::convertMIMGInst(), llvm::AMDGPUDisassembler::convertVOPCDPPInst(), llvm::AMDGPUDisassembler::createRegOperand(), DecodeACC64DSPRegisterClass(), DecodeAddiGroupBranch(), DecodeAddrMode2IdxInstruction(), DecodeAddrMode3Instruction(), DecodeAFGR64RegisterClass(), DecodeARRegisterClass(), DecodeASRRegsRegisterClass(), DecodeBgtzGroupBranch(), DecodeBgtzGroupBranchMMR6(), DecodeBgtzlGroupBranch(), DecodeBlezGroupBranch(), DecodeBlezGroupBranchMMR6(), DecodeBlezlGroupBranch(), DecodeCacheeOp_CacheOpR6(), DecodeCacheOp(), DecodeCacheOpMM(), DecodeCCOutOperand(), DecodeCCRRegisterClass(), DecodeCFRRegisterClass(), DecodeCLRMGPRRegisterClass(), DecodeCOP0RegisterClass(), DecodeCOP2RegisterClass(), DecodeCoprocPairRegisterClass(), DecodeCoprocRegsRegisterClass(), decodeCRBitMOperand(), DecodeCRC(), DecodeCtrRegs64RegisterClass(), DecodeCtrRegsRegisterClass(), DecodeDaddiGroupBranch(), DecodeDAHIDATI(), DecodeDAHIDATIMMR6(), DecodeDEXT(), DecodeDFPRegsRegisterClass(), DecodeDINS(), DecodeDPairRegisterClass(), DecodeDPairSpacedRegisterClass(), DecodeDPRRegisterClass(), DecodeF128RegisterClass(), DecodeF32RegisterClass(), DecodeFCCRegisterClass(), DecodeFCCRegsRegisterClass(), DecodeFCSRRegisterClass(), DecodeFGR32RegisterClass(), DecodeFGR64RegisterClass(), DecodeFGRCCRegisterClass(), decodeFLPMX(), DecodeFMem(), DecodeFMem2(), DecodeFMem3(), DecodeFMemCop2MMR6(), DecodeFMemCop2R6(), DecodeFMemMMR2(), DecodeForVMRSandVMSR(), DecodeFPR16RegisterClass(), DecodeFPR32CRegisterClass(), DecodeFPR32RegisterClass(), DecodeFPR64CRegisterClass(), DecodeFPR64RegisterClass(), DecodeFPRegsRegisterClass(), DecodeGPR32RegisterClass(), DecodeGPR64RegisterClass(), DecodeGPR64x8ClassRegisterClass(), DecodeGPR8RegisterClass(), DecodeGPRCRegisterClass(), DecodeGPRMM16MovePRegisterClass(), DecodeGPRMM16RegisterClass(), DecodeGPRMM16ZeroRegisterClass(), DecodeGPRPairnospRegisterClass(), DecodeGPRPairRegisterClass(), DecodeGPRRegisterClass(), DecodeGPRSeqPairsClassRegisterClass(), DecodeGPRSPRegisterClass(), DecodeGPRspRegisterClass(), DecodeGPRwithAPSR_NZCVnospRegisterClass(), DecodeGPRwithAPSRRegisterClass(), DecodeGPRwithZRRegisterClass(), DecodeGPRX1X5RegisterClass(), DecodeGR16RegisterClass(), DecodeGR8RegisterClass(), DecodeGRRegsRegisterClass(), DecodeGuestRegs64RegisterClass(), DecodeGuestRegsRegisterClass(), DecodeHI32DSPRegisterClass(), DecodeHWRegsRegisterClass(), DecodeI32RegisterClass(), DecodeI64RegisterClass(), DecodeIntPairRegisterClass(), DecodeIntRegsRegisterClass(), DecodeLASX256RegisterClass(), DecodeLD8RegisterClass(), DecodeLO32DSPRegisterClass(), DecodeLoadByte15(), decodeLoadStore(), DecodeLOLoop(), DecodeLSX128RegisterClass(), DecodeMatrixTile(), DecodeMem(), DecodeMemEVA(), DecodeMemMMGPImm7Lsl2(), DecodeMemMMImm12(), DecodeMemMMImm16(), DecodeMemMMImm9(), DecodeMemMMReglistImm4Lsl2(), DecodeMemMMSPImm5Lsl2(), decodeMemoryOpValue(), decodeMemri(), DecodemGPRRegisterClass(), DecodeMISCRegisterClass(), DecodeModRegsRegisterClass(), DecodeMovePRegPair(), DecodeMQPRRegisterClass(), DecodeMQQPRRegisterClass(), DecodeMQQQQPRRegisterClass(), DecodeMSA128BRegisterClass(), DecodeMSA128DRegisterClass(), DecodeMSA128HRegisterClass(), DecodeMSA128Mem(), DecodeMSA128WRegisterClass(), DecodeMSACtrlRegisterClass(), DecodeMVEModImmInstruction(), DecodeMVEVADCInstruction(), DecodeMVEVCMP(), DecodeMveVCTP(), DecodeMVEVPNOT(), DecodePOP35GroupBranchMMR6(), DecodePOP37GroupBranchMMR6(), DecodePOP65GroupBranchMMR6(), DecodePOP75GroupBranchMMR6(), DecodePPR2Mul2RegisterClass(), DecodePredicateOperand(), DecodePrefeOpMM(), DecodePRRegsRegisterClass(), DecodeQFPRegsRegisterClass(), DecodeQPRRegisterClass(), decodeRegisterClass(), DecodeRegisterClass(), DecodeRegListOperand(), DecodeRegListOperand16(), DecodeRegSeqOperand(), DecodeRegSeqOperandD1(), DecodeRegSeqOperandD2(), DecodeRegSeqOperandF1(), DecodeRegSeqOperandF2(), decodeRiMemoryValue(), DecodeRRegsRegisterClass(), decodeRrMemoryValue(), decodeRVCInstrRdRs1UImm(), decodeRVCInstrRdSImm(), DecodeSCRRegisterClass(), DecodesFPR128RegisterClass(), DecodesFPR32RegisterClass(), DecodesFPR64_VRegisterClass(), DecodesFPR64RegisterClass(), DecodesGPRRegisterClass(), DecodeSimpleRegisterClass(), DecodeSpecial3LlSc(), decodeSplsValue(), DecodeSPRRegisterClass(), DecodeSR07RegisterClass(), DecodeSRRegisterClass(), DecodeSyncI(), DecodeSyncI_MM(), DecodeSynciR6(), DecodeSysRegs64RegisterClass(), DecodeSysRegsRegisterClass(), DecodeT2Adr(), DecodetcGPRRegisterClass(), DecodetGPREvenRegisterClass(), DecodetGPROddRegisterClass(), DecodeThumbAddrModeSP(), DecodeThumbAddSpecialReg(), DecodeThumbAddSPImm(), DecodeThumbAddSPReg(), DecodeV64RegisterClass(), DecodeVLD1LN(), DecodeVLD2LN(), DecodeVLD3DupInstruction(), DecodeVLD3LN(), DecodeVLD4DupInstruction(), DecodeVLD4LN(), DecodeVLDInstruction(), DecodeVM512RegisterClass(), decodeVMaskReg(), DecodeVMRegisterClass(), DecodeVRM2RegisterClass(), DecodeVRM4RegisterClass(), DecodeVRM8RegisterClass(), DecodeVRRegisterClass(), DecodeVSCCLRM(), decodeVSRpEvenOperands(), DecodeVST1LN(), DecodeVST2LN(), DecodeVST3LN(), DecodeVST4LN(), DecodeVSTInstruction(), DecodeVSTRVLDR_SYSREG(), DecodeZPR2Mul2RegisterClass(), DecodeZPR4Mul4RegisterClass(), llvm::MipsTargetELFStreamer::emitDirectiveCpLoad(), llvm::MipsTargetELFStreamer::emitDirectiveCpreturn(), llvm::ARMAsmPrinter::emitInstruction(), llvm::MipsTargetStreamer::emitR(), EmitRDPC(), llvm::MipsTargetStreamer::emitRR(), llvm::MipsTargetStreamer::emitRRIII(), llvm::MipsTargetStreamer::emitRRR(), llvm::MipsTargetStreamer::emitRRRX(), llvm::MipsTargetStreamer::emitRRX(), llvm::MipsTargetStreamer::emitRX(), llvm::AArch64Disassembler::getInstruction(), llvm::AMDGPUDisassembler::getInstruction(), llvm::HexagonMCInstrInfo::getNewValueOperand(), llvm::ARMInstrInfo::getNop(), llvm::HexagonLowerToMC(), llvm::HexagonAsmPrinter::HexagonProcessInstruction(), llvm::BTFDebug::InstLower(), llvm::AArch64MCInstLower::Lower(), llvm::BPFMCInstLower::Lower(), llvm::LanaiMCInstLower::Lower(), llvm::MSP430MCInstLower::Lower(), llvm::WebAssemblyMCInstLower::lower(), llvm::SPIRVMCInstLower::lower(), llvm::AVRMCInstLower::lowerInstruction(), llvm::lowerLoongArchMachineOperandToMCOperand(), llvm::M68kMCInstLower::LowerOperand(), LowerOperand(), llvm::SystemZMCInstLower::lowerOperand(), llvm::MipsMCInstLower::LowerOperand(), llvm::ARMAsmPrinter::lowerOperand(), llvm::AArch64MCInstLower::lowerOperand(), AMDGPUMCInstLower::lowerOperand(), llvm::CSKYMCInstLower::lowerOperand(), llvm::ARCMCInstLower::LowerOperand(), llvm::XCoreMCInstLower::LowerOperand(), llvm::XtensaAsmPrinter::lowerOperand(), llvm::LowerPPCMachineOperandToMCOperand(), lowerRISCVVMachineInstrToMCInst(), llvm::SystemZAsmPrinter::PrintAsmOperand(), llvm::ARMInstPrinter::printInst(), llvm::ARMAsmBackend::relaxInstruction(), translateDstIndex(), translateFPRegister(), translateImmediate(), translateMaskRegister(), translateRegister(), translateRMMemory(), and translateSrcIndex().

◆ createSFPImm()

static MCOperand llvm::MCOperand::createSFPImm ( uint32_t  Val)
inlinestatic

◆ dump()

LLVM_DUMP_METHOD void MCOperand::dump ( ) const

Definition at line 69 of file MCInst.cpp.

References llvm::dbgs(), and print().

◆ evaluateAsConstantImm()

bool MCOperand::evaluateAsConstantImm ( int64_t &  Imm) const

Definition at line 51 of file MCInst.cpp.

References getImm(), and isImm().

◆ getDFPImm()

uint64_t llvm::MCOperand::getDFPImm ( ) const
inline

◆ getExpr()

const MCExpr * llvm::MCOperand::getExpr ( ) const
inline

Definition at line 114 of file MCInst.h.

References assert(), ExprVal, and isExpr().

Referenced by llvm::HexagonMCInstrInfo::deriveExtender(), llvm::HexagonMCInstrInfo::deriveSubInst(), llvm::MCStreamer::emitInstruction(), llvm::HexagonMCELFStreamer::EmitSymbol(), llvm::PPCMCCodeEmitter::getAbsCondBrEncoding(), llvm::PPCMCCodeEmitter::getAbsDirectBrEncoding(), llvm::CSKYMCCodeEmitter::getBareSymbolOpValue(), llvm::CSKYMCCodeEmitter::getBranchSymbolOpValue(), llvm::MipsMCCodeEmitter::getBranchTarget21OpValue(), llvm::MipsMCCodeEmitter::getBranchTarget21OpValueMM(), llvm::MipsMCCodeEmitter::getBranchTarget26OpValue(), llvm::MipsMCCodeEmitter::getBranchTarget26OpValueMM(), llvm::MipsMCCodeEmitter::getBranchTarget7OpValueMM(), getBranchTargetOpValue(), llvm::MipsMCCodeEmitter::getBranchTargetOpValue(), llvm::MipsMCCodeEmitter::getBranchTargetOpValue1SImm16(), llvm::MipsMCCodeEmitter::getBranchTargetOpValueLsl2MMR6(), llvm::MipsMCCodeEmitter::getBranchTargetOpValueMM(), llvm::MipsMCCodeEmitter::getBranchTargetOpValueMMPC10(), llvm::MipsMCCodeEmitter::getBranchTargetOpValueMMR6(), llvm::CSKYMCCodeEmitter::getCallSymbolOpValue(), llvm::PPCMCCodeEmitter::getCondBrEncoding(), llvm::CSKYMCCodeEmitter::getConstpoolSymbolOpValue(), llvm::CSKYMCCodeEmitter::getDataSymbolOpValue(), llvm::PPCMCCodeEmitter::getDirectBrEncoding(), llvm::PPCMCCodeEmitter::getDispRI34PCRelEncoding(), llvm::PPCMCCodeEmitter::getDispRIEncoding(), llvm::PPCMCCodeEmitter::getDispRIX16Encoding(), llvm::PPCMCCodeEmitter::getDispRIXEncoding(), llvm::PPCMCCodeEmitter::getImm16Encoding(), llvm::PPCMCCodeEmitter::getImm34Encoding(), llvm::CSKYMCCodeEmitter::getImmOpValue(), llvm::MipsMCCodeEmitter::getJumpOffset16OpValue(), llvm::MipsMCCodeEmitter::getJumpTargetOpValue(), llvm::MipsMCCodeEmitter::getJumpTargetOpValueMM(), llvm::MipsMCCodeEmitter::getMachineOpValue(), llvm::HexagonMCCodeEmitter::getMachineOpValue(), llvm::MipsMCCodeEmitter::getSimm18Lsl3Encoding(), llvm::MipsMCCodeEmitter::getSimm19Lsl2Encoding(), llvm::PPCMCCodeEmitter::getTLSCallEncoding(), llvm::PPCMCCodeEmitter::getTLSRegEncoding(), llvm::HexagonAsmPrinter::HexagonProcessInstruction(), isBareSymbolRef(), llvm::HexagonMCInstrInfo::isConstExtended(), llvm::isPartOfGOTToPCRelPair(), llvm::HexagonMCInstrInfo::minConstant(), optimizeToShortImmediateForm(), print(), llvm::AArch64InstPrinter::printAddSubImm(), llvm::ARMInstPrinter::printAdrLabelOperand(), llvm::AArch64InstPrinter::printAMIndexedWB(), llvm::HexagonInstPrinter::printBrtarget(), llvm::CSKYInstPrinter::printConstpool(), llvm::CSKYInstPrinter::printDataSymbol(), llvm::PPCInstPrinter::printInst(), llvm::X86IntelInstPrinter::printMemOffset(), llvm::X86ATTInstPrinter::printMemOffset(), printMemoryImmediateOffset(), llvm::X86IntelInstPrinter::printMemReference(), llvm::X86ATTInstPrinter::printMemReference(), llvm::SparcInstPrinter::printOperand(), llvm::VEInstPrinter::printOperand(), llvm::CSKYInstPrinter::printOperand(), llvm::RISCVInstPrinter::printOperand(), printOperand(), llvm::SystemZInstPrinter::printOperand(), llvm::XtensaInstPrinter::printOperand(), llvm::HexagonInstPrinter::printOperand(), llvm::ARMInstPrinter::printThumbLdrLabelOperand(), llvm::AArch64InstPrinter::printUImm12Offset(), ScaleVectorOffset(), and llvm::HexagonMCInstrInfo::subInstWouldBeExtended().

◆ getImm()

int64_t llvm::MCOperand::getImm ( ) const
inline

Definition at line 80 of file MCInst.h.

References assert(), ImmVal, and isImm().

Referenced by llvm::adjustPqBits(), llvm::AMDGPUDisassembler::convertTrue16OpSel(), llvm::mca::RISCVInstrumentManager::createInstruments(), cvtVOP3DstOpSelOnly(), DecodeBFAfterTargetOperand(), DecodeInsSize(), llvm::HexagonMCInstrInfo::deriveExtender(), evaluateAsConstantImm(), llvm::X86_MC::X86MCInstrAnalysis::evaluateBranch(), evaluateMemOpAddrForAddrMode3(), evaluateMemOpAddrForAddrMode5(), evaluateMemOpAddrForAddrMode5FP16(), evaluateMemOpAddrForAddrMode_i12(), evaluateMemOpAddrForAddrModeT2_i8s4(), evaluateMemOpAddrForAddrModeT2_pc(), llvm::X86_MC::X86MCInstrAnalysis::evaluateMemoryOperandAddress(), llvm::CSKYMCCodeEmitter::getBranchSymbolOpValue(), llvm::MipsMCCodeEmitter::getBranchTarget21OpValue(), llvm::MipsMCCodeEmitter::getBranchTarget21OpValueMM(), llvm::MipsMCCodeEmitter::getBranchTarget26OpValue(), llvm::MipsMCCodeEmitter::getBranchTarget26OpValueMM(), llvm::MipsMCCodeEmitter::getBranchTarget7OpValueMM(), getBranchTargetOpValue(), llvm::MipsMCCodeEmitter::getBranchTargetOpValue(), llvm::MipsMCCodeEmitter::getBranchTargetOpValue1SImm16(), llvm::MipsMCCodeEmitter::getBranchTargetOpValueLsl2MMR6(), llvm::MipsMCCodeEmitter::getBranchTargetOpValueMM(), llvm::MipsMCCodeEmitter::getBranchTargetOpValueMMPC10(), llvm::MipsMCCodeEmitter::getBranchTargetOpValueMMR6(), llvm::PPCMCCodeEmitter::getDispRIHashEncoding(), llvm::PPCMCCodeEmitter::getDispRIX16Encoding(), llvm::CSKYMCCodeEmitter::getImmOpValue(), llvm::CSKYMCCodeEmitter::getImmOpValueIDLY(), llvm::CSKYMCCodeEmitter::getImmOpValueMSBSize(), llvm::CSKYMCCodeEmitter::getImmShiftOpValue(), llvm::MipsMCCodeEmitter::getJumpOffset16OpValue(), llvm::MipsMCCodeEmitter::getJumpTargetOpValue(), llvm::MipsMCCodeEmitter::getJumpTargetOpValueMM(), llvm::CSKYMCCodeEmitter::getMachineOpValue(), llvm::MipsMCCodeEmitter::getMachineOpValue(), llvm::PPCMCCodeEmitter::getMachineOpValue(), llvm::X86_MC::X86MCInstrAnalysis::getMemoryOperandRelocationOffset(), llvm::CSKYMCCodeEmitter::getOImmOpValue(), llvm::MipsMCCodeEmitter::getSimm23Lsl2Encoding(), llvm::MipsMCCodeEmitter::getSImm3Lsa2Value(), llvm::MipsMCCodeEmitter::getSImm9AddiuspValue(), llvm::MipsMCCodeEmitter::getUImm3Mod8Encoding(), llvm::MipsMCCodeEmitter::getUImm4AndValue(), llvm::MipsMCCodeEmitter::getUImm6Lsl2Encoding(), HasConditionalBranch(), llvm::HexagonMCInstrInfo::isInnerLoop(), llvm::HexagonMCInstrInfo::isMemReorderDisabled(), llvm::HexagonMCInstrInfo::isOuterLoop(), llvm::LowerARMMachineInstrToMCInst(), LowerLargeShift(), matchAliasCondition(), llvm::X86::optimizeShiftRotateWithImmediateOne(), optimizeToShortImmediateForm(), llvm::X86::optimizeVPCMPWithImmediateOneOrSix(), print(), llvm::ARMInstPrinter::printAddrMode2OffsetOperand(), llvm::ARMInstPrinter::printAddrMode2Operand(), llvm::ARMInstPrinter::printAddrMode3OffsetOperand(), llvm::ARMInstPrinter::printAddrMode5FP16Operand(), llvm::ARMInstPrinter::printAddrMode5Operand(), llvm::ARMInstPrinter::printAddrMode6Operand(), llvm::ARMInstPrinter::printAddrModeImm12Operand(), llvm::AArch64InstPrinter::printAddSubImm(), llvm::ARMInstPrinter::printAdrLabelOperand(), llvm::ARMInstPrinter::printAM2PreOrOffsetIndexOp(), llvm::ARMInstPrinter::printAM3PreOrOffsetIndexOp(), llvm::AArch64InstPrinter::printAMIndexedWB(), llvm::RISCVInstPrinter::printBranchOperand(), llvm::NVPTXInstPrinter::printCmpMode(), llvm::CSKYInstPrinter::printConstpool(), llvm::CSKYInstPrinter::printCSKYSymbolOperand(), llvm::NVPTXInstPrinter::printCvtMode(), llvm::CSKYInstPrinter::printDataSymbol(), llvm::AArch64InstPrinter::printFPImmOperand(), llvm::ARMInstPrinter::printFPImmOperand(), llvm::AArch64InstPrinter::printInst(), llvm::ARMInstPrinter::printInst(), llvm::NVPTXInstPrinter::printLdStCode(), llvm::X86IntelInstPrinter::printMemOffset(), llvm::X86ATTInstPrinter::printMemOffset(), llvm::BPFInstPrinter::printMemOperand(), llvm::SparcInstPrinter::printMemOperand(), printMemoryImmediateOffset(), llvm::X86IntelInstPrinter::printMemReference(), llvm::X86ATTInstPrinter::printMemReference(), llvm::LanaiInstPrinter::printMemRiOperand(), llvm::LanaiInstPrinter::printMemRrOperand(), llvm::LanaiInstPrinter::printMemSplsOperand(), llvm::NVPTXInstPrinter::printMmaCode(), llvm::SparcInstPrinter::printOperand(), llvm::VEInstPrinter::printOperand(), llvm::CSKYInstPrinter::printOperand(), llvm::RISCVInstPrinter::printOperand(), printOperand(), llvm::SystemZInstPrinter::printOperand(), llvm::XtensaInstPrinter::printOperand(), llvm::ARMInstPrinter::printPostIdxImm8Operand(), llvm::ARMInstPrinter::printPostIdxImm8s4Operand(), llvm::ARMInstPrinter::printPostIdxRegOperand(), llvm::NVPTXInstPrinter::printPrmtMode(), llvm::ARMInstPrinter::printSORegImmOperand(), llvm::ARMInstPrinter::printSORegRegOperand(), llvm::AArch64InstPrinter::printSVCROp(), llvm::AArch64InstPrinter::printSysAlias(), llvm::AArch64InstPrinter::printSyspAlias(), llvm::ARMInstPrinter::printT2AddrModeImm0_1020s4Operand(), llvm::ARMInstPrinter::printT2AddrModeImm8OffsetOperand(), llvm::ARMInstPrinter::printT2AddrModeImm8Operand(), llvm::ARMInstPrinter::printT2AddrModeImm8s4OffsetOperand(), llvm::ARMInstPrinter::printT2AddrModeImm8s4Operand(), llvm::ARMInstPrinter::printT2AddrModeSoRegOperand(), llvm::ARMInstPrinter::printT2SOOperand(), llvm::ARMInstPrinter::printThumbAddrModeImm5SOperand(), llvm::ARMInstPrinter::printThumbLdrLabelOperand(), llvm::AArch64InstPrinter::printUImm12Offset(), llvm::HexagonMCInstrInfo::setInnerLoop(), llvm::HexagonMCInstrInfo::setMemReorderDisabled(), llvm::HexagonMCInstrInfo::setOuterLoop(), and llvm::WebAssemblyAsmTypeCheck::typeCheck().

◆ getInst()

const MCInst * llvm::MCOperand::getInst ( ) const
inline

◆ getReg()

unsigned llvm::MCOperand::getReg ( ) const
inline

Returns the register number.

Definition at line 69 of file MCInst.h.

References assert(), isReg(), and RegVal.

Referenced by addOps(), llvm::adjustPqBits(), checkLowRegisterList(), checkWriteLane(), llvm::mca::InstrBuilder::createInstruction(), DecodeRegListOperand(), llvm::AMDGPUDisassembler::decodeVOPDDstYOp(), llvm::HexagonMCInstrInfo::deriveSubInst(), evaluateMemOpAddrForAddrMode3(), evaluateMemOpAddrForAddrMode5(), evaluateMemOpAddrForAddrMode5FP16(), evaluateMemOpAddrForAddrMode_i12(), evaluateMemOpAddrForAddrModeT2_i8s4(), llvm::X86_MC::X86MCInstrAnalysis::evaluateMemoryOperandAddress(), llvm::PPCMCCodeEmitter::get_crbitm_encoding(), llvm::HexagonMCInstrInfo::getDuplexCandidateGroup(), llvm::CSKYMCCodeEmitter::getMachineOpValue(), llvm::MipsMCCodeEmitter::getMachineOpValue(), llvm::PPCMCCodeEmitter::getMachineOpValue(), llvm::HexagonMCCodeEmitter::getMachineOpValue(), llvm::X86_MC::X86MCInstrAnalysis::getMemoryOperandRelocationOffset(), getRegisterForMxtrC0(), getRegisterForMxtrDSP(), getRegisterForMxtrFP(), HasConditionalBranch(), llvm::mca::hashMCOperand(), llvm::HexagonAsmPrinter::HexagonProcessInstruction(), llvm::ARM_MC::isCPSRDefined(), isOrderedCompoundPair(), llvm::HexagonMCInstrInfo::isOrderedDuplexPair(), listContainsReg(), matchAliasCondition(), llvm::HexagonMCInstrInfo::predicateInfo(), print(), llvm::ARMInstPrinter::printAddrMode2OffsetOperand(), llvm::ARMInstPrinter::printAddrMode3OffsetOperand(), llvm::ARMInstPrinter::printAddrMode5FP16Operand(), llvm::ARMInstPrinter::printAddrMode5Operand(), llvm::ARMInstPrinter::printAddrMode6OffsetOperand(), llvm::ARMInstPrinter::printAddrMode6Operand(), llvm::ARMInstPrinter::printAddrMode7Operand(), llvm::ARMInstPrinter::printAddrModeImm12Operand(), llvm::ARMInstPrinter::printAddrModeTBB(), llvm::ARMInstPrinter::printAddrModeTBH(), llvm::ARMInstPrinter::printAM2PreOrOffsetIndexOp(), llvm::ARMInstPrinter::printAM3PreOrOffsetIndexOp(), llvm::LoongArchInstPrinter::printAtomicMemOp(), llvm::CSKYInstPrinter::printFPR(), llvm::AArch64InstPrinter::printInst(), llvm::ARMInstPrinter::printInst(), llvm::AArch64InstPrinter::printMatrix(), llvm::AArch64InstPrinter::printMatrixTile(), llvm::AArch64InstPrinter::printMatrixTileVector(), llvm::BPFInstPrinter::printMemOperand(), llvm::SparcInstPrinter::printMemOperand(), printMemoryBaseRegister(), llvm::X86IntelInstPrinter::printMemReference(), llvm::X86ATTInstPrinter::printMemReference(), llvm::LanaiInstPrinter::printMemRrOperand(), llvm::ARMInstPrinter::printMveAddrModeRQOperand(), llvm::SparcInstPrinter::printOperand(), llvm::VEInstPrinter::printOperand(), llvm::CSKYInstPrinter::printOperand(), llvm::RISCVInstPrinter::printOperand(), printOperand(), llvm::SystemZInstPrinter::printOperand(), llvm::XtensaInstPrinter::printOperand(), llvm::HexagonInstPrinter::printOperand(), llvm::ARMInstPrinter::printPostIdxRegOperand(), llvm::RISCVInstPrinter::printRegReg(), llvm::ARMInstPrinter::printSORegImmOperand(), llvm::ARMInstPrinter::printSORegRegOperand(), llvm::ARMInstPrinter::printT2AddrModeImm0_1020s4Operand(), llvm::ARMInstPrinter::printT2AddrModeImm8Operand(), llvm::ARMInstPrinter::printT2AddrModeImm8s4Operand(), llvm::ARMInstPrinter::printT2AddrModeSoRegOperand(), llvm::ARMInstPrinter::printT2SOOperand(), llvm::ARMInstPrinter::printThumbAddrModeImm5SOperand(), llvm::ARMInstPrinter::printThumbAddrModeRROperand(), llvm::RISCVInstPrinter::printVMaskReg(), llvm::RISCVInstPrinter::printZeroOffsetMemOp(), and llvm::HexagonMCInstrInfo::subInstWouldBeExtended().

◆ getSFPImm()

uint32_t llvm::MCOperand::getSFPImm ( ) const
inline

Definition at line 90 of file MCInst.h.

References assert(), isSFPImm(), and SFPImmVal.

Referenced by print().

◆ isBareSymbolRef()

bool MCOperand::isBareSymbolRef ( ) const

◆ isDFPImm()

bool llvm::MCOperand::isDFPImm ( ) const
inline

◆ isExpr()

bool llvm::MCOperand::isExpr ( ) const
inline

Definition at line 65 of file MCInst.h.

Referenced by llvm::adjustPqBits(), llvm::HexagonMCInstrInfo::deriveExtender(), llvm::MCStreamer::emitInstruction(), llvm::HexagonMCELFStreamer::EmitSymbol(), llvm::CSKYMCCodeEmitter::getBareSymbolOpValue(), llvm::CSKYMCCodeEmitter::getBranchSymbolOpValue(), llvm::MipsMCCodeEmitter::getBranchTarget21OpValue(), llvm::MipsMCCodeEmitter::getBranchTarget21OpValueMM(), llvm::MipsMCCodeEmitter::getBranchTarget26OpValue(), llvm::MipsMCCodeEmitter::getBranchTarget26OpValueMM(), llvm::MipsMCCodeEmitter::getBranchTarget7OpValueMM(), getBranchTargetOpValue(), llvm::MipsMCCodeEmitter::getBranchTargetOpValue(), llvm::MipsMCCodeEmitter::getBranchTargetOpValue1SImm16(), llvm::MipsMCCodeEmitter::getBranchTargetOpValueLsl2MMR6(), llvm::MipsMCCodeEmitter::getBranchTargetOpValueMM(), llvm::MipsMCCodeEmitter::getBranchTargetOpValueMMPC10(), llvm::MipsMCCodeEmitter::getBranchTargetOpValueMMR6(), llvm::CSKYMCCodeEmitter::getCallSymbolOpValue(), llvm::CSKYMCCodeEmitter::getConstpoolSymbolOpValue(), llvm::CSKYMCCodeEmitter::getDataSymbolOpValue(), llvm::PPCMCCodeEmitter::getDispRI34PCRelEncoding(), getExpr(), llvm::HexagonMCInstrInfo::getExtendableOperand(), llvm::CSKYMCCodeEmitter::getImmOpValue(), llvm::MipsMCCodeEmitter::getJumpOffset16OpValue(), llvm::MipsMCCodeEmitter::getJumpTargetOpValue(), llvm::MipsMCCodeEmitter::getJumpTargetOpValueMM(), llvm::MipsMCCodeEmitter::getMachineOpValue(), llvm::MipsMCCodeEmitter::getSimm18Lsl3Encoding(), llvm::MipsMCCodeEmitter::getSimm19Lsl2Encoding(), llvm::MipsMCCodeEmitter::getUImm5Lsl2Encoding(), llvm::mca::hashMCOperand(), isBareSymbolRef(), llvm::isPartOfGOTToPCRelPair(), llvm::HexagonMCInstrInfo::minConstant(), optimizeToShortImmediateForm(), print(), llvm::AArch64InstPrinter::printAddSubImm(), llvm::ARMInstPrinter::printAdrLabelOperand(), llvm::AArch64InstPrinter::printAMIndexedWB(), llvm::HexagonInstPrinter::printBrtarget(), llvm::CSKYInstPrinter::printConstpool(), llvm::PPCInstPrinter::printInst(), llvm::X86IntelInstPrinter::printMemOffset(), llvm::X86ATTInstPrinter::printMemOffset(), printMemoryImmediateOffset(), llvm::X86IntelInstPrinter::printMemReference(), llvm::X86ATTInstPrinter::printMemReference(), llvm::SparcInstPrinter::printOperand(), llvm::VEInstPrinter::printOperand(), llvm::CSKYInstPrinter::printOperand(), llvm::RISCVInstPrinter::printOperand(), printOperand(), llvm::SystemZInstPrinter::printOperand(), llvm::XtensaInstPrinter::printOperand(), llvm::HexagonInstPrinter::printOperand(), llvm::ARMInstPrinter::printThumbLdrLabelOperand(), llvm::AArch64InstPrinter::printUImm12Offset(), and setExpr().

◆ isImm()

bool llvm::MCOperand::isImm ( ) const
inline

Definition at line 62 of file MCInst.h.

Referenced by llvm::adjustPqBits(), llvm::HexagonMCInstrInfo::deriveExtender(), evaluateAsConstantImm(), evaluateMemOpAddrForAddrMode3(), evaluateMemOpAddrForAddrMode5(), evaluateMemOpAddrForAddrMode5FP16(), evaluateMemOpAddrForAddrMode_i12(), evaluateMemOpAddrForAddrModeT2_i8s4(), evaluateMemOpAddrForAddrModeT2_pc(), llvm::X86_MC::X86MCInstrAnalysis::evaluateMemoryOperandAddress(), llvm::PPCMCCodeEmitter::getAbsCondBrEncoding(), llvm::PPCMCCodeEmitter::getAbsDirectBrEncoding(), llvm::CSKYMCCodeEmitter::getBranchSymbolOpValue(), llvm::MipsMCCodeEmitter::getBranchTarget21OpValue(), llvm::MipsMCCodeEmitter::getBranchTarget21OpValueMM(), llvm::MipsMCCodeEmitter::getBranchTarget26OpValue(), llvm::MipsMCCodeEmitter::getBranchTarget26OpValueMM(), llvm::MipsMCCodeEmitter::getBranchTarget7OpValueMM(), getBranchTargetOpValue(), llvm::MipsMCCodeEmitter::getBranchTargetOpValue(), llvm::MipsMCCodeEmitter::getBranchTargetOpValue1SImm16(), llvm::MipsMCCodeEmitter::getBranchTargetOpValueLsl2MMR6(), llvm::MipsMCCodeEmitter::getBranchTargetOpValueMM(), llvm::MipsMCCodeEmitter::getBranchTargetOpValueMMPC10(), llvm::MipsMCCodeEmitter::getBranchTargetOpValueMMR6(), llvm::PPCMCCodeEmitter::getCondBrEncoding(), llvm::PPCMCCodeEmitter::getDirectBrEncoding(), llvm::PPCMCCodeEmitter::getDispRIEncoding(), llvm::PPCMCCodeEmitter::getDispRIHashEncoding(), llvm::PPCMCCodeEmitter::getDispRIX16Encoding(), llvm::PPCMCCodeEmitter::getDispRIXEncoding(), llvm::PPCMCCodeEmitter::getDispSPE2Encoding(), llvm::PPCMCCodeEmitter::getDispSPE4Encoding(), llvm::PPCMCCodeEmitter::getDispSPE8Encoding(), llvm::HexagonMCInstrInfo::getExtendableOperand(), getImm(), llvm::PPCMCCodeEmitter::getImm16Encoding(), llvm::PPCMCCodeEmitter::getImm34Encoding(), llvm::CSKYMCCodeEmitter::getImmOpValue(), llvm::CSKYMCCodeEmitter::getImmOpValueIDLY(), llvm::CSKYMCCodeEmitter::getImmOpValueMSBSize(), llvm::CSKYMCCodeEmitter::getImmShiftOpValue(), llvm::AArch64Disassembler::getInstruction(), llvm::MipsMCCodeEmitter::getJumpOffset16OpValue(), llvm::MipsMCCodeEmitter::getJumpTargetOpValue(), llvm::MipsMCCodeEmitter::getJumpTargetOpValueMM(), llvm::CSKYMCCodeEmitter::getMachineOpValue(), llvm::MipsMCCodeEmitter::getMachineOpValue(), llvm::PPCMCCodeEmitter::getMachineOpValue(), llvm::HexagonMCCodeEmitter::getMachineOpValue(), llvm::X86_MC::X86MCInstrAnalysis::getMemoryOperandRelocationOffset(), llvm::CSKYMCCodeEmitter::getOImmOpValue(), llvm::MipsMCCodeEmitter::getSimm18Lsl3Encoding(), llvm::MipsMCCodeEmitter::getSimm19Lsl2Encoding(), llvm::MipsMCCodeEmitter::getSimm23Lsl2Encoding(), llvm::MipsMCCodeEmitter::getSImm3Lsa2Value(), llvm::MipsMCCodeEmitter::getSImm9AddiuspValue(), llvm::MipsMCCodeEmitter::getUImm5Lsl2Encoding(), llvm::MipsMCCodeEmitter::getUImm6Lsl2Encoding(), HasConditionalBranch(), llvm::mca::hashMCOperand(), llvm::HexagonMCInstrInfo::isBundle(), llvm::HexagonMCInstrInfo::isConstExtended(), llvm::LowerARMMachineInstrToMCInst(), LowerLargeShift(), matchAliasCondition(), llvm::X86::optimizeShiftRotateWithImmediateOne(), optimizeToShortImmediateForm(), print(), llvm::AArch64InstPrinter::printAddSubImm(), llvm::AArch64InstPrinter::printAMIndexedWB(), llvm::ARMInstPrinter::printBitfieldInvMaskImmOperand(), llvm::RISCVInstPrinter::printBranchOperand(), llvm::CSKYInstPrinter::printConstpool(), llvm::CSKYInstPrinter::printCSKYSymbolOperand(), llvm::CSKYInstPrinter::printDataSymbol(), llvm::AArch64InstPrinter::printInst(), llvm::X86IntelInstPrinter::printMemOffset(), llvm::X86ATTInstPrinter::printMemOffset(), llvm::BPFInstPrinter::printMemOperand(), llvm::SparcInstPrinter::printMemOperand(), printMemoryImmediateOffset(), llvm::X86IntelInstPrinter::printMemReference(), llvm::X86ATTInstPrinter::printMemReference(), llvm::SparcInstPrinter::printOperand(), llvm::VEInstPrinter::printOperand(), llvm::CSKYInstPrinter::printOperand(), llvm::RISCVInstPrinter::printOperand(), printOperand(), llvm::SystemZInstPrinter::printOperand(), llvm::XtensaInstPrinter::printOperand(), llvm::AArch64InstPrinter::printSVCROp(), llvm::ARMInstPrinter::printT2SOOperand(), llvm::AArch64InstPrinter::printUImm12Offset(), setImm(), and llvm::WebAssemblyAsmTypeCheck::typeCheck().

◆ isInst()

bool llvm::MCOperand::isInst ( ) const
inline

Definition at line 66 of file MCInst.h.

Referenced by getInst(), llvm::mca::hashMCOperand(), print(), and setInst().

◆ isReg()

bool llvm::MCOperand::isReg ( ) const
inline

Definition at line 61 of file MCInst.h.

Referenced by addOps(), llvm::adjustPqBits(), checkWriteLane(), llvm::AMDGPUDisassembler::decodeVOPDDstYOp(), evaluateMemOpAddrForAddrMode3(), evaluateMemOpAddrForAddrMode5(), evaluateMemOpAddrForAddrMode5FP16(), evaluateMemOpAddrForAddrMode_i12(), evaluateMemOpAddrForAddrModeT2_i8s4(), llvm::PPCMCCodeEmitter::getAbsCondBrEncoding(), llvm::PPCMCCodeEmitter::getAbsDirectBrEncoding(), llvm::PPCMCCodeEmitter::getCondBrEncoding(), llvm::PPCMCCodeEmitter::getDirectBrEncoding(), llvm::PPCMCCodeEmitter::getImm16Encoding(), llvm::PPCMCCodeEmitter::getImm34Encoding(), llvm::CSKYMCCodeEmitter::getMachineOpValue(), llvm::MipsMCCodeEmitter::getMachineOpValue(), llvm::PPCMCCodeEmitter::getMachineOpValue(), llvm::HexagonMCCodeEmitter::getMachineOpValue(), llvm::HexagonMCInstrInfo::getNewValueOperand(), llvm::HexagonMCInstrInfo::getNewValueOperand2(), getReg(), llvm::PPCMCCodeEmitter::getTLSRegEncoding(), HasConditionalBranch(), llvm::mca::hashMCOperand(), hasShortDelaySlot(), llvm::HexagonAsmPrinter::HexagonProcessInstruction(), llvm::ARM_MC::isCPSRDefined(), llvm::HexagonMCInstrInfo::isOrderedDuplexPair(), llvm::HexagonMCInstrInfo::isPredRegister(), matchAliasCondition(), print(), llvm::ARMInstPrinter::printAddrMode2Operand(), llvm::ARMInstPrinter::printAddrMode3Operand(), llvm::ARMInstPrinter::printAddrMode5FP16Operand(), llvm::ARMInstPrinter::printAddrMode5Operand(), llvm::ARMInstPrinter::printAddrModeImm12Operand(), llvm::LoongArchInstPrinter::printAtomicMemOp(), llvm::CSKYInstPrinter::printFPR(), llvm::AArch64InstPrinter::printMatrix(), llvm::AArch64InstPrinter::printMatrixTile(), llvm::AArch64InstPrinter::printMatrixTileVector(), llvm::BPFInstPrinter::printMemOperand(), llvm::SparcInstPrinter::printMemOperand(), printMemoryBaseRegister(), llvm::LanaiInstPrinter::printMemRrOperand(), llvm::SparcInstPrinter::printOperand(), llvm::VEInstPrinter::printOperand(), llvm::CSKYInstPrinter::printOperand(), llvm::RISCVInstPrinter::printOperand(), printOperand(), llvm::SystemZInstPrinter::printOperand(), llvm::XtensaInstPrinter::printOperand(), llvm::HexagonInstPrinter::printOperand(), llvm::RISCVInstPrinter::printRegReg(), llvm::ARMInstPrinter::printT2AddrModeImm8s4Operand(), llvm::ARMInstPrinter::printThumbAddrModeImm5SOperand(), llvm::ARMInstPrinter::printThumbAddrModeRROperand(), llvm::RISCVInstPrinter::printVMaskReg(), llvm::RISCVInstPrinter::printZeroOffsetMemOp(), and setReg().

◆ isSFPImm()

bool llvm::MCOperand::isSFPImm ( ) const
inline

Definition at line 63 of file MCInst.h.

Referenced by getSFPImm(), llvm::mca::hashMCOperand(), print(), and setSFPImm().

◆ isValid()

bool llvm::MCOperand::isValid ( ) const
inline

◆ print()

void MCOperand::print ( raw_ostream OS,
const MCRegisterInfo RegInfo = nullptr 
) const

◆ setDFPImm()

void llvm::MCOperand::setDFPImm ( uint64_t  Val)
inline

Definition at line 105 of file MCInst.h.

References assert(), FPImmVal, and isDFPImm().

◆ setExpr()

void llvm::MCOperand::setExpr ( const MCExpr Val)
inline

Definition at line 119 of file MCInst.h.

References assert(), ExprVal, and isExpr().

◆ setFPImm()

void llvm::MCOperand::setFPImm ( double  Val)
inline

Definition at line 109 of file MCInst.h.

References assert(), FPImmVal, and isDFPImm().

◆ setImm()

void llvm::MCOperand::setImm ( int64_t  Val)
inline

◆ setInst()

void llvm::MCOperand::setInst ( const MCInst Val)
inline

Definition at line 129 of file MCInst.h.

References assert(), InstVal, and isInst().

Referenced by llvm::HexagonMCInstrInfo::replaceDuplex().

◆ setReg()

void llvm::MCOperand::setReg ( unsigned  Reg)
inline

Set the register number.

Definition at line 75 of file MCInst.h.

References assert(), isReg(), Reg, and RegVal.

Referenced by llvm::HexagonAsmPrinter::HexagonProcessInstruction().

◆ setSFPImm()

void llvm::MCOperand::setSFPImm ( uint32_t  Val)
inline

Definition at line 95 of file MCInst.h.

References assert(), isSFPImm(), and SFPImmVal.

Member Data Documentation

◆ ExprVal

const MCExpr* llvm::MCOperand::ExprVal

Definition at line 53 of file MCInst.h.

Referenced by getExpr(), and setExpr().

◆ FPImmVal

uint64_t llvm::MCOperand::FPImmVal

Definition at line 52 of file MCInst.h.

Referenced by getDFPImm(), setDFPImm(), and setFPImm().

◆ ImmVal

int64_t llvm::MCOperand::ImmVal

Definition at line 50 of file MCInst.h.

Referenced by getImm(), and setImm().

◆ InstVal

const MCInst* llvm::MCOperand::InstVal

Definition at line 54 of file MCInst.h.

Referenced by getInst(), and setInst().

◆ RegVal

unsigned llvm::MCOperand::RegVal

Definition at line 49 of file MCInst.h.

Referenced by getReg(), and setReg().

◆ SFPImmVal

uint32_t llvm::MCOperand::SFPImmVal

Definition at line 51 of file MCInst.h.

Referenced by getSFPImm(), and setSFPImm().


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