LLVM API Documentation

Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

llvm::MachineInstrBuilder Class Reference

#include <MachineInstrBuilder.h>

Collaboration diagram for llvm::MachineInstrBuilder:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 MachineInstrBuilder (MachineInstr *mi)
 operator MachineInstr * () const
 operator MachineBasicBlock::iterator () const
const MachineInstrBuilderaddReg (int RegNo, MachineOperand::UseType Ty=MachineOperand::Use) const
const MachineInstrBuilderaddReg (Value *V, MachineOperand::UseType Ty=MachineOperand::Use) const
const MachineInstrBuilderaddCCReg (Value *V, MachineOperand::UseType Ty=MachineOperand::Use) const
const MachineInstrBuilderaddRegDef (Value *V) const
const MachineInstrBuilderaddPCDisp (Value *V) const
const MachineInstrBuilderaddMReg (int Reg, MachineOperand::UseType Ty=MachineOperand::Use) const
const MachineInstrBuilderaddImm (int Val) const
const MachineInstrBuilderaddSImm (int val) const
const MachineInstrBuilderaddZImm (unsigned Val) const
const MachineInstrBuilderaddMBB (MachineBasicBlock *MBB) const
const MachineInstrBuilderaddFrameIndex (unsigned Idx) const
const MachineInstrBuilderaddConstantPoolIndex (unsigned Idx) const
const MachineInstrBuilderaddGlobalAddress (GlobalValue *GV, bool isPCRelative=false, int Offset=0) const
const MachineInstrBuilderaddExternalSymbol (const char *FnName, bool isPCRelative=false) const

Detailed Description

Definition at line 30 of file MachineInstrBuilder.h.


Constructor & Destructor Documentation

llvm::MachineInstrBuilder::MachineInstrBuilder MachineInstr mi  )  [inline]
 

Definition at line 33 of file MachineInstrBuilder.h.


Member Function Documentation

const MachineInstrBuilder& llvm::MachineInstrBuilder::addCCReg Value V,
MachineOperand::UseType  Ty = MachineOperand::Use
const [inline]
 

addReg - Add an LLVM value that is to be used as a register...

Definition at line 60 of file MachineInstrBuilder.h.

const MachineInstrBuilder& llvm::MachineInstrBuilder::addConstantPoolIndex unsigned  Idx  )  const [inline]
 

Definition at line 121 of file MachineInstrBuilder.h.

Referenced by llvm::addConstantPoolReference().

const MachineInstrBuilder& llvm::MachineInstrBuilder::addExternalSymbol const char *  FnName,
bool  isPCRelative = false
const [inline]
 

Definition at line 132 of file MachineInstrBuilder.h.

const MachineInstrBuilder& llvm::MachineInstrBuilder::addFrameIndex unsigned  Idx  )  const [inline]
 

Definition at line 116 of file MachineInstrBuilder.h.

Referenced by llvm::addFrameReference(), and llvm::addFullAddress().

const MachineInstrBuilder& llvm::MachineInstrBuilder::addGlobalAddress GlobalValue GV,
bool  isPCRelative = false,
int  Offset = 0
const [inline]
 

Definition at line 126 of file MachineInstrBuilder.h.

Referenced by llvm::addFullAddress(), and MakeMIInst().

const MachineInstrBuilder& llvm::MachineInstrBuilder::addImm int  Val  )  const [inline]
 

addImm - Add a new immediate operand.

Definition at line 92 of file MachineInstrBuilder.h.

Referenced by llvm::PPC64RegisterInfo::emitPrologue(), and llvm::PPC32RegisterInfo::emitPrologue().

const MachineInstrBuilder& llvm::MachineInstrBuilder::addMBB MachineBasicBlock MBB  )  const [inline]
 

Definition at line 111 of file MachineInstrBuilder.h.

Referenced by llvm::X86InstrInfo::insertGoto(), and llvm::X86InstrInfo::reverseBranchCondition().

const MachineInstrBuilder& llvm::MachineInstrBuilder::addMReg int  Reg,
MachineOperand::UseType  Ty = MachineOperand::Use
const [inline]
 

addMReg - Add a machine register operand...

Definition at line 84 of file MachineInstrBuilder.h.

Referenced by llvm::SparcV9RegInfo::cpMem2RegMI(), llvm::SparcV9RegInfo::cpReg2MemMI(), llvm::SparcV9RegInfo::cpReg2RegMI(), and llvm::SparcV9RegInfo::cpValue2Value().

