LLVM API Documentation
#include <X86IntelAsmPrinter.h>
Inheritance diagram for llvm::X86IntelAsmPrinter:
Public Member Functions | |
X86IntelAsmPrinter (std::ostream &O, X86TargetMachine &TM) | |
virtual const char * | getPassName () const |
bool | printInstruction (const MachineInstr *MI) |
void | printOperand (const MachineInstr *MI, unsigned OpNo, const char *Modifier=0) |
void | printi8mem (const MachineInstr *MI, unsigned OpNo) |
void | printi16mem (const MachineInstr *MI, unsigned OpNo) |
void | printi32mem (const MachineInstr *MI, unsigned OpNo) |
void | printi64mem (const MachineInstr *MI, unsigned OpNo) |
void | printi128mem (const MachineInstr *MI, unsigned OpNo) |
void | printf32mem (const MachineInstr *MI, unsigned OpNo) |
void | printf64mem (const MachineInstr *MI, unsigned OpNo) |
void | printf128mem (const MachineInstr *MI, unsigned OpNo) |
void | printMachineInstruction (const MachineInstr *MI) |
void | printOp (const MachineOperand &MO, const char *Modifier=0) |
void | printSSECC (const MachineInstr *MI, unsigned Op) |
void | printMemReference (const MachineInstr *MI, unsigned Op) |
void | printPICLabel (const MachineInstr *MI, unsigned Op) |
bool | runOnMachineFunction (MachineFunction &F) |
bool | doInitialization (Module &M) |
doInitialization |
Definition at line 23 of file X86IntelAsmPrinter.h.
llvm::X86IntelAsmPrinter::X86IntelAsmPrinter | ( | std::ostream & | O, | |
X86TargetMachine & | TM | |||
) | [inline] |
Definition at line 24 of file X86IntelAsmPrinter.h.
bool X86IntelAsmPrinter::doInitialization | ( | Module & | M | ) | [virtual] |
doInitialization
Reimplemented from llvm::X86SharedAsmPrinter.
Definition at line 260 of file X86IntelAsmPrinter.cpp.
References llvm::X86SharedAsmPrinter::doInitialization(), M, and llvm::AsmPrinter::O.
virtual const char* llvm::X86IntelAsmPrinter::getPassName | ( | ) | const [inline, 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, and if nothing else is available, C++ RTTI will be consulted to get a SOMEWHAT intelligible name for the pass.
Reimplemented from llvm::Pass.
Definition at line 27 of file X86IntelAsmPrinter.h.
void llvm::X86IntelAsmPrinter::printf128mem | ( | const MachineInstr * | MI, | |
unsigned | OpNo | |||
) | [inline] |
Definition at line 78 of file X86IntelAsmPrinter.h.
References MI, llvm::AsmPrinter::O, and printMemReference().
void llvm::X86IntelAsmPrinter::printf32mem | ( | const MachineInstr * | MI, | |
unsigned | OpNo | |||
) | [inline] |
Definition at line 70 of file X86IntelAsmPrinter.h.
References MI, llvm::AsmPrinter::O, and printMemReference().
void llvm::X86IntelAsmPrinter::printf64mem | ( | const MachineInstr * | MI, | |
unsigned | OpNo | |||
) | [inline] |
Definition at line 74 of file X86IntelAsmPrinter.h.
References MI, llvm::AsmPrinter::O, and printMemReference().
void llvm::X86IntelAsmPrinter::printi128mem | ( | const MachineInstr * | MI, | |
unsigned | OpNo | |||
) | [inline] |
Definition at line 66 of file X86IntelAsmPrinter.h.
References MI, llvm::AsmPrinter::O, and printMemReference().
void llvm::X86IntelAsmPrinter::printi16mem | ( | const MachineInstr * | MI, | |
unsigned | OpNo | |||
) | [inline] |
Definition at line 54 of file X86IntelAsmPrinter.h.
References MI, llvm::AsmPrinter::O, and printMemReference().
void llvm::X86IntelAsmPrinter::printi32mem | ( | const MachineInstr * | MI, | |
unsigned | OpNo | |||
) | [inline] |
Definition at line 58 of file X86IntelAsmPrinter.h.
References MI, llvm::AsmPrinter::O, and printMemReference().
void llvm::X86IntelAsmPrinter::printi64mem | ( | const MachineInstr * | MI, | |
unsigned | OpNo | |||
) | [inline] |
Definition at line 62 of file X86IntelAsmPrinter.h.
References MI, llvm::AsmPrinter::O, and printMemReference().
void llvm::X86IntelAsmPrinter::printi8mem | ( | const MachineInstr * | MI, | |
unsigned | OpNo | |||
) | [inline] |
Definition at line 50 of file X86IntelAsmPrinter.h.
References MI, llvm::AsmPrinter::O, and printMemReference().
bool llvm::X86IntelAsmPrinter::printInstruction | ( | const MachineInstr * | MI | ) |
printInstruction - This method is automatically generated by tablegen from the instruction set description. This method returns true if the machine instruction was sufficiently described to print it, otherwise it returns false.
Referenced by printMachineInstruction().
void X86IntelAsmPrinter::printMachineInstruction | ( | const MachineInstr * | MI | ) |
printMachineInstruction -- Print out a single X86 LLVM instruction MI in Intel syntax to the current output stream.
Definition at line 253 of file X86IntelAsmPrinter.cpp.
References llvm::EmittedInsts, MI, and printInstruction().
Referenced by runOnMachineFunction().
void X86IntelAsmPrinter::printMemReference | ( | const MachineInstr * | MI, | |
unsigned | Op | |||
) |
Definition at line 194 of file X86IntelAsmPrinter.cpp.
References llvm::MachineOperand::getFrameIndex(), llvm::MachineOperand::getImmedValue(), llvm::MachineInstr::getOperand(), llvm::MachineOperand::getReg(), IndexReg, llvm::MachineOperand::isConstantPoolIndex(), llvm::MachineOperand::isFrameIndex(), llvm::MachineOperand::isGlobalAddress(), llvm::X86SharedAsmPrinter::isMem(), MI, llvm::AsmPrinter::O, and printOp().
Referenced by printf128mem(), printf32mem(), printf64mem(), printi128mem(), printi16mem(), printi32mem(), printi64mem(), and printi8mem().
void X86IntelAsmPrinter::printOp | ( | const MachineOperand & | MO, | |
const char * | Modifier = 0 | |||
) |
Definition at line 93 of file X86IntelAsmPrinter.cpp.
References abort(), llvm::X86SharedAsmPrinter::FnStubs, llvm::X86SharedAsmPrinter::forDarwin, llvm::MRegisterInfo::get(), llvm::MachineBasicBlock::getBasicBlock(), llvm::MachineOperand::getConstantPoolIndex(), llvm::MachineFunction::getFunction(), llvm::AsmPrinter::getFunctionNumber(), llvm::MachineOperand::getGlobal(), llvm::MachineOperand::getImmedValue(), llvm::MachineOperand::getMachineBasicBlock(), llvm::Value::getName(), llvm::MachineBasicBlock::getNumber(), llvm::MachineOperand::getOffset(), llvm::MachineBasicBlock::getParent(), llvm::MachineOperand::getReg(), llvm::TargetMachine::getRegisterInfo(), llvm::TargetMachine::getRelocationModel(), llvm::MachineOperand::getSymbolName(), llvm::MachineOperand::getType(), llvm::Mangler::getValueName(), llvm::MachineOperand::getVRegValueOrNull(), llvm::AsmPrinter::GlobalPrefix, GV, llvm::X86SharedAsmPrinter::GVStubs, llvm::GlobalValue::hasLinkOnceLinkage(), llvm::GlobalValue::hasWeakLinkage(), llvm::GlobalValue::isExternal(), llvm::MRegisterInfo::isPhysicalRegister(), llvm::AsmPrinter::Mang, llvm::MachineOperand::MO_ConstantPoolIndex, llvm::MachineOperand::MO_ExternalSymbol, llvm::MachineOperand::MO_GlobalAddress, llvm::MachineOperand::MO_MachineBasicBlock, llvm::MachineOperand::MO_MachineRegister, llvm::MachineOperand::MO_PCRelativeDisp, llvm::MachineOperand::MO_SignExtendedImmed, llvm::MachineOperand::MO_UnextendedImmed, llvm::MachineOperand::MO_VirtualRegister, Name, llvm::AsmPrinter::O, Offset, llvm::Reloc::PIC, llvm::AsmPrinter::PrivateGlobalPrefix, llvm::Reloc::Static, llvm::AsmPrinter::TM, and V.
Referenced by printMemReference(), and printOperand().
void llvm::X86IntelAsmPrinter::printOperand | ( | const MachineInstr * | MI, | |
unsigned | OpNo, | |||
const char * | Modifier = 0 | |||
) | [inline] |
Definition at line 38 of file X86IntelAsmPrinter.h.
References llvm::MRegisterInfo::get(), llvm::MachineInstr::getOperand(), llvm::MachineOperand::getReg(), llvm::TargetMachine::getRegisterInfo(), llvm::MachineOperand::getType(), llvm::MRegisterInfo::isPhysicalRegister(), MI, llvm::MachineOperand::MO_MachineRegister, Name, llvm::AsmPrinter::O, printOp(), and llvm::AsmPrinter::TM.
void X86IntelAsmPrinter::printPICLabel | ( | const MachineInstr * | MI, | |
unsigned | Op | |||
) |
Definition at line 245 of file X86IntelAsmPrinter.cpp.
References llvm::AsmPrinter::getFunctionNumber(), and llvm::AsmPrinter::O.
void X86IntelAsmPrinter::printSSECC | ( | const MachineInstr * | MI, | |
unsigned | Op | |||
) |
Definition at line 78 of file X86IntelAsmPrinter.cpp.
References llvm::MachineOperand::getImmedValue(), llvm::MachineInstr::getOperand(), MI, and llvm::AsmPrinter::O.
bool X86IntelAsmPrinter::runOnMachineFunction | ( | MachineFunction & | MF | ) | [virtual] |
runOnMachineFunction - This uses the printMachineInstruction() method to print assembly for each instruction.
Implements llvm::MachineFunctionPass.
Definition at line 27 of file X86IntelAsmPrinter.cpp.
References llvm::MachineFunction::begin(), llvm::DwarfWriter::BeginFunction(), llvm::AsmPrinter::CommentString, llvm::AsmPrinter::CurrentFnName, llvm::X86SharedAsmPrinter::DW, E, llvm::AsmPrinter::EmitAlignment(), llvm::AsmPrinter::EmitConstantPool(), llvm::MachineFunction::end(), llvm::DwarfWriter::EndFunction(), llvm::X86SharedAsmPrinter::forDarwin, llvm::MachineFunction::getConstantPool(), llvm::MachineFunction::getFunction(), llvm::AsmPrinter::HasDotTypeDotSizeDirective, I, II, MF, llvm::AsmPrinter::O, printMachineInstruction(), llvm::AsmPrinter::PrivateGlobalPrefix, llvm::DwarfWriter::SetDebugInfo(), llvm::AsmPrinter::SetupMachineFunction(), and llvm::AsmPrinter::SwitchSection().