|
LLVM
4.0.0
|
#include <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 |
| A stream that comments can be emitted to if desired. More... | |
| const MCAsmInfo & | MAI |
| const MCInstrInfo & | MII |
| const MCRegisterInfo & | MRI |
| bool | UseMarkup |
| True if we are printing marked up assembly. More... | |
| bool | PrintImmHex |
| True if we are printing immediates as hex. More... | |
| HexStyle::Style | PrintHexStyle |
| Which style to use for printing hexadecimal values. More... | |
Definition at line 26 of file WebAssemblyInstPrinter.h.
| WebAssemblyInstPrinter::WebAssemblyInstPrinter | ( | const MCAsmInfo & | MAI, |
| const MCInstrInfo & | MII, | ||
| const MCRegisterInfo & | MRI | ||
| ) |
Definition at line 35 of file WebAssemblyInstPrinter.cpp.
|
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, Desc, llvm::bitc::END_BLOCK, llvm::MCInstrInfo::get(), llvm::MCOperand::getImm(), llvm::MCInst::getNumOperands(), llvm::MCInstrDesc::getNumOperands(), llvm::MCInst::getOpcode(), llvm::MCInst::getOperand(), i, llvm::SmallSet< T, N, C >::insert(), llvm::MCInstrDesc::isVariadic(), llvm::MCInstPrinter::MII, llvm::MCInstrDesc::NumOperands, llvm::WebAssembly::OPERAND_BASIC_BLOCK, llvm::MCOperandInfo::OperandType, llvm::MCInstrDesc::OpInfo, llvm::SmallVectorTemplateBase< T, isPodLike >::pop_back(), llvm::SmallVectorImpl< T >::pop_back_val(), llvm::MCInstPrinter::printAnnotation(), printInstruction(), printOperand(), llvm::SmallVectorTemplateBase< T, isPodLike >::push_back(), llvm::SmallVectorTemplateCommon< T, typename >::rbegin(), llvm::MCInstrDesc::TSFlags, llvm::utostr(), and llvm::WebAssemblyII::VariableOpImmediateIsLabel.
| 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 138 of file WebAssemblyInstPrinter.cpp.
References llvm::lltok::APFloat, assert(), Desc, llvm::MCInstrInfo::get(), llvm::MCOperand::getExpr(), llvm::MCOperand::getFPImm(), llvm::MCOperand::getImm(), llvm::MCInstrDesc::getNumOperands(), llvm::MCInst::getOpcode(), llvm::MCInst::getOperand(), llvm::MCOperand::getReg(), llvm::WebAssemblyFunctionInfo::getWARegStackId(), 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(), llvm::MCInstrDesc::TSFlags, llvm::WebAssemblyFunctionInfo::UnusedReg, and llvm::WebAssemblyII::VariableOpIsImmediate.
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 196 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 206 of file WebAssemblyInstPrinter.cpp.
References llvm::WebAssembly::B16x8, llvm::WebAssembly::B32x4, llvm::WebAssembly::B8x16, llvm::WebAssembly::F32, llvm::WebAssembly::F32x4, llvm::WebAssembly::F64, llvm::MCOperand::getImm(), llvm::MCInst::getOperand(), llvm::WebAssembly::I16x8, llvm::WebAssembly::I32, llvm::WebAssembly::I32x4, llvm::WebAssembly::I64, llvm::WebAssembly::I8x16, and llvm::WebAssembly::Void.
1.8.6