llvm::sandboxir::PHINode

SandboxIR wrapper for an LLVM PHI node.

Synopsis

Declared in <llvm/SandboxIR/Instruction.h>

class PHINode final
    : public SingleLLVMInstructionImpl<llvm::PHINode>

Base Classes

NameDescription
SingleLLVMInstructionImpl<llvm::PHINode>Instructions that contain a single LLVM Instruction can inherit from this.

Type Aliases

NameDescription
const_block_iterator Const iterator over PHI incoming basic blocks.

Member Functions

NameDescription
addIncoming Add an incoming value and basic block.
block_begin Return an iterator to the first incoming block.
block_end Return an iterator past the last incoming block.
blocks Return a range over the incoming basic blocks.
getBasicBlockIndex Return the index of an incoming basic block.
getIncomingBlock getIncomingBlock overloads
getIncomingValue Return the incoming value at index Idx.
getIncomingValueForBlock Return the incoming value for basic block BB.
getNumIncomingValues Return the number of PHI incoming values.
hasConstantOrUndefValue Return true if all incomings are the same constant or undef.
hasConstantValue Return the constant value if all incomings are the same constant.
incoming_values Return a range over the incoming values.
isComplete Return true if every predecessor has an incoming value.
removeIncomingValue removeIncomingValue overloads
removeIncomingValueIf Remove incoming values matching a predicate.
replaceIncomingBlockWith Replace all uses of an incoming basic block.
setIncomingBlock Set an incoming PHI basic block.
setIncomingValue Set an incoming PHI value.

Static Member Functions

NameDescription
classof For isa/dyn_cast.
create Create and insert a new PHINode.
getIncomingValueNumForOperand Map an operand number to an incoming-value index.
getOperandNumForIncomingValue Map an incoming-value index to an operand number.

Friends

NameDescription
llvm::sandboxir::ContextOwns SandboxIR objects, maps them to LLVM IR, and tracks IR changes.

Non-Member Functions

NameDescription
getLoadStoreAddressSpaceReturn the address space of a load or store pointer.