LLVM API Documentation

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 MachineInstrBuilderaddImm (int64_t Val) const
const MachineInstrBuilderaddMBB (MachineBasicBlock *MBB) const
const MachineInstrBuilderaddFrameIndex (unsigned Idx) const
const MachineInstrBuilderaddConstantPoolIndex (unsigned Idx, int Offset=0) const
const MachineInstrBuilderaddJumpTableIndex (unsigned Idx) const
const MachineInstrBuilderaddGlobalAddress (GlobalValue *GV, int Offset=0) const
const MachineInstrBuilderaddExternalSymbol (const char *FnName) const

Detailed Description

Definition at line 24 of file MachineInstrBuilder.h.


Constructor & Destructor Documentation

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

Definition at line 27 of file MachineInstrBuilder.h.


Member Function Documentation

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

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

Definition at line 31 of file MachineInstrBuilder.h.

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

Definition at line 32 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 36 of file MachineInstrBuilder.h.

References llvm::MachineInstr::addRegOperand(), MI, and Ty.

Referenced by llvm::addDirectMem(), llvm::addFrameReference(), llvm::addFullAddress(), llvm::addRegOffset(), llvm::addRegReg(), llvm::BuildMI(), llvm::X86InstrInfo::commuteInstruction(), llvm::X86InstrInfo::convertToThreeAddress(), llvm::X86RegisterInfo::copyRegToReg(), llvm::SparcRegisterInfo::copyRegToReg(), llvm::PPCRegisterInfo::copyRegToReg(), llvm::IA64RegisterInfo::copyRegToReg(), llvm::ARMRegisterInfo::copyRegToReg(), llvm::AlphaRegisterInfo::copyRegToReg(), llvm::SparcRegisterInfo::eliminateCallFramePseudoInstr(), llvm::PPCRegisterInfo::eliminateCallFramePseudoInstr(), llvm::IA64RegisterInfo::eliminateCallFramePseudoInstr(), llvm::AlphaRegisterInfo::eliminateCallFramePseudoInstr(), llvm::SparcRegisterInfo::eliminateFrameIndex(), llvm::PPCRegisterInfo::eliminateFrameIndex(), llvm::IA64RegisterInfo::eliminateFrameIndex(), llvm::ARMRegisterInfo::eliminateFrameIndex(), llvm::AlphaRegisterInfo::eliminateFrameIndex(), llvm::X86RegisterInfo::emitEpilogue(), llvm::SparcRegisterInfo::emitEpilogue(), llvm::PPCRegisterInfo::emitEpilogue(), llvm::IA64RegisterInfo::emitEpilogue(), llvm::ARMRegisterInfo::emitEpilogue(), llvm::AlphaRegisterInfo::emitEpilogue(), llvm::X86RegisterInfo::emitPrologue(), llvm::SparcRegisterInfo::emitPrologue(), llvm::PPCRegisterInfo::emitPrologue(), llvm::IA64RegisterInfo::emitPrologue(), llvm::ARMRegisterInfo::emitPrologue(), llvm::AlphaRegisterInfo::emitPrologue(), llvm::SparcRegisterInfo::foldMemoryOperand(), llvm::AlphaRegisterInfo::foldMemoryOperand(), llvm::X86TargetLowering::InsertAtEndOfBasicBlock(), llvm::PPCTargetLowering::InsertAtEndOfBasicBlock(), llvm::PPCRegisterInfo::loadRegFromStackSlot(), llvm::IA64RegisterInfo::loadRegFromStackSlot(), llvm::AlphaRegisterInfo::loadRegFromStackSlot(), llvm::IA64TargetLowering::LowerArguments(), MakeMRIInst(), MakeMRInst(), llvm::AlphaTargetLowering::restoreGP(), llvm::AlphaTargetLowering::restoreRA(), llvm::X86RegisterInfo::storeRegToStackSlot(), llvm::SparcRegisterInfo::storeRegToStackSlot(), llvm::PPCRegisterInfo::storeRegToStackSlot(), llvm::IA64RegisterInfo::storeRegToStackSlot(), llvm::ARMRegisterInfo::storeRegToStackSlot(), and llvm::AlphaRegisterInfo::storeRegToStackSlot().

const MachineInstrBuilder& llvm::MachineInstrBuilder::addImm ( int64_t  Val  )  const [inline]

addImm - Add a new immediate operand.

Definition at line 45 of file MachineInstrBuilder.h.

References llvm::MachineInstr::addImmOperand(), and MI.

