LLVM
8.0.1
|
#include "Target/WebAssembly/InstPrinter/WebAssemblyInstPrinter.h"
Static Public Member Functions | |
static const char * | getRegisterName (unsigned RegNo) |
Additional Inherited Members | |
Protected Member Functions inherited from llvm::MCInstPrinter | |
void | printAnnotation (raw_ostream &OS, StringRef Annot) |
Utility function for printing annotations. More... | |
Protected Attributes inherited from llvm::MCInstPrinter | |
raw_ostream * | CommentStream = nullptr |
A stream that comments can be emitted to if desired. More... | |
const MCAsmInfo & | MAI |
const MCInstrInfo & | MII |
const MCRegisterInfo & | MRI |
bool | UseMarkup = false |
True if we are printing marked up assembly. More... | |
bool | PrintImmHex = false |
True if we are printing immediates as hex. More... | |
HexStyle::Style | PrintHexStyle = HexStyle::C |
Which style to use for printing hexadecimal values. More... | |
Definition at line 27 of file WebAssemblyInstPrinter.h.
WebAssemblyInstPrinter::WebAssemblyInstPrinter | ( | const MCAsmInfo & | MAI, |
const MCInstrInfo & | MII, | ||
const MCRegisterInfo & | MRI | ||
) |
Definition at line 35 of file WebAssemblyInstPrinter.cpp.
void WebAssemblyInstPrinter::printBrList | ( | const MCInst * | MI, |
unsigned | OpNo, | ||
raw_ostream & | O | ||
) |
Definition at line 253 of file WebAssemblyInstPrinter.cpp.
References E, llvm::MCOperand::getImm(), llvm::MCInst::getNumOperands(), llvm::MCInst::getOperand(), and I.
|
overridevirtual |
Print the specified MCInst to the specified raw_ostream.
Implements llvm::MCInstPrinter.
Definition at line 47 of file WebAssemblyInstPrinter.cpp.
References llvm::MCInstPrinter::CommentStream, llvm::Depth, llvm::SmallVectorBase::empty(), llvm::bitc::END_BLOCK, llvm::MCInstrInfo::get(), llvm::MCOperand::getImm(), llvm::MCInst::getNumOperands(), llvm::MCInstrDesc::getNumOperands(), llvm::MCInst::getOpcode(), llvm::MCInst::getOperand(), llvm::SmallSet< T, N, C >::insert(), llvm::MCOperand::isImm(), llvm::MCInstrDesc::isVariadic(), llvm::AMDGPUISD::LOOP, llvm::MCInstPrinter::MII, llvm::MCInstrDesc::NumOperands, llvm::WebAssembly::OPERAND_BASIC_BLOCK, llvm::MCOperandInfo::OperandType, llvm::MCInstrDesc::OpInfo, llvm::SmallVectorTemplateBase< T, bool >::pop_back(), llvm::SmallVectorImpl< T >::pop_back_val(), llvm::MCInstPrinter::printAnnotation(), printInstruction(), printOperand(), llvm::SmallVectorTemplateBase< T, bool >::push_back(), llvm::SmallVectorTemplateCommon< T, typename >::rbegin(), llvm::SmallVectorBase::size(), and llvm::utostr().
void llvm::WebAssemblyInstPrinter::printInstruction | ( | const MCInst * | MI, |
raw_ostream & | O | ||
) |
Referenced by printInst().
void WebAssemblyInstPrinter::printOperand | ( | const MCInst * | MI, |
unsigned | OpNo, | ||
raw_ostream & | O | ||
) |
Definition at line 218 of file WebAssemblyInstPrinter.cpp.
References llvm::lltok::APFloat, assert(), llvm::MCInstrInfo::get(), llvm::MCOperand::getExpr(), llvm::MCOperand::getFPImm(), llvm::MCOperand::getImm(), llvm::MCInst::getOpcode(), llvm::MCInst::getOperand(), llvm::MCOperand::getReg(), llvm::WebAssemblyFunctionInfo::getWARegStackId(), Info, llvm::MCOperand::isExpr(), llvm::MCOperand::isFPImm(), llvm::MCOperand::isImm(), llvm::MCOperand::isReg(), llvm::MCInstPrinter::MAI, llvm::MCInstPrinter::MII, llvm::WebAssembly::OPERAND_F32IMM, llvm::WebAssembly::OPERAND_F64IMM, llvm::MCOperandInfo::OperandType, llvm::MCInstrDesc::OpInfo, llvm::MCExpr::print(), printRegName(), llvm::toString(), and llvm::WebAssemblyFunctionInfo::UnusedReg.
Referenced by printInst().
|
overridevirtual |
Print the assembler register name.
Reimplemented from llvm::MCInstPrinter.
Definition at line 40 of file WebAssemblyInstPrinter.cpp.
References assert(), and llvm::WebAssemblyFunctionInfo::UnusedReg.
Referenced by printOperand().
void WebAssemblyInstPrinter::printWebAssemblyP2AlignOperand | ( | const MCInst * | MI, |
unsigned | OpNo, | ||
raw_ostream & | O | ||
) |
Definition at line 264 of file WebAssemblyInstPrinter.cpp.
References llvm::WebAssembly::GetDefaultP2Align(), llvm::MCOperand::getImm(), llvm::MCInst::getOpcode(), and llvm::MCInst::getOperand().
void WebAssemblyInstPrinter::printWebAssemblySignatureOperand | ( | const MCInst * | MI, |
unsigned | OpNo, | ||
raw_ostream & | O | ||
) |
Definition at line 273 of file WebAssemblyInstPrinter.cpp.
References llvm::WebAssembly::anyTypeToString(), llvm::MCOperand::getImm(), llvm::MCInst::getOperand(), and llvm::wasm::WASM_TYPE_NORESULT.