LLVM API Documentation

llvm::X86IntelAsmPrinter Struct Reference

#include <X86IntelAsmPrinter.h>

Inheritance diagram for llvm::X86IntelAsmPrinter:
[legend]
Collaboration diagram for llvm::X86IntelAsmPrinter:
[legend]

List of all members.

Public Types

typedef std::map< const
Function
*, X86MachineFunctionInfo > 
FMFInfoMap

Public Member Functions

 X86IntelAsmPrinter (raw_ostream &O, X86TargetMachine &TM, const TargetAsmInfo *T)
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 printf80mem (const MachineInstr *MI, unsigned OpNo)
void printf128mem (const MachineInstr *MI, unsigned OpNo)
void printlea64_32mem (const MachineInstr *MI, unsigned OpNo)
bool printAsmMRegister (const MachineOperand &MO, const char Mode)
bool PrintAsmOperand (const MachineInstr *MI, unsigned OpNo, unsigned AsmVariant, const char *ExtraCode)
bool PrintAsmMemoryOperand (const MachineInstr *MI, unsigned OpNo, unsigned AsmVariant, const char *ExtraCode)
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, const char *Modifier=NULL)
void printPICJumpTableSetLabel (unsigned uid, const MachineBasicBlock *MBB) const
void printPICJumpTableSetLabel (unsigned uid, unsigned uid2, const MachineBasicBlock *MBB) const
void printPICLabel (const MachineInstr *MI, unsigned Op)
bool runOnMachineFunction (MachineFunction &F)
bool doInitialization (Module &M)
bool doFinalization (Module &M)
void decorateName (std::string &Name, const GlobalValue *GV)
virtual void EmitString (const ConstantArray *CVA) const

Public Attributes

FMFInfoMap FunctionInfoMap
StringSet DLLExportedFns
StringSet DLLExportedGVs


Detailed Description

Definition at line 27 of file X86IntelAsmPrinter.h.


Member Typedef Documentation

Definition at line 129 of file X86IntelAsmPrinter.h.


Constructor & Destructor Documentation

llvm::X86IntelAsmPrinter::X86IntelAsmPrinter ( raw_ostream &  O,
X86TargetMachine &  TM,
const TargetAsmInfo *  T 
) [inline]

Definition at line 28 of file X86IntelAsmPrinter.h.


Member Function Documentation

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.

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 X86IntelAsmPrinter.h.

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 llvm::X86IntelAsmPrinter::printOperand ( const MachineInstr *  MI,
unsigned  OpNo,
const char *  Modifier = 0 
) [inline]

void llvm::X86IntelAsmPrinter::printi8mem ( const MachineInstr *  MI,
unsigned  OpNo 
) [inline]

Definition at line 56 of file X86IntelAsmPrinter.h.

void llvm::X86IntelAsmPrinter::printi16mem ( const MachineInstr *  MI,
unsigned  OpNo 
) [inline]

Definition at line 60 of file X86IntelAsmPrinter.h.

void llvm::X86IntelAsmPrinter::printi32mem ( const MachineInstr *  MI,
unsigned  OpNo 
) [inline]

Definition at line 64 of file X86IntelAsmPrinter.h.

void llvm::X86IntelAsmPrinter::printi64mem ( const MachineInstr *  MI,
unsigned  OpNo 
) [inline]

Definition at line 68 of file X86IntelAsmPrinter.h.

void llvm::X86IntelAsmPrinter::printi128mem ( const MachineInstr *  MI,
unsigned  OpNo 
) [inline]

Definition at line 72 of file X86IntelAsmPrinter.h.

void llvm::X86IntelAsmPrinter::printf32mem ( const MachineInstr *  MI,
unsigned  OpNo 
) [inline]

Definition at line 76 of file X86IntelAsmPrinter.h.

void llvm::X86IntelAsmPrinter::printf64mem ( const MachineInstr *  MI,
unsigned  OpNo 
) [inline]

Definition at line 80 of file X86IntelAsmPrinter.h.

void llvm::X86IntelAsmPrinter::printf80mem ( const MachineInstr *  MI,
unsigned  OpNo 
) [inline]

Definition at line 84 of file X86IntelAsmPrinter.h.

void llvm::X86IntelAsmPrinter::printf128mem ( const MachineInstr *  MI,
unsigned  OpNo 
) [inline]

Definition at line 88 of file X86IntelAsmPrinter.h.

void llvm::X86IntelAsmPrinter::printlea64_32mem ( const MachineInstr *  MI,
unsigned  OpNo 
) [inline]

Definition at line 92 of file X86IntelAsmPrinter.h.

