LLVM  4.0.0
Public Member Functions | List of all members
llvm::MIPrinter Class Reference

This class prints out the machine instructions using the MIR serialization format. More...

Public Member Functions

 MIPrinter (raw_ostream &OS, ModuleSlotTracker &MST, const DenseMap< const uint32_t *, unsigned > &RegisterMaskIds, const DenseMap< int, FrameIndexOperand > &StackObjectOperandMapping)
 
void print (const MachineBasicBlock &MBB)
 
void print (const MachineInstr &MI)
 
void printMBBReference (const MachineBasicBlock &MBB)
 
void printIRBlockReference (const BasicBlock &BB)
 
void printIRValueReference (const Value &V)
 
void printStackObjectReference (int FrameIndex)
 
void printOffset (int64_t Offset)
 
void printTargetFlags (const MachineOperand &Op)
 
void print (const MachineOperand &Op, const TargetRegisterInfo *TRI, unsigned I, bool ShouldPrintRegisterTies, LLT TypeToPrint, bool IsDef=false)
 
void print (const MachineMemOperand &Op)
 
void print (const MCCFIInstruction &CFI, const TargetRegisterInfo *TRI)
 

Detailed Description

This class prints out the machine instructions using the MIR serialization format.

Definition at line 102 of file MIRPrinter.cpp.

Constructor & Destructor Documentation

llvm::MIPrinter::MIPrinter ( raw_ostream OS,
ModuleSlotTracker MST,
const DenseMap< const uint32_t *, unsigned > &  RegisterMaskIds,
const DenseMap< int, FrameIndexOperand > &  StackObjectOperandMapping 
)
inline

Definition at line 109 of file MIRPrinter.cpp.

Member Function Documentation

void MIPrinter::print ( const MachineBasicBlock MBB)
void MIPrinter::print ( const MachineInstr MI)
void MIPrinter::print ( const MachineOperand Op,
const TargetRegisterInfo TRI,
unsigned  I,
bool  ShouldPrintRegisterTies,
LLT  TypeToPrint,
bool  IsDef = false 
)

Definition at line 775 of file MIRPrinter.cpp.

References E, llvm::DenseMapBase< DerivedT, KeyT, ValueT, KeyInfoT, BucketT >::end(), llvm::DenseMapBase< DerivedT, KeyT, ValueT, KeyInfoT, BucketT >::find(), llvm::MachineInstr::findTiedOperandIdx(), llvm::BlockAddress::getBasicBlock(), llvm::MachineOperand::getBlockAddress(), llvm::MachineOperand::getCFIIndex(), llvm::MachineOperand::getCImm(), llvm::MachineOperand::getFPImm(), llvm::MachineFunction::getFrameInstructions(), llvm::BlockAddress::getFunction(), llvm::MachineOperand::getGlobal(), llvm::MachineOperand::getImm(), llvm::MachineOperand::getIndex(), llvm::MachineOperand::getIntrinsicID(), llvm::TargetMachine::getIntrinsicInfo(), llvm::MachineOperand::getMBB(), llvm::MachineOperand::getMCSymbol(), llvm::MachineOperand::getMetadata(), llvm::TargetIntrinsicInfo::getName(), llvm::Intrinsic::getName(), llvm::MCRegisterInfo::getNumRegs(), llvm::MachineOperand::getOffset(), llvm::MachineInstr::getParent(), llvm::MachineBasicBlock::getParent(), llvm::MachineOperand::getParent(), llvm::MachineOperand::getPredicate(), llvm::CmpInst::getPredicateName(), llvm::MachineOperand::getReg(), llvm::MachineOperand::getRegLiveOut(), llvm::MachineOperand::getRegMask(), llvm::TargetRegisterInfo::getRegMaskNames(), llvm::MachineOperand::getSubReg(), llvm::TargetRegisterInfo::getSubRegIndexName(), llvm::MachineOperand::getSymbolName(), llvm::MachineFunction::getTarget(), getTargetIndexName(), llvm::MachineOperand::getType(), llvm::MachineOperand::isDead(), llvm::MachineOperand::isDebug(), llvm::MachineOperand::isDef(), llvm::MachineOperand::isEarlyClobber(), llvm::MachineOperand::isImplicit(), llvm::MachineOperand::isInternalRead(), llvm::CmpInst::isIntPredicate(), llvm::MachineOperand::isKill(), llvm::MachineOperand::isTied(), llvm::MachineOperand::isUndef(), llvm::LLT::isValid(), llvm_unreachable, llvm::MachineOperand::MO_BlockAddress, llvm::MachineOperand::MO_CFIIndex, llvm::MachineOperand::MO_CImmediate, llvm::MachineOperand::MO_ConstantPoolIndex, llvm::MachineOperand::MO_ExternalSymbol, llvm::MachineOperand::MO_FPImmediate, llvm::MachineOperand::MO_FrameIndex, llvm::MachineOperand::MO_GlobalAddress, llvm::MachineOperand::MO_Immediate, llvm::MachineOperand::MO_IntrinsicID, llvm::MachineOperand::MO_JumpTableIndex, llvm::MachineOperand::MO_MachineBasicBlock, llvm::MachineOperand::MO_MCSymbol, llvm::MachineOperand::MO_Metadata, llvm::MachineOperand::MO_Predicate, llvm::MachineOperand::MO_Register, llvm::MachineOperand::MO_RegisterLiveOut, llvm::MachineOperand::MO_RegisterMask, llvm::MachineOperand::MO_TargetIndex, llvm::None, llvm::Intrinsic::num_intrinsics, print(), llvm::Metadata::printAsOperand(), llvm::Value::printAsOperand(), printIRBlockReference(), llvm::printLLVMNameWithoutPrefix(), printMBBReference(), printOffset(), printReg(), printStackObjectReference(), printTargetFlags(), and TII.

void MIPrinter::print ( const MachineMemOperand Op)
void MIPrinter::print ( const MCCFIInstruction CFI,
const TargetRegisterInfo TRI 
)
void MIPrinter::printIRBlockReference ( const BasicBlock BB)
void MIPrinter::printIRValueReference ( const Value V)
void MIPrinter::printMBBReference ( const MachineBasicBlock MBB)
void MIPrinter::printOffset ( int64_t  Offset)

Definition at line 695 of file MIRPrinter.cpp.

References Offset.

Referenced by print().

void MIPrinter::printStackObjectReference ( int  FrameIndex)
void MIPrinter::printTargetFlags ( const MachineOperand Op)

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