LLVM 18.0.0git
|
SSAUpdaterTraits<MachineSSAUpdater> - Traits for the SSAUpdaterImpl template, specialized for MachineSSAUpdater. More...
Classes | |
class | PHI_iterator |
Iterator for PHI operands. More... | |
Public Types | |
using | BlkT = MachineBasicBlock |
using | ValT = Register |
using | PhiT = MachineInstr |
using | BlkSucc_iterator = MachineBasicBlock::succ_iterator |
Static Public Member Functions | |
static BlkSucc_iterator | BlkSucc_begin (BlkT *BB) |
static BlkSucc_iterator | BlkSucc_end (BlkT *BB) |
static PHI_iterator | PHI_begin (PhiT *PHI) |
static PHI_iterator | PHI_end (PhiT *PHI) |
static void | FindPredecessorBlocks (MachineBasicBlock *BB, SmallVectorImpl< MachineBasicBlock * > *Preds) |
FindPredecessorBlocks - Put the predecessors of BB into the Preds vector. | |
static Register | GetUndefVal (MachineBasicBlock *BB, MachineSSAUpdater *Updater) |
GetUndefVal - Create an IMPLICIT_DEF instruction with a new register. | |
static Register | CreateEmptyPHI (MachineBasicBlock *BB, unsigned NumPreds, MachineSSAUpdater *Updater) |
CreateEmptyPHI - Create a PHI instruction that defines a new register. | |
static void | AddPHIOperand (MachineInstr *PHI, Register Val, MachineBasicBlock *Pred) |
AddPHIOperand - Add the specified value as an operand of the PHI for the specified predecessor block. | |
static MachineInstr * | InstrIsPHI (MachineInstr *I) |
InstrIsPHI - Check if an instruction is a PHI. | |
static MachineInstr * | ValueIsPHI (Register Val, MachineSSAUpdater *Updater) |
ValueIsPHI - Check if the instruction that defines the specified register is a PHI instruction. | |
static MachineInstr * | ValueIsNewPHI (Register Val, MachineSSAUpdater *Updater) |
ValueIsNewPHI - Like ValueIsPHI but also check if the PHI has no source operands, i.e., it was just added. | |
static Register | GetPHIValue (MachineInstr *PHI) |
GetPHIValue - For the specified PHI instruction, return the register that it defines. | |
SSAUpdaterTraits<MachineSSAUpdater> - Traits for the SSAUpdaterImpl template, specialized for MachineSSAUpdater.
Definition at line 252 of file MachineSSAUpdater.cpp.
using llvm::SSAUpdaterTraits< MachineSSAUpdater >::BlkSucc_iterator = MachineBasicBlock::succ_iterator |
Definition at line 257 of file MachineSSAUpdater.cpp.
using llvm::SSAUpdaterTraits< MachineSSAUpdater >::BlkT = MachineBasicBlock |
Definition at line 254 of file MachineSSAUpdater.cpp.
using llvm::SSAUpdaterTraits< MachineSSAUpdater >::PhiT = MachineInstr |
Definition at line 256 of file MachineSSAUpdater.cpp.
Definition at line 255 of file MachineSSAUpdater.cpp.
|
inlinestatic |
AddPHIOperand - Add the specified value as an operand of the PHI for the specified predecessor block.
Definition at line 323 of file MachineSSAUpdater.cpp.
References llvm::MachineInstrBuilder::addMBB(), llvm::MachineInstrBuilder::addReg(), llvm::MachineBasicBlock::getParent(), and PHI.
|
inlinestatic |
Definition at line 259 of file MachineSSAUpdater.cpp.
References llvm::MachineBasicBlock::succ_begin().
|
inlinestatic |
Definition at line 260 of file MachineSSAUpdater.cpp.
References llvm::MachineBasicBlock::succ_end().
|
inlinestatic |
CreateEmptyPHI - Create a PHI instruction that defines a new register.
Add it into the specified block and return the register.
Definition at line 312 of file MachineSSAUpdater.cpp.
References llvm::MachineBasicBlock::begin(), llvm::MachineBasicBlock::empty(), llvm::MachineBasicBlock::end(), InsertNewDef(), and PHI.
|
inlinestatic |
FindPredecessorBlocks - Put the predecessors of BB into the Preds vector.
Definition at line 293 of file MachineSSAUpdater.cpp.
References llvm::append_range(), and llvm::MachineBasicBlock::predecessors().
|
inlinestatic |
GetPHIValue - For the specified PHI instruction, return the register that it defines.
Definition at line 352 of file MachineSSAUpdater.cpp.
References PHI.
|
inlinestatic |
GetUndefVal - Create an IMPLICIT_DEF instruction with a new register.
Add it into the specified block and return the register.
Definition at line 300 of file MachineSSAUpdater.cpp.
References llvm::MachineBasicBlock::getFirstNonPHI(), llvm::MachineInstr::getOperand(), llvm::MachineOperand::getReg(), and InsertNewDef().
|
inlinestatic |
InstrIsPHI - Check if an instruction is a PHI.
Definition at line 329 of file MachineSSAUpdater.cpp.
References I.
|
inlinestatic |
Definition at line 285 of file MachineSSAUpdater.cpp.
References PHI.
|
inlinestatic |
Definition at line 287 of file MachineSSAUpdater.cpp.
References PHI.
|
inlinestatic |
ValueIsNewPHI - Like ValueIsPHI but also check if the PHI has no source operands, i.e., it was just added.
Definition at line 343 of file MachineSSAUpdater.cpp.
References PHI.
|
inlinestatic |
ValueIsPHI - Check if the instruction that defines the specified register is a PHI instruction.
Definition at line 337 of file MachineSSAUpdater.cpp.
References llvm::MachineRegisterInfo::getVRegDef().