LLVM: llvm::GenericSyncDependenceAnalysis< ContextT > Class Template Reference (original) (raw)

Locate join blocks for disjoint paths starting at a divergent branch. More...

#include "[llvm/ADT/GenericUniformityImpl.h](GenericUniformityImpl%5F8h%5Fsource.html)"

Public Types
using BlockT = typename ContextT::BlockT
using DominatorTreeT = typename ContextT::DominatorTreeT
using FunctionT = typename ContextT::FunctionT
using ValueRefT = typename ContextT::ValueRefT
using InstructionT = typename ContextT::InstructionT
using CycleInfoT = GenericCycleInfo
using CycleT = typename CycleInfoT::CycleT
using ConstBlockSet = SmallPtrSet<const BlockT *, 4>
using ModifiedPO = ModifiedPostOrder
using BlockLabelMap = DenseMap<const BlockT *, const BlockT *>
using DivergencePropagatorT = DivergencePropagator

template
class llvm::GenericSyncDependenceAnalysis< ContextT >

Locate join blocks for disjoint paths starting at a divergent branch.

An analysis per divergent branch that returns the set of basic blocks whose phi nodes become divergent due to divergent control. These are the blocks that are reachable by two disjoint paths from the branch, or cycle exits reachable along a path that is disjoint from a path to the cycle latch.

Definition at line 262 of file GenericUniformityImpl.h.

BlockLabelMap

template

BlockT

template

ConstBlockSet

template

CycleInfoT

template

CycleT

template

DivergencePropagatorT

template

DominatorTreeT

template

FunctionT

template

InstructionT

template

ModifiedPO

template

ValueRefT

template

getJoinBlocks()


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