Referenced by llvm::addConstantPoolReference(), llvm::addDirectMem(), llvm::addFrameReference(), llvm::addFullAddress(), llvm::addRegOffset(), llvm::addRegReg(), llvm::X86InstrInfo::commuteInstruction(), llvm::X86InstrInfo::convertToThreeAddress(), llvm::X86RegisterInfo::eliminateCallFramePseudoInstr(), llvm::SparcRegisterInfo::eliminateCallFramePseudoInstr(), llvm::PPCRegisterInfo::eliminateCallFramePseudoInstr(), llvm::IA64RegisterInfo::eliminateCallFramePseudoInstr(), llvm::AlphaRegisterInfo::eliminateCallFramePseudoInstr(), llvm::PPCRegisterInfo::eliminateFrameIndex(), llvm::IA64RegisterInfo::eliminateFrameIndex(), llvm::ARMRegisterInfo::eliminateFrameIndex(), llvm::AlphaRegisterInfo::eliminateFrameIndex(), llvm::X86RegisterInfo::emitEpilogue(), llvm::PPCRegisterInfo::emitEpilogue(), llvm::IA64RegisterInfo::emitEpilogue(), llvm::ARMRegisterInfo::emitEpilogue(), llvm::AlphaRegisterInfo::emitEpilogue(), llvm::X86RegisterInfo::emitPrologue(), llvm::SparcRegisterInfo::emitPrologue(), llvm::PPCRegisterInfo::emitPrologue(), llvm::IA64RegisterInfo::emitPrologue(), llvm::ARMRegisterInfo::emitPrologue(), llvm::AlphaRegisterInfo::emitPrologue(), llvm::SparcRegisterInfo::foldMemoryOperand(), HandleVRSaveUpdate(), llvm::X86TargetLowering::InsertAtEndOfBasicBlock(), llvm::SparcRegisterInfo::loadRegFromStackSlot(), llvm::PPCRegisterInfo::loadRegFromStackSlot(), llvm::ARMRegisterInfo::loadRegFromStackSlot(), MakeM0Inst(), MakeMIInst(), MakeRMIInst(), llvm::SparcRegisterInfo::storeRegToStackSlot(), llvm::PPCRegisterInfo::storeRegToStackSlot(), llvm::IA64RegisterInfo::storeRegToStackSlot(), and llvm::ARMRegisterInfo::storeRegToStackSlot().

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

Definition at line 50 of file MachineInstrBuilder.h.

References llvm::MachineInstr::addMachineBasicBlockOperand(), MBB, and MI.

Referenced by llvm::X86TargetLowering::InsertAtEndOfBasicBlock().

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

Definition at line 55 of file MachineInstrBuilder.h.

References llvm::MachineInstr::addFrameIndexOperand(), and MI.

Referenced by llvm::addFrameReference(), llvm::addFullAddress(), llvm::SparcRegisterInfo::foldMemoryOperand(), llvm::AlphaRegisterInfo::foldMemoryOperand(), llvm::SparcRegisterInfo::loadRegFromStackSlot(), llvm::IA64RegisterInfo::loadRegFromStackSlot(), llvm::ARMRegisterInfo::loadRegFromStackSlot(), llvm::AlphaRegisterInfo::loadRegFromStackSlot(), llvm::IA64TargetLowering::LowerArguments(), llvm::SparcRegisterInfo::storeRegToStackSlot(), llvm::IA64RegisterInfo::storeRegToStackSlot(), llvm::ARMRegisterInfo::storeRegToStackSlot(), and llvm::AlphaRegisterInfo::storeRegToStackSlot().

const MachineInstrBuilder& llvm::MachineInstrBuilder::addConstantPoolIndex ( unsigned  Idx,
int  Offset = 0 
) const [inline]

Definition at line 60 of file MachineInstrBuilder.h.

References llvm::MachineInstr::addConstantPoolIndexOperand(), MI, and Offset.

Referenced by llvm::addConstantPoolReference().

const MachineInstrBuilder& llvm::MachineInstrBuilder::addJumpTableIndex ( unsigned  Idx  )  const [inline]

Definition at line 66 of file MachineInstrBuilder.h.

References llvm::MachineInstr::addJumpTableIndexOperand(), and MI.

Referenced by MakeMIInst().

const MachineInstrBuilder& llvm::MachineInstrBuilder::addGlobalAddress ( GlobalValue GV,
int  Offset = 0 
) const [inline]

Definition at line 71 of file MachineInstrBuilder.h.

References llvm::MachineInstr::addGlobalAddressOperand(), GV, MI, and Offset.

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

const MachineInstrBuilder& llvm::MachineInstrBuilder::addExternalSymbol ( const char *  FnName  )  const [inline]

Definition at line 77 of file MachineInstrBuilder.h.

References llvm::MachineInstr::addExternalSymbolOperand(), and MI.

Referenced by llvm::X86RegisterInfo::emitPrologue().


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