bool X86IntelAsmPrinter::printAsmMRegister ( const MachineOperand &  MO,
const char  Mode 
)

bool X86IntelAsmPrinter::PrintAsmOperand ( const MachineInstr *  MI,
unsigned  OpNo,
unsigned  AsmVariant,
const char *  ExtraCode 
) [virtual]

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

Reimplemented from llvm::AsmPrinter.

Definition at line 359 of file X86IntelAsmPrinter.cpp.

References llvm::MachineInstr::getOperand(), printAsmMRegister(), and printOperand().

bool X86IntelAsmPrinter::PrintAsmMemoryOperand ( const MachineInstr *  MI,
unsigned  OpNo,
unsigned  AsmVariant,
const char *  ExtraCode 
) [virtual]

PrintAsmMemoryOperand - 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 380 of file X86IntelAsmPrinter.cpp.

References printMemReference().

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 393 of file X86IntelAsmPrinter.cpp.

References printInstruction().

Referenced by runOnMachineFunction().

void X86IntelAsmPrinter::printOp ( const MachineOperand &  MO,
const char *  Modifier = 0 
)

void X86IntelAsmPrinter::printSSECC ( const MachineInstr *  MI,
unsigned  Op 
)

void X86IntelAsmPrinter::printMemReference ( const MachineInstr *  MI,
unsigned  Op,
const char *  Modifier = NULL 
)

void X86IntelAsmPrinter::printPICJumpTableSetLabel ( unsigned  uid,
const MachineBasicBlock *  MBB 
) const [virtual]

printPICJumpTableSetLabel - This method prints a set label for the specified MachineBasicBlock for a jumptable entry.

printPICJumpTableSetLabel - This method prints a set label for the specified MachineBasicBlock for a jumptable entry.

Reimplemented from llvm::AsmPrinter.

Definition at line 318 of file X86IntelAsmPrinter.cpp.

References llvm::AsmPrinter::getFunctionNumber(), llvm::MachineBasicBlock::getNumber(), llvm::TargetAsmInfo::getPrivateGlobalPrefix(), llvm::TargetAsmInfo::getSetDirective(), llvm::AsmPrinter::O, llvm::AsmPrinter::printBasicBlockLabel(), and llvm::AsmPrinter::TAI.

void llvm::X86IntelAsmPrinter::printPICJumpTableSetLabel ( unsigned  uid,
unsigned  uid2,
const MachineBasicBlock *  MBB 
) const [inline, virtual]

Reimplemented from llvm::AsmPrinter.

Definition at line 109 of file X86IntelAsmPrinter.h.

References llvm::AsmPrinter::printPICJumpTableSetLabel().

void X86IntelAsmPrinter::printPICLabel ( const MachineInstr *  MI,
unsigned  Op 
)

bool X86IntelAsmPrinter::runOnMachineFunction ( MachineFunction &  MF  )  [virtual]

bool X86IntelAsmPrinter::doInitialization ( Module &  M  )  [virtual]

doInitialization - Set up the AsmPrinter when we are working on a new module. If your pass overrides this, it must make sure to explicitly call this implementation.

Reimplemented from llvm::AsmPrinter.

Definition at line 400 of file X86IntelAsmPrinter.cpp.

References llvm::Module::begin(), decorateName(), llvm::AsmPrinter::doInitialization(), E, llvm::Module::end(), llvm::Mangler::getValueName(), llvm::Module::global_begin(), llvm::Module::global_end(), llvm::AsmPrinter::Mang, llvm::Mangler::markCharUnacceptable(), Name, and llvm::AsmPrinter::O.

bool X86IntelAsmPrinter::doFinalization ( Module &  M  )  [virtual]

void X86IntelAsmPrinter::decorateName ( std::string &  Name,
const GlobalValue *  GV 
)

void X86IntelAsmPrinter::EmitString ( const ConstantArray *  CVA  )  const [virtual]

EmitString - Emit a zero-byte-terminated string constant.

Reimplemented from llvm::AsmPrinter.

Definition at line 531 of file X86IntelAsmPrinter.cpp.

References llvm::User::getNumOperands(), llvm::Constant::getOperand(), and llvm::AsmPrinter::O.


Member Data Documentation

Definition at line 130 of file X86IntelAsmPrinter.h.

Referenced by decorateName(), and runOnMachineFunction().

Definition at line 137 of file X86IntelAsmPrinter.h.

Referenced by doFinalization(), and runOnMachineFunction().

Definition at line 137 of file X86IntelAsmPrinter.h.

Referenced by doFinalization().


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