LLVM  8.0.1
Public Member Functions | List of all members
llvm::WebAssemblyMCInstLower Class Reference

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

#include "Target/WebAssembly/WebAssemblyMCInstLower.h"

Public Member Functions

 WebAssemblyMCInstLower (MCContext &ctx, WebAssemblyAsmPrinter &printer)
 
void Lower (const MachineInstr *MI, MCInst &OutMI) const
 

Detailed Description

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

Definition at line 30 of file WebAssemblyMCInstLower.h.

Constructor & Destructor Documentation

◆ WebAssemblyMCInstLower()

llvm::WebAssemblyMCInstLower::WebAssemblyMCInstLower ( MCContext ctx,
WebAssemblyAsmPrinter printer 
)
inline

Definition at line 40 of file WebAssemblyMCInstLower.h.

References MI.

Member Function Documentation

◆ Lower()

void WebAssemblyMCInstLower::Lower ( const MachineInstr MI,
MCInst OutMI 
) const

Definition at line 164 of file WebAssemblyMCInstLower.cpp.

References llvm::MCInst::addOperand(), llvm::WebAssemblyAsmPrinter::addSignature(), assert(), llvm::APFloat::convertToDouble(), llvm::APFloat::convertToFloat(), llvm::MCSymbolRefExpr::create(), llvm::MCOperand::createExpr(), llvm::MCOperand::createFPImm(), llvm::MCOperand::createImm(), llvm::MCOperand::createReg(), llvm::AsmPrinter::createTempSymbol(), llvm::MachineInstr::defs(), llvm::errs(), llvm::MachineInstr::explicit_uses(), llvm::MachineInstr::getDesc(), llvm::MachineOperand::getFPImm(), llvm::MachineOperand::getGlobal(), llvm::MachineOperand::getImm(), llvm::MachineFunction::getInfo(), llvm::MachineOperand::getMCSymbol(), llvm::MachineInstr::getNumOperands(), llvm::MachineOperand::getOffset(), llvm::MachineInstr::getOpcode(), llvm::MachineInstr::getOperand(), llvm::MachineBasicBlock::getParent(), llvm::MachineInstr::getParent(), llvm::MachineOperand::getReg(), llvm::MachineRegisterInfo::getRegClass(), llvm::MachineFunction::getRegInfo(), llvm::MachineOperand::getTargetFlags(), getType(), llvm::MachineOperand::getType(), llvm::Value::getType(), llvm::ConstantFP::getValueAPF(), llvm::GlobalValue::getValueType(), llvm::WebAssemblyFunctionInfo::getWAReg(), Info, llvm::WebAssembly::isCallIndirect(), llvm::Type::isDoubleTy(), llvm::Type::isFloatTy(), llvm::Type::isFunctionTy(), llvm::MachineOperand::isImplicit(), llvm::MachineOperand::isReg(), llvm_unreachable, llvm::MachineOperand::MO_ExternalSymbol, llvm::MachineOperand::MO_FPImmediate, llvm::MachineOperand::MO_GlobalAddress, llvm::MachineOperand::MO_Immediate, llvm::MachineOperand::MO_MachineBasicBlock, llvm::MachineOperand::MO_MCSymbol, llvm::WebAssemblyII::MO_NO_FLAG, llvm::MachineOperand::MO_Register, llvm::WebAssemblyII::MO_SYMBOL_EVENT, llvm::WebAssemblyII::MO_SYMBOL_FUNCTION, llvm::WebAssemblyII::MO_SYMBOL_GLOBAL, llvm::WebAssemblyII::MO_SYMBOL_MASK, MRI, llvm::MCInstrDesc::NumOperands, llvm::WebAssembly::OPERAND_TYPEINDEX, llvm::MCOperandInfo::OperandType, llvm::MCInstrDesc::OpInfo, llvm::SmallVectorTemplateBase< T, bool >::pop_back(), llvm::MachineInstr::print(), llvm::SmallVectorTemplateBase< T, bool >::push_back(), removeRegisterOperands(), llvm::MCInst::setOpcode(), llvm::MCSymbolWasm::setSignature(), llvm::MCSymbolWasm::setType(), llvm::MCSymbolRefExpr::VK_WebAssembly_TYPEINDEX, llvm::wasm::WASM_SYMBOL_TYPE_FUNCTION, and WasmKeepRegisters.

Referenced by llvm::WebAssemblyAsmPrinter::EmitInstruction().


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