LLVM 22.0.0git
AMDGPUUnifyDivergentExitNodes.cpp File Reference

Go to the source code of this file.

Macros

#define DEBUG_TYPE   "amdgpu-unify-divergent-exit-nodes"

Functions

 INITIALIZE_PASS_BEGIN (AMDGPUUnifyDivergentExitNodes, DEBUG_TYPE, "Unify divergent function exit nodes", false, false) INITIALIZE_PASS_END(AMDGPUUnifyDivergentExitNodes
static bool isUniformlyReached (const UniformityInfo &UA, BasicBlock &BB)

Variables

 DEBUG_TYPE
Unify divergent function exit nodes
Unify divergent function exit false

Macro Definition Documentation

◆ DEBUG_TYPE

#define DEBUG_TYPE   "amdgpu-unify-divergent-exit-nodes"

Definition at line 53 of file AMDGPUUnifyDivergentExitNodes.cpp.

Function Documentation

◆ INITIALIZE_PASS_BEGIN()

INITIALIZE_PASS_BEGIN ( AMDGPUUnifyDivergentExitNodes ,
DEBUG_TYPE ,
"Unify divergent function exit nodes" ,
false ,
false  )

◆ isUniformlyReached()

bool isUniformlyReached ( const UniformityInfo & UA,
BasicBlock & BB )
static
Returns
true if BB is reachable through only uniform branches. XXX - Is there a more efficient way to find this?

Definition at line 118 of file AMDGPUUnifyDivergentExitNodes.cpp.

References llvm::BasicBlock::getTerminator(), llvm::SmallPtrSetImpl< PtrType >::insert(), llvm::GenericUniformityInfo< ContextT >::isUniform(), and llvm::predecessors().

Variable Documentation

◆ DEBUG_TYPE

DEBUG_TYPE

Definition at line 92 of file AMDGPUUnifyDivergentExitNodes.cpp.

◆ false

Unify divergent function exit false

Definition at line 93 of file AMDGPUUnifyDivergentExitNodes.cpp.

◆ nodes

Unify divergent function exit nodes