LLVM  10.0.0svn
Public Member Functions | List of all members
llvm::ARMBasicBlockUtils Class Reference

#include "Target/ARM/ARMBasicBlockInfo.h"

Public Member Functions

 ARMBasicBlockUtils (MachineFunction &MF)
 
void computeAllBlockSizes ()
 
void computeBlockSize (MachineBasicBlock *MBB)
 
unsigned getOffsetOf (MachineInstr *MI) const
 getOffsetOf - Return the current offset of the specified machine instruction from the start of the function. More...
 
unsigned getOffsetOf (MachineBasicBlock *MBB) const
 
void adjustBBOffsetsAfter (MachineBasicBlock *MBB)
 
void adjustBBSize (MachineBasicBlock *MBB, int Size)
 
bool isBBInRange (MachineInstr *MI, MachineBasicBlock *DestBB, unsigned MaxDisp) const
 isBBInRange - Returns true if the distance between specific MI and specific BB can fit in MI's displacement field. More...
 
void insert (unsigned BBNum, BasicBlockInfo BBI)
 
void clear ()
 
BBInfoVectorgetBBInfo ()
 

Detailed Description

Definition at line 109 of file ARMBasicBlockInfo.h.

Constructor & Destructor Documentation

◆ ARMBasicBlockUtils()

llvm::ARMBasicBlockUtils::ARMBasicBlockUtils ( MachineFunction MF)
inline

Member Function Documentation

◆ adjustBBOffsetsAfter()

void llvm::ARMBasicBlockUtils::adjustBBOffsetsAfter ( MachineBasicBlock MBB)

◆ adjustBBSize()

void llvm::ARMBasicBlockUtils::adjustBBSize ( MachineBasicBlock MBB,
int  Size 
)
inline

◆ clear()

void llvm::ARMBasicBlockUtils::clear ( )
inline

Definition at line 151 of file ARMBasicBlockInfo.h.

References llvm::SmallVectorImpl< T >::clear().

◆ computeAllBlockSizes()

void llvm::ARMBasicBlockUtils::computeAllBlockSizes ( )
inline

◆ computeBlockSize()

void llvm::ARMBasicBlockUtils::computeBlockSize ( MachineBasicBlock MBB)

◆ getBBInfo()

BBInfoVector& llvm::ARMBasicBlockUtils::getBBInfo ( )
inline

Definition at line 153 of file ARMBasicBlockInfo.h.

◆ getOffsetOf() [1/2]

unsigned llvm::ARMBasicBlockUtils::getOffsetOf ( MachineInstr MI) const

getOffsetOf - Return the current offset of the specified machine instruction from the start of the function.

This offset changes as stuff is moved around inside the function.

Definition at line 75 of file ARMBasicBlockInfo.cpp.

References assert(), llvm::MachineBasicBlock::begin(), llvm::MachineBasicBlock::end(), llvm::ARMBaseInstrInfo::getInstSizeInBytes(), llvm::MachineBasicBlock::getNumber(), llvm::MachineInstr::getParent(), I, and MI.

Referenced by isBBInRange().

◆ getOffsetOf() [2/2]

unsigned llvm::ARMBasicBlockUtils::getOffsetOf ( MachineBasicBlock MBB) const
inline

Definition at line 134 of file ARMBasicBlockInfo.h.

References llvm::MachineBasicBlock::getNumber().

◆ insert()

void llvm::ARMBasicBlockUtils::insert ( unsigned  BBNum,
BasicBlockInfo  BBI 
)
inline

◆ isBBInRange()

bool llvm::ARMBasicBlockUtils::isBBInRange ( MachineInstr MI,
MachineBasicBlock DestBB,
unsigned  MaxDisp 
) const

isBBInRange - Returns true if the distance between specific MI and specific BB can fit in MI's displacement field.

Definition at line 93 of file ARMBasicBlockInfo.cpp.

References llvm::dbgs(), llvm::MachineBasicBlock::getNumber(), getOffsetOf(), llvm::MachineInstr::getParent(), LLVM_DEBUG, MI, and llvm::printMBBReference().


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