LLVM 22.0.0git
llvm::SSAUpdaterTraits< SSAUpdater > Class Reference
Inheritance diagram for llvm::SSAUpdaterTraits< SSAUpdater >:
[legend]

Classes

class  PHI_iterator

Public Types

using BlkT = BasicBlock
using ValT = Value *
using PhiT = PHINode
using BlkSucc_iterator = 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 (BasicBlock *BB, SmallVectorImpl< BasicBlock * > *Preds)
 FindPredecessorBlocks - Put the predecessors of Info->BB into the Preds vector, set Info->NumPreds, and allocate space in Info->Preds.
static ValueGetPoisonVal (BasicBlock *BB, SSAUpdater *Updater)
 GetPoisonVal - Get a poison value of the same type as the value being handled.
static ValueCreateEmptyPHI (BasicBlock *BB, unsigned NumPreds, SSAUpdater *Updater)
 CreateEmptyPHI - Create a new PHI instruction in the specified block.
static void AddPHIOperand (PHINode *PHI, Value *Val, BasicBlock *Pred)
 AddPHIOperand - Add the specified value as an operand of the PHI for the specified predecessor block.
static PHINodeValueIsPHI (Value *Val, SSAUpdater *Updater)
 ValueIsPHI - Check if a value is a PHI.
static PHINodeValueIsNewPHI (Value *Val, SSAUpdater *Updater)
 ValueIsNewPHI - Like ValueIsPHI but also check if the PHI has no source operands, i.e., it was just added.
static ValueGetPHIValue (PHINode *PHI)
 GetPHIValue - For the specified PHI instruction, return the value that it defines.

Detailed Description

Definition at line 240 of file SSAUpdater.cpp.

Member Typedef Documentation

◆ BlkSucc_iterator

using llvm::SSAUpdaterTraits< SSAUpdater >::BlkSucc_iterator = succ_iterator

Definition at line 245 of file SSAUpdater.cpp.

◆ BlkT

Definition at line 242 of file SSAUpdater.cpp.

◆ PhiT

Definition at line 244 of file SSAUpdater.cpp.

◆ ValT

Definition at line 243 of file SSAUpdater.cpp.

Member Function Documentation

◆ AddPHIOperand()

void llvm::SSAUpdaterTraits< SSAUpdater >::AddPHIOperand ( PHINode * PHI,
Value * Val,
BasicBlock * Pred )
inlinestatic

AddPHIOperand - Add the specified value as an operand of the PHI for the specified predecessor block.

Definition at line 310 of file SSAUpdater.cpp.

References PHI.

◆ BlkSucc_begin()

BlkSucc_iterator llvm::SSAUpdaterTraits< SSAUpdater >::BlkSucc_begin ( BlkT * BB)
inlinestatic

Definition at line 247 of file SSAUpdater.cpp.

References llvm::succ_begin().

◆ BlkSucc_end()

BlkSucc_iterator llvm::SSAUpdaterTraits< SSAUpdater >::BlkSucc_end ( BlkT * BB)
inlinestatic

Definition at line 248 of file SSAUpdater.cpp.

References llvm::succ_end().

◆ CreateEmptyPHI()

Value * llvm::SSAUpdaterTraits< SSAUpdater >::CreateEmptyPHI ( BasicBlock * BB,
unsigned NumPreds,
SSAUpdater * Updater )
inlinestatic

CreateEmptyPHI - Create a new PHI instruction in the specified block.

Reserve space for the operands but do not fill them in yet.

Definition at line 295 of file SSAUpdater.cpp.

References llvm::BasicBlock::begin(), llvm::PHINode::Create(), llvm::DebugLoc::getUnknown(), and PHI.

◆ FindPredecessorBlocks()

void llvm::SSAUpdaterTraits< SSAUpdater >::FindPredecessorBlocks ( BasicBlock * BB,
SmallVectorImpl< BasicBlock * > * Preds )
inlinestatic

FindPredecessorBlocks - Put the predecessors of Info->BB into the Preds vector, set Info->NumPreds, and allocate space in Info->Preds.

Definition at line 276 of file SSAUpdater.cpp.

References llvm::append_range(), llvm::BasicBlock::begin(), llvm::dyn_cast(), and llvm::predecessors().

◆ GetPHIValue()

Value * llvm::SSAUpdaterTraits< SSAUpdater >::GetPHIValue ( PHINode * PHI)
inlinestatic

GetPHIValue - For the specified PHI instruction, return the value that it defines.

Definition at line 330 of file SSAUpdater.cpp.

References PHI.

◆ GetPoisonVal()

Value * llvm::SSAUpdaterTraits< SSAUpdater >::GetPoisonVal ( BasicBlock * BB,
SSAUpdater * Updater )
inlinestatic

GetPoisonVal - Get a poison value of the same type as the value being handled.

Definition at line 289 of file SSAUpdater.cpp.

References llvm::PoisonValue::get().

◆ PHI_begin()

PHI_iterator llvm::SSAUpdaterTraits< SSAUpdater >::PHI_begin ( PhiT * PHI)
inlinestatic

Definition at line 269 of file SSAUpdater.cpp.

References PHI.

◆ PHI_end()

PHI_iterator llvm::SSAUpdaterTraits< SSAUpdater >::PHI_end ( PhiT * PHI)
inlinestatic

Definition at line 270 of file SSAUpdater.cpp.

References PHI.

◆ ValueIsNewPHI()

PHINode * llvm::SSAUpdaterTraits< SSAUpdater >::ValueIsNewPHI ( Value * Val,
SSAUpdater * Updater )
inlinestatic

ValueIsNewPHI - Like ValueIsPHI but also check if the PHI has no source operands, i.e., it was just added.

Definition at line 321 of file SSAUpdater.cpp.

References PHI, and ValueIsPHI().

◆ ValueIsPHI()

PHINode * llvm::SSAUpdaterTraits< SSAUpdater >::ValueIsPHI ( Value * Val,
SSAUpdater * Updater )
inlinestatic

ValueIsPHI - Check if a value is a PHI.

Definition at line 315 of file SSAUpdater.cpp.

References llvm::dyn_cast().

Referenced by ValueIsNewPHI().


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