LLVM: lib/Target/ARM/MVEVPTBlockPass.cpp File Reference (original) (raw)

Go to the source code of this file.

Macros
#define DEBUG_TYPE "arm-mve-vpt"
Functions
static MachineInstr * findVCMPToFoldIntoVPST (MachineBasicBlock::iterator MI, const TargetRegisterInfo *TRI, unsigned &NewOpcode)
static bool StepOverPredicatedInstrs (MachineBasicBlock::instr_iterator &Iter, MachineBasicBlock::instr_iterator EndIter, unsigned MaxSteps, unsigned &NumInstrsSteppedOver)
static bool IsVPRDefinedOrKilledByBlock (MachineBasicBlock::iterator Iter, MachineBasicBlock::iterator End)
static ARM::PredBlockMask GetInitialBlockMask (unsigned BlockSize)
static ARM::PredBlockMask CreateVPTBlock (MachineBasicBlock::instr_iterator &Iter, MachineBasicBlock::instr_iterator EndIter, SmallVectorImpl< MachineInstr * > &DeadInstructions)

DEBUG_TYPE

#define DEBUG_TYPE "arm-mve-vpt"

CreateVPTBlock()

Definition at line 159 of file MVEVPTBlockPass.cpp.

References assert(), BlockSize, llvm::dbgs(), llvm::ARMVCC::Else, llvm::expandPredBlockMask(), llvm::findFirstVPTPredOperandIdx(), GetInitialBlockMask(), llvm::getVPTInstrPredicate(), IsVPRDefinedOrKilledByBlock(), LLVM_DEBUG, OpIdx, llvm::SmallVectorTemplateBase< T, bool >::push_back(), StepOverPredicatedInstrs(), and llvm::ARMVCC::Then.

findVCMPToFoldIntoVPST()

GetInitialBlockMask()

IsVPRDefinedOrKilledByBlock()

StepOverPredicatedInstrs()