LLVM API Documentation

Classes | Public Types | Static Public Member Functions
llvm::SSAUpdaterTraits< SSAUpdater > Class Template Reference

List of all members.

Classes

class  PHI_iterator

Public Types

typedef BasicBlock BlkT
typedef ValueValT
typedef PHINode PhiT
typedef succ_iterator BlkSucc_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)
static ValueGetUndefVal (BasicBlock *BB, SSAUpdater *Updater)
static ValueCreateEmptyPHI (BasicBlock *BB, unsigned NumPreds, SSAUpdater *Updater)
static void AddPHIOperand (PHINode *PHI, Value *Val, BasicBlock *Pred)
static PHINodeInstrIsPHI (Instruction *I)
static PHINodeValueIsPHI (Value *Val, SSAUpdater *Updater)
static PHINodeValueIsNewPHI (Value *Val, SSAUpdater *Updater)
static ValueGetPHIValue (PHINode *PHI)

Detailed Description

template<>
class llvm::SSAUpdaterTraits< SSAUpdater >

Definition at line 207 of file SSAUpdater.cpp.


Member Typedef Documentation

typedef succ_iterator llvm::SSAUpdaterTraits< SSAUpdater >::BlkSucc_iterator

Definition at line 213 of file SSAUpdater.cpp.

typedef BasicBlock llvm::SSAUpdaterTraits< SSAUpdater >::BlkT

Definition at line 209 of file SSAUpdater.cpp.

typedef PHINode llvm::SSAUpdaterTraits< SSAUpdater >::PhiT

Definition at line 211 of file SSAUpdater.cpp.

typedef Value* llvm::SSAUpdaterTraits< SSAUpdater >::ValT

Definition at line 210 of file SSAUpdater.cpp.


Member Function Documentation

static void llvm::SSAUpdaterTraits< SSAUpdater >::AddPHIOperand ( PHINode PHI,
Value Val,
BasicBlock Pred 
) [inline, static]

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

Definition at line 273 of file SSAUpdater.cpp.

References llvm::PHINode::addIncoming().

static BlkSucc_iterator llvm::SSAUpdaterTraits< SSAUpdater >::BlkSucc_begin ( BlkT BB) [inline, static]

Definition at line 214 of file SSAUpdater.cpp.

References llvm::succ_begin().

static BlkSucc_iterator llvm::SSAUpdaterTraits< SSAUpdater >::BlkSucc_end ( BlkT BB) [inline, static]

Definition at line 215 of file SSAUpdater.cpp.

References llvm::succ_end().

static Value* llvm::SSAUpdaterTraits< SSAUpdater >::CreateEmptyPHI ( BasicBlock BB,
unsigned  NumPreds,
SSAUpdater Updater 
) [inline, static]

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 264 of file SSAUpdater.cpp.

References llvm::PHINode::Create(), llvm::BasicBlock::front(), and llvm::TargetOpcode::PHI.

static void llvm::SSAUpdaterTraits< SSAUpdater >::FindPredecessorBlocks ( BasicBlock BB,
SmallVectorImpl< BasicBlock * > *  Preds 
) [inline, static]

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

Definition at line 242 of file SSAUpdater.cpp.

References llvm::BasicBlock::begin(), llvm::pred_begin(), llvm::pred_end(), and llvm::SmallVectorTemplateBase< T, isPodLike >::push_back().

static Value* llvm::SSAUpdaterTraits< SSAUpdater >::GetPHIValue ( PHINode PHI) [inline, static]

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

Definition at line 300 of file SSAUpdater.cpp.

References llvm::TargetOpcode::PHI.

static Value* llvm::SSAUpdaterTraits< SSAUpdater >::GetUndefVal ( BasicBlock BB,
SSAUpdater Updater 
) [inline, static]

GetUndefVal - Get an undefined value of the same type as the value being handled.

Definition at line 258 of file SSAUpdater.cpp.

References llvm::UndefValue::get().

static PHINode* llvm::SSAUpdaterTraits< SSAUpdater >::InstrIsPHI ( Instruction I) [inline, static]

InstrIsPHI - Check if an instruction is a PHI.

Definition at line 279 of file SSAUpdater.cpp.

References llvm::dyn_cast(), and I.

static PHI_iterator llvm::SSAUpdaterTraits< SSAUpdater >::PHI_begin ( PhiT PHI) [inline, static]

Definition at line 235 of file SSAUpdater.cpp.

static PHI_iterator llvm::SSAUpdaterTraits< SSAUpdater >::PHI_end ( PhiT PHI) [inline, static]

Definition at line 236 of file SSAUpdater.cpp.

static PHINode* llvm::SSAUpdaterTraits< SSAUpdater >::ValueIsNewPHI ( Value Val,
SSAUpdater Updater 
) [inline, static]

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

Definition at line 291 of file SSAUpdater.cpp.

References llvm::PHINode::getNumIncomingValues(), and llvm::TargetOpcode::PHI.

static PHINode* llvm::SSAUpdaterTraits< SSAUpdater >::ValueIsPHI ( Value Val,
SSAUpdater Updater 
) [inline, static]

ValueIsPHI - Check if a value is a PHI.

Definition at line 285 of file SSAUpdater.cpp.

References llvm::dyn_cast().


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