LLVM: llvm::M68kMCInstLower Class Reference (original) (raw)

This class is used to lower an MachineInstr into an MCInst. More...

#include "[Target/M68k/M68kMCInstLower.h](M68kMCInstLower%5F8h%5Fsource.html)"

Public Member Functions
M68kMCInstLower (MachineFunction &MF, M68kAsmPrinter &AP)
MCSymbol * GetSymbolFromOperand (const MachineOperand &MO) const
Lower an MO_GlobalAddress or MO_ExternalSymbol operand to an MCSymbol.
MCOperand LowerSymbolOperand (const MachineOperand &MO, MCSymbol *Sym) const
std::optional< MCOperand > LowerOperand (const MachineInstr *MI, const MachineOperand &MO) const
void Lower (const MachineInstr *MI, MCInst &OutMI) const

Detailed Description

Constructor & Destructor Documentation

Member Function Documentation

GetSymbolFromOperand()

Lower an MO_GlobalAddress or MO_ExternalSymbol operand to an MCSymbol.

Definition at line 40 of file M68kMCInstLower.cpp.

References assert(), DL, llvm::StringRef::empty(), llvm::MachineOperand::getGlobal(), llvm::MachineOperand::getMBB(), llvm::Mangler::getNameWithPrefix(), llvm::MachineBasicBlock::getSymbol(), llvm::MachineOperand::getSymbolName(), llvm::MachineOperand::isGlobal(), llvm::MachineOperand::isMBB(), and llvm::MachineOperand::isSymbol().

Referenced by LowerOperand().

Lower()

LowerOperand()

Definition at line 130 of file M68kMCInstLower.cpp.

References llvm::MCOperand::createImm(), llvm::MCOperand::createReg(), llvm::MachineOperand::getBlockAddress(), llvm::MachineOperand::getImm(), llvm::MachineOperand::getIndex(), llvm::MachineOperand::getMCSymbol(), llvm::MachineOperand::getReg(), GetSymbolFromOperand(), llvm::MachineOperand::getType(), llvm::MachineOperand::isImplicit(), llvm_unreachable, LowerSymbolOperand(), MI, llvm::MachineOperand::MO_BlockAddress, llvm::MachineOperand::MO_ConstantPoolIndex, llvm::MachineOperand::MO_ExternalSymbol, llvm::MachineOperand::MO_GlobalAddress, llvm::MachineOperand::MO_Immediate, llvm::MachineOperand::MO_JumpTableIndex, llvm::MachineOperand::MO_MachineBasicBlock, llvm::MachineOperand::MO_MCSymbol, llvm::MachineOperand::MO_Register, and llvm::MachineOperand::MO_RegisterMask.

Referenced by Lower().

LowerSymbolOperand()

Definition at line 74 of file M68kMCInstLower.cpp.

References llvm::MCConstantExpr::create(), llvm::MCSymbolRefExpr::create(), llvm::MCBinaryExpr::createAdd(), llvm::MCOperand::createExpr(), llvm::MachineOperand::getOffset(), llvm::MachineOperand::getTargetFlags(), llvm::MachineOperand::isJTI(), llvm::MachineOperand::isMBB(), llvm_unreachable, llvm::M68kII::MO_ABSOLUTE_ADDRESS, llvm::M68kII::MO_GOT, llvm::M68kII::MO_GOTOFF, llvm::M68kII::MO_GOTPCREL, llvm::M68kII::MO_NO_FLAG, llvm::M68kII::MO_PC_RELATIVE_ADDRESS, llvm::M68kII::MO_PLT, llvm::M68kII::MO_TLSGD, llvm::M68kII::MO_TLSIE, llvm::M68kII::MO_TLSLD, llvm::M68kII::MO_TLSLDM, llvm::M68kII::MO_TLSLE, llvm::M68k::S_GOT, llvm::M68k::S_GOTOFF, llvm::M68k::S_GOTPCREL, llvm::M68k::S_GOTTPOFF, llvm::M68k::S_None, llvm::M68k::S_PLT, llvm::M68k::S_TLSGD, llvm::M68k::S_TLSLD, llvm::M68k::S_TLSLDM, and llvm::M68k::S_TPOFF.

Referenced by LowerOperand().


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