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::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::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(), 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(), DecodeDDDDRegisterClass(), DecodeDDDRegisterClass(), DecodeDDRegisterClass(), DecodeDEXT(), DecodeDFPRegsRegisterClass(), DecodeDINS(), DecodeDPairRegisterClass(), DecodeDPairSpacedRegisterClass(), DecodeDPRRegisterClass(), DecodeF128RegisterClass(), DecodeF32RegisterClass(), DecodeFCCRegisterClass(), DecodeFCCRegsRegisterClass(), DecodeFCSRRegisterClass(), DecodeFGR32RegisterClass(), DecodeFGR64RegisterClass(), DecodeFGRCCRegisterClass(), decodeFLPMX(), DecodeFMem(), DecodeFMem2(), DecodeFMem3(), DecodeFMemCop2MMR6(), DecodeFMemCop2R6(), DecodeFMemMMR2(), DecodeForVMRSandVMSR(), DecodeFPR128RegisterClass(), DecodeFPR16RegisterClass(), DecodeFPR32CRegisterClass(), DecodeFPR32RegisterClass(), DecodeFPR64CRegisterClass(), DecodeFPR64RegisterClass(), DecodeFPR8RegisterClass(), DecodeFPRegsRegisterClass(), DecodeGPR32RegisterClass(), DecodeGPR32spRegisterClass(), DecodeGPR64commonRegisterClass(), DecodeGPR64RegisterClass(), DecodeGPR64spRegisterClass(), 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(), DecodeMatrixIndexGPR32_12_15RegisterClass(), DecodeMatrixIndexGPR32_8_11RegisterClass(), 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(), DecodePNRRegisterClass(), DecodePOP35GroupBranchMMR6(), DecodePOP37GroupBranchMMR6(), DecodePOP65GroupBranchMMR6(), DecodePOP75GroupBranchMMR6(), DecodePPR2Mul2RegisterClass(), DecodePPR2RegisterClass(), DecodePPRRegisterClass(), DecodePredicateOperand(), DecodePrefeOpMM(), DecodePRRegsRegisterClass(), DecodeQFPRegsRegisterClass(), DecodeQPRRegisterClass(), DecodeQQQQRegisterClass(), DecodeQQQRegisterClass(), DecodeQQRegisterClass(), decodeRegisterClass(), DecodeRegisterClass(), DecodeRegListOperand(), DecodeRegListOperand16(), DecodeRegSeqOperand(), DecodeRegSeqOperandD1(), DecodeRegSeqOperandD2(), DecodeRegSeqOperandF1(), DecodeRegSeqOperandF2(), decodeRiMemoryValue(), DecodeRRegsRegisterClass(), decodeRrMemoryValue(), decodeRVCInstrRdRs1UImm(), decodeRVCInstrRdSImm(), DecodeSCRRegisterClass(), DecodesFPR128RegisterClass(), DecodesFPR32RegisterClass(), DecodesFPR64_VRegisterClass(), DecodesFPR64RegisterClass(), DecodesGPRRegisterClass(), 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(), DecodeZPR2RegisterClass(), DecodeZPR2StridedRegisterClass(), DecodeZPR3RegisterClass(), DecodeZPR4Mul4RegisterClass(), DecodeZPR4RegisterClass(), DecodeZPR4StridedRegisterClass(), DecodeZPRRegisterClass(), 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 66 of file MCInst.cpp.

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

◆ evaluateAsConstantImm()

bool MCOperand::evaluateAsConstantImm ( int64_t &  Imm) const

Definition at line 48 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(), hasInterruptDelaySlot(), 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(), 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::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(), 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(), 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(), 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: