LLVM API Documentation

Public Member Functions | Static Public Member Functions
llvm::HexagonAsmPrinter Class Reference

#include <HexagonAsmPrinter.h>

Inheritance diagram for llvm::HexagonAsmPrinter:
Inheritance graph
[legend]
Collaboration diagram for llvm::HexagonAsmPrinter:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 HexagonAsmPrinter (TargetMachine &TM, MCStreamer &Streamer)
const char * getPassName () const override
bool isBlockOnlyReachableByFallthrough (const MachineBasicBlock *MBB) const override
void EmitInstruction (const MachineInstr *MI) override
void printOperand (const MachineInstr *MI, unsigned OpNo, raw_ostream &O)
bool PrintAsmOperand (const MachineInstr *MI, unsigned OpNo, unsigned AsmVariant, const char *ExtraCode, raw_ostream &OS) override
bool PrintAsmMemoryOperand (const MachineInstr *MI, unsigned OpNo, unsigned AsmVariant, const char *ExtraCode, raw_ostream &OS) override

Static Public Member Functions

static const char * getRegisterName (unsigned RegNo)

Detailed Description

Definition at line 24 of file HexagonAsmPrinter.h.


Constructor & Destructor Documentation

llvm::HexagonAsmPrinter::HexagonAsmPrinter ( TargetMachine TM,
MCStreamer Streamer 
) [inline, explicit]

Definition at line 28 of file HexagonAsmPrinter.h.

References llvm::TargetMachine::getSubtarget().


Member Function Documentation

void HexagonAsmPrinter::EmitInstruction ( const MachineInstr MI) [override, virtual]
const char* llvm::HexagonAsmPrinter::getPassName ( ) const [inline, override, virtual]

getPassName - Return a nice clean name for a pass. This usually implemented in terms of the name that is registered by one of the Registration templates, but can be overloaded directly.

Reimplemented from llvm::Pass.

Definition at line 33 of file HexagonAsmPrinter.h.

static const char* llvm::HexagonAsmPrinter::getRegisterName ( unsigned  RegNo) [static]

Referenced by printOperand().

Return true if the basic block has exactly one predecessor and the control transfer mechanism between the predecessor and this block is a fall-through.

isBlockOnlyReachableByFallthough - Return true if the basic block has exactly one predecessor and the control transfer mechanism between the predecessor and this block is a fall-through.

Reimplemented from llvm::AsmPrinter.

Definition at line 99 of file HexagonAsmPrinter.cpp.

References llvm::MachineBasicBlock::hasAddressTaken().

bool HexagonAsmPrinter::PrintAsmMemoryOperand ( const MachineInstr MI,
unsigned  OpNo,
unsigned  AsmVariant,
const char *  ExtraCode,
raw_ostream OS 
) [override, virtual]

Print the specified operand of MI, an INLINEASM instruction, using the specified assembler variant as an address. Targets should override this to format as appropriate. This method can return true if the operand is erroneous.

Reimplemented from llvm::AsmPrinter.

Definition at line 146 of file HexagonAsmPrinter.cpp.

References llvm::MachineOperand::getImm(), llvm::MachineInstr::getOperand(), llvm::MachineOperand::isImm(), llvm::MachineOperand::isReg(), llvm_unreachable, and printOperand().

bool HexagonAsmPrinter::PrintAsmOperand ( const MachineInstr MI,
unsigned  OpNo,
unsigned  AsmVariant,
const char *  ExtraCode,
raw_ostream OS 
) [override, virtual]

PrintAsmOperand - Print out an operand for an inline asm expression.

Reimplemented from llvm::AsmPrinter.

Definition at line 109 of file HexagonAsmPrinter.cpp.

References llvm::MachineInstr::getNumOperands(), llvm::MachineInstr::getOperand(), llvm::MachineOperand::isImm(), llvm::MachineOperand::isReg(), and printOperand().


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