LLVM 19.0.0git
Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | List of all members
llvm::GenericSSAContext< _FunctionT > Class Template Reference

#include "llvm/ADT/GenericSSAContext.h"

Public Types

using ValueRefT = typename SSATraits::ValueRefT
 
using ConstValueRefT = typename SSATraits::ConstValueRefT
 
using InstructionT = typename SSATraits::InstructionT
 
using UseT = typename SSATraits::UseT
 
using BlockT = typename SSATraits::BlockT
 
using FunctionT = typename SSATraits::FunctionT
 
using DominatorTreeT = DominatorTreeBase< BlockT, false >
 

Public Member Functions

 GenericSSAContext ()=default
 
 GenericSSAContext (const FunctionT *F)
 
const FunctionTgetFunction () const
 
const BlockTgetDefBlock (ConstValueRefT value) const
 
Printable print (const BlockT *block) const
 
Printable printAsOperand (const BlockT *BB) const
 
Printable print (const InstructionT *inst) const
 
Printable print (ConstValueRefT value) const
 

Static Public Member Functions

static Intrinsic::ID getIntrinsicID (const InstructionT &I)
 
static void appendBlockDefs (SmallVectorImpl< ValueRefT > &defs, BlockT &block)
 
static void appendBlockDefs (SmallVectorImpl< ConstValueRefT > &defs, const BlockT &block)
 
static void appendBlockTerms (SmallVectorImpl< InstructionT * > &terms, BlockT &block)
 
static void appendBlockTerms (SmallVectorImpl< const InstructionT * > &terms, const BlockT &block)
 
static bool isConstantOrUndefValuePhi (const InstructionT &Instr)
 

Static Public Attributes

static constexpr ValueRefTValueRefNull = {}
 

Detailed Description

template<typename _FunctionT>
class llvm::GenericSSAContext< _FunctionT >

Definition at line 41 of file GenericSSAContext.h.

Member Typedef Documentation

◆ BlockT

template<typename _FunctionT >
using llvm::GenericSSAContext< _FunctionT >::BlockT = typename SSATraits::BlockT

Definition at line 70 of file GenericSSAContext.h.

◆ ConstValueRefT

template<typename _FunctionT >
using llvm::GenericSSAContext< _FunctionT >::ConstValueRefT = typename SSATraits::ConstValueRefT

Definition at line 53 of file GenericSSAContext.h.

◆ DominatorTreeT

template<typename _FunctionT >
using llvm::GenericSSAContext< _FunctionT >::DominatorTreeT = DominatorTreeBase<BlockT, false>

Definition at line 78 of file GenericSSAContext.h.

◆ FunctionT

template<typename _FunctionT >
using llvm::GenericSSAContext< _FunctionT >::FunctionT = typename SSATraits::FunctionT

Definition at line 74 of file GenericSSAContext.h.

◆ InstructionT

template<typename _FunctionT >
using llvm::GenericSSAContext< _FunctionT >::InstructionT = typename SSATraits::InstructionT

Definition at line 60 of file GenericSSAContext.h.

◆ UseT

template<typename _FunctionT >
using llvm::GenericSSAContext< _FunctionT >::UseT = typename SSATraits::UseT

Definition at line 64 of file GenericSSAContext.h.

◆ ValueRefT

template<typename _FunctionT >
using llvm::GenericSSAContext< _FunctionT >::ValueRefT = typename SSATraits::ValueRefT

Definition at line 49 of file GenericSSAContext.h.

Constructor & Destructor Documentation

◆ GenericSSAContext() [1/2]

template<typename _FunctionT >
llvm::GenericSSAContext< _FunctionT >::GenericSSAContext ( )
default

◆ GenericSSAContext() [2/2]

template<typename _FunctionT >
llvm::GenericSSAContext< _FunctionT >::GenericSSAContext ( const FunctionT F)
inline

Definition at line 81 of file GenericSSAContext.h.

References F.

Member Function Documentation

◆ appendBlockDefs() [1/2]

template<typename _FunctionT >
static void llvm::GenericSSAContext< _FunctionT >::appendBlockDefs ( SmallVectorImpl< ConstValueRefT > &  defs,
const BlockT block 
)
static

◆ appendBlockDefs() [2/2]

template<typename _FunctionT >
static void llvm::GenericSSAContext< _FunctionT >::appendBlockDefs ( SmallVectorImpl< ValueRefT > &  defs,
BlockT block 
)
static

◆ appendBlockTerms() [1/2]

template<typename _FunctionT >
static void llvm::GenericSSAContext< _FunctionT >::appendBlockTerms ( SmallVectorImpl< const InstructionT * > &  terms,
const BlockT block 
)
static

◆ appendBlockTerms() [2/2]

template<typename _FunctionT >
static void llvm::GenericSSAContext< _FunctionT >::appendBlockTerms ( SmallVectorImpl< InstructionT * > &  terms,
BlockT block 
)
static

◆ getDefBlock()

template<typename _FunctionT >
const BlockT * llvm::GenericSSAContext< _FunctionT >::getDefBlock ( ConstValueRefT  value) const

◆ getFunction()

template<typename _FunctionT >
const FunctionT * llvm::GenericSSAContext< _FunctionT >::getFunction ( ) const
inline

Definition at line 83 of file GenericSSAContext.h.

References F.

◆ getIntrinsicID()

template<typename _FunctionT >
static Intrinsic::ID llvm::GenericSSAContext< _FunctionT >::getIntrinsicID ( const InstructionT I)
static

◆ isConstantOrUndefValuePhi()

template<typename _FunctionT >
static bool llvm::GenericSSAContext< _FunctionT >::isConstantOrUndefValuePhi ( const InstructionT Instr)
static

◆ print() [1/3]

template<typename _FunctionT >
Printable llvm::GenericSSAContext< _FunctionT >::print ( const BlockT block) const

◆ print() [2/3]

template<typename _FunctionT >
Printable llvm::GenericSSAContext< _FunctionT >::print ( const InstructionT inst) const

◆ print() [3/3]

template<typename _FunctionT >
Printable llvm::GenericSSAContext< _FunctionT >::print ( ConstValueRefT  value) const

◆ printAsOperand()

template<typename _FunctionT >
Printable llvm::GenericSSAContext< _FunctionT >::printAsOperand ( const BlockT BB) const

Member Data Documentation

◆ ValueRefNull

template<typename _FunctionT >
constexpr ValueRefT* llvm::GenericSSAContext< _FunctionT >::ValueRefNull = {}
staticconstexpr

Definition at line 57 of file GenericSSAContext.h.


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