LLVM
8.0.1
|
Lowers MachineInstr
objects into MCInst
objects.
More...
#include "Target/AVR/AVRMCInstLower.h"
Public Member Functions | |
AVRMCInstLower (MCContext &Ctx, AsmPrinter &Printer) | |
void | lowerInstruction (const MachineInstr &MI, MCInst &OutMI) const |
Lowers a MachineInstr into a MCInst . More... | |
MCOperand | lowerSymbolOperand (const MachineOperand &MO, MCSymbol *Sym) const |
Lowers MachineInstr
objects into MCInst
objects.
Definition at line 26 of file AVRMCInstLower.h.
|
inline |
Definition at line 28 of file AVRMCInstLower.h.
References lowerInstruction(), lowerSymbolOperand(), and MI.
void llvm::AVRMCInstLower::lowerInstruction | ( | const MachineInstr & | MI, |
MCInst & | OutMI | ||
) | const |
Lowers a MachineInstr
into a MCInst
.
Definition at line 63 of file AVRMCInstLower.cpp.
References llvm::MCInst::addOperand(), llvm::MCSymbolRefExpr::create(), llvm::MCOperand::createExpr(), llvm::MCOperand::createImm(), llvm::MCOperand::createReg(), llvm::errs(), llvm::AsmPrinter::GetBlockAddressSymbol(), llvm::AsmPrinter::GetCPISymbol(), llvm::AsmPrinter::GetExternalSymbolSymbol(), llvm::AsmPrinter::GetJTISymbol(), llvm::MachineInstr::getOpcode(), llvm::AsmPrinter::getSymbol(), llvm_unreachable, lowerSymbolOperand(), 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_Register, llvm::MachineOperand::MO_RegisterMask, llvm::MachineInstr::operands(), llvm::MachineInstr::print(), and llvm::MCInst::setOpcode().
Referenced by AVRMCInstLower(), and llvm::AVRAsmPrinter::EmitInstruction().
MCOperand llvm::AVRMCInstLower::lowerSymbolOperand | ( | const MachineOperand & | MO, |
MCSymbol * | Sym | ||
) | const |
Definition at line 27 of file AVRMCInstLower.cpp.
References llvm::AVRMCExpr::create(), llvm::MCConstantExpr::create(), llvm::MCSymbolRefExpr::create(), llvm::MCBinaryExpr::createAdd(), llvm::MCOperand::createExpr(), llvm::MachineOperand::getGlobal(), llvm::MachineOperand::getOffset(), llvm::MachineOperand::getTargetFlags(), llvm::MachineOperand::isGlobal(), llvm::MachineOperand::isJTI(), llvm_unreachable, llvm::AVRII::MO_HI, llvm::AVRII::MO_LO, llvm::AVRII::MO_NEG, llvm::AVRMCExpr::VK_AVR_HI8, llvm::AVRMCExpr::VK_AVR_LO8, llvm::AVRMCExpr::VK_AVR_PM_HI8, and llvm::AVRMCExpr::VK_AVR_PM_LO8.
Referenced by AVRMCInstLower(), and lowerInstruction().