const MachineInstrBuilder& llvm::MachineInstrBuilder::addPCDisp Value V  )  const [inline]
 

addPCDisp - Add an LLVM value to be treated as a PC relative displacement...

Definition at line 77 of file MachineInstrBuilder.h.

const MachineInstrBuilder& llvm::MachineInstrBuilder::addReg Value V,
MachineOperand::UseType  Ty = MachineOperand::Use
const [inline]
 

addReg - Add an LLVM value that is to be used as a register...

Definition at line 51 of file MachineInstrBuilder.h.

const MachineInstrBuilder& llvm::MachineInstrBuilder::addReg int  RegNo,
MachineOperand::UseType  Ty = MachineOperand::Use
const [inline]
 

addReg - Add a new virtual register operand...

Definition at line 42 of file MachineInstrBuilder.h.

References llvm::MachineInstr::addRegOperand().

Referenced by llvm::addDirectMem(), llvm::addFrameReference(), llvm::addFullAddress(), llvm::addRegOffset(), llvm::BuildMI(), llvm::X86RegisterInfo::copyRegToReg(), llvm::PPC64RegisterInfo::copyRegToReg(), llvm::PPC32RegisterInfo::copyRegToReg(), llvm::SparcV9RegInfo::cpValue2Value(), llvm::X86RegisterInfo::emitEpilogue(), llvm::PPC64RegisterInfo::emitEpilogue(), llvm::PPC32RegisterInfo::emitEpilogue(), llvm::X86RegisterInfo::emitPrologue(), llvm::PPC64RegisterInfo::emitPrologue(), llvm::PPC32RegisterInfo::emitPrologue(), llvm::PPC64RegisterInfo::loadRegFromStackSlot(), llvm::PPC32RegisterInfo::loadRegFromStackSlot(), MakeMRIInst(), MakeMRInst(), llvm::X86RegisterInfo::storeRegToStackSlot(), llvm::PPC64RegisterInfo::storeRegToStackSlot(), and llvm::PPC32RegisterInfo::storeRegToStackSlot().

const MachineInstrBuilder& llvm::MachineInstrBuilder::addRegDef Value V  )  const [inline]
 

addRegDef - Add an LLVM value that is to be defined as a register... this is the same as addReg(V, MachineOperand::Def).

Definition at line 70 of file MachineInstrBuilder.h.

References llvm::MachineOperand::Def.

Referenced by llvm::SparcV9RegInfo::cpValue2Value().

const MachineInstrBuilder& llvm::MachineInstrBuilder::addSImm int  val  )  const [inline]
 

addSImm - Add a new sign extended immediate operand...

Definition at line 99 of file MachineInstrBuilder.h.

Referenced by llvm::addConstantPoolReference(), llvm::addDirectMem(), llvm::addFrameReference(), llvm::addFullAddress(), llvm::addRegOffset(), llvm::SparcV9RegInfo::cpMem2RegMI(), llvm::SparcV9RegInfo::cpReg2MemMI(), llvm::PPC64RegisterInfo::emitEpilogue(), llvm::PPC32RegisterInfo::emitEpilogue(), llvm::PPC64RegisterInfo::emitPrologue(), and llvm::PPC32RegisterInfo::emitPrologue().

const MachineInstrBuilder& llvm::MachineInstrBuilder::addZImm unsigned  Val  )  const [inline]
 

addZImm - Add a new zero extended immediate operand...

Definition at line 106 of file MachineInstrBuilder.h.

Referenced by llvm::addDirectMem(), llvm::addFrameReference(), llvm::addFullAddress(), llvm::addRegOffset(), llvm::SparcV9RegInfo::cpMem2RegMI(), llvm::SparcV9RegInfo::cpReg2MemMI(), llvm::X86RegisterInfo::eliminateCallFramePseudoInstr(), llvm::X86RegisterInfo::emitEpilogue(), llvm::X86RegisterInfo::emitPrologue(), MakeMIInst(), MakeMRIInst(), and MakeRMIInst().

llvm::MachineInstrBuilder::operator MachineBasicBlock::iterator  )  const [inline]
 

Definition at line 38 of file MachineInstrBuilder.h.

llvm::MachineInstrBuilder::operator MachineInstr *  )  const [inline]
 

Allow automatic conversion to the machine instruction we are working on.

Definition at line 37 of file MachineInstrBuilder.h.


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