LLVM: llvm::PPCMCCodeEmitter Class Reference (original) (raw)
#include "[Target/PowerPC/MCTargetDesc/PPCMCCodeEmitter.h](PPCMCCodeEmitter%5F8h%5Fsource.html)"
| Public Member Functions |
|
|
PPCMCCodeEmitter (const MCInstrInfo &mcii, MCContext &ctx) |
|
PPCMCCodeEmitter (const PPCMCCodeEmitter &)=delete |
| void |
operator= (const PPCMCCodeEmitter &)=delete |
|
~PPCMCCodeEmitter () override=default |
| unsigned |
getDirectBrEncoding (const MCInst &MI, unsigned OpNo, SmallVectorImpl< MCFixup > &Fixups, const MCSubtargetInfo &STI) const |
| unsigned |
getCondBrEncoding (const MCInst &MI, unsigned OpNo, SmallVectorImpl< MCFixup > &Fixups, const MCSubtargetInfo &STI) const |
| unsigned |
getAbsDirectBrEncoding (const MCInst &MI, unsigned OpNo, SmallVectorImpl< MCFixup > &Fixups, const MCSubtargetInfo &STI) const |
| unsigned |
getAbsCondBrEncoding (const MCInst &MI, unsigned OpNo, SmallVectorImpl< MCFixup > &Fixups, const MCSubtargetInfo &STI) const |
| template<MCFixupKind Fixup> |
|
| uint64_t |
getImmEncoding (const MCInst &MI, unsigned OpNo, SmallVectorImpl< MCFixup > &Fixups, const MCSubtargetInfo &STI) const |
| unsigned |
getDispRIEncoding (const MCInst &MI, unsigned OpNo, SmallVectorImpl< MCFixup > &Fixups, const MCSubtargetInfo &STI) const |
| unsigned |
getDispRIXEncoding (const MCInst &MI, unsigned OpNo, SmallVectorImpl< MCFixup > &Fixups, const MCSubtargetInfo &STI) const |
| unsigned |
getDispRIX16Encoding (const MCInst &MI, unsigned OpNo, SmallVectorImpl< MCFixup > &Fixups, const MCSubtargetInfo &STI) const |
| unsigned |
getDispRIHashEncoding (const MCInst &MI, unsigned OpNo, SmallVectorImpl< MCFixup > &Fixups, const MCSubtargetInfo &STI) const |
| uint64_t |
getDispRI34PCRelEncoding (const MCInst &MI, unsigned OpNo, SmallVectorImpl< MCFixup > &Fixups, const MCSubtargetInfo &STI) const |
| uint64_t |
getDispRI34Encoding (const MCInst &MI, unsigned OpNo, SmallVectorImpl< MCFixup > &Fixups, const MCSubtargetInfo &STI) const |
| unsigned |
getDispSPE8Encoding (const MCInst &MI, unsigned OpNo, SmallVectorImpl< MCFixup > &Fixups, const MCSubtargetInfo &STI) const |
| unsigned |
getDispSPE4Encoding (const MCInst &MI, unsigned OpNo, SmallVectorImpl< MCFixup > &Fixups, const MCSubtargetInfo &STI) const |
| unsigned |
getDispSPE2Encoding (const MCInst &MI, unsigned OpNo, SmallVectorImpl< MCFixup > &Fixups, const MCSubtargetInfo &STI) const |
| unsigned |
getTLSRegEncoding (const MCInst &MI, unsigned OpNo, SmallVectorImpl< MCFixup > &Fixups, const MCSubtargetInfo &STI) const |
| unsigned |
getTLSCallEncoding (const MCInst &MI, unsigned OpNo, SmallVectorImpl< MCFixup > &Fixups, const MCSubtargetInfo &STI) const |
| unsigned |
get_crbitm_encoding (const MCInst &MI, unsigned OpNo, SmallVectorImpl< MCFixup > &Fixups, const MCSubtargetInfo &STI) const |
| unsigned |
getVSRpEvenEncoding (const MCInst &MI, unsigned OpNo, SmallVectorImpl< MCFixup > &Fixups, const MCSubtargetInfo &STI) const |
| uint64_t |
getMachineOpValue (const MCInst &MI, const MCOperand &MO, SmallVectorImpl< MCFixup > &Fixups, const MCSubtargetInfo &STI) const |
|
getMachineOpValue - Return binary encoding of operand. |
| uint64_t |
getBinaryCodeForInstr (const MCInst &MI, SmallVectorImpl< MCFixup > &Fixups, const MCSubtargetInfo &STI) const |
| void |
encodeInstruction (const MCInst &MI, SmallVectorImpl< char > &CB, SmallVectorImpl< MCFixup > &Fixups, const MCSubtargetInfo &STI) const override |
|
Encode the given Inst to bytes and append to CB. |
| unsigned |
getInstSizeInBytes (const MCInst &MI) const |
| bool |
isPrefixedInstruction (const MCInst &MI) const |
| bool |
isNoTOCCallInstr (const MCInst &MI) const |
|
Check if Opcode corresponds to a call instruction that should be marked with the NOTOC relocation. |
| Public Member Functions inherited from llvm::MCCodeEmitter |
|
|
MCCodeEmitter (const MCCodeEmitter &)=delete |
| MCCodeEmitter & |
operator= (const MCCodeEmitter &)=delete |
| virtual |
~MCCodeEmitter () |
| virtual void |
reset () |
|
Lifetime management. |
Definition at line 25 of file PPCMCCodeEmitter.h.
◆ PPCMCCodeEmitter() [2/2]
◆ ~PPCMCCodeEmitter()
| llvm::PPCMCCodeEmitter::~PPCMCCodeEmitter ( ) |
overridedefault |
References MI.
◆ encodeInstruction()
◆ get_crbitm_encoding()
◆ getAbsCondBrEncoding()
◆ getAbsDirectBrEncoding()
◆ getBinaryCodeForInstr()
◆ getCondBrEncoding()
◆ getDirectBrEncoding()
◆ getDispRI34Encoding()
◆ getDispRI34PCRelEncoding()
Definition at line 287 of file PPCMCCodeEmitter.cpp.
References llvm::MCBinaryExpr::Add, llvm::addFixup(), assert(), llvm::MCExpr::Binary, llvm::cast(), llvm::MCExpr::Constant, llvm::PPC::fixup_ppc_pcrel34, llvm::MCOperand::getExpr(), llvm::MCExpr::getKind(), llvm::MCBinaryExpr::getLHS(), getMachineOpValue(), llvm::MCBinaryExpr::getOpcode(), llvm::MCBinaryExpr::getRHS(), llvm::getSpecifier(), llvm::MCSymbolRefExpr::getSpecifier(), llvm::is_contained(), llvm::MCOperand::isExpr(), llvm::isInt(), llvm_unreachable, MI, llvm::PPC::S_GOT_PCREL, llvm::PPC::S_GOT_TLSGD_PCREL, llvm::PPC::S_GOT_TLSLD_PCREL, llvm::PPC::S_GOT_TPREL_PCREL, llvm::PPC::S_PCREL, std::swap(), and llvm::MCExpr::SymbolRef.
◆ getDispRIEncoding()
◆ getDispRIHashEncoding()
◆ getDispRIX16Encoding()
◆ getDispRIXEncoding()
◆ getDispSPE2Encoding()
◆ getDispSPE4Encoding()
◆ getDispSPE8Encoding()
◆ getImmEncoding()
◆ getInstSizeInBytes()
◆ getMachineOpValue()
getMachineOpValue - Return binary encoding of operand.
If the machine operand requires relocation, record the relocation and return zero.
Definition at line 456 of file PPCMCCodeEmitter.cpp.
References assert(), llvm::MCOperand::getImm(), getOpIdxForMO(), llvm::MCOperand::getReg(), llvm::PPC::getRegNumForOperand(), llvm::MCOperand::isImm(), llvm::MCOperand::isReg(), and MI.
Referenced by getAbsCondBrEncoding(), getAbsDirectBrEncoding(), getCondBrEncoding(), getDirectBrEncoding(), getDispRI34Encoding(), getDispRI34PCRelEncoding(), getDispRIEncoding(), getDispRIX16Encoding(), getDispRIXEncoding(), getDispSPE2Encoding(), getDispSPE4Encoding(), getDispSPE8Encoding(), getImmEncoding(), getTLSRegEncoding(), and getVSRpEvenEncoding().
◆ getTLSCallEncoding()
◆ getTLSRegEncoding()
◆ getVSRpEvenEncoding()
◆ isNoTOCCallInstr()
◆ isPrefixedInstruction()
◆ operator=()
The documentation for this class was generated from the following files: