LLVM 22.0.0git
DXILForwardHandleAccesses.cpp File Reference
#include "DXILForwardHandleAccesses.h"
#include "DXILShaderFlags.h"
#include "DirectX.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/Analysis/DXILResource.h"
#include "llvm/Analysis/Loads.h"
#include "llvm/IR/DiagnosticInfo.h"
#include "llvm/IR/Dominators.h"
#include "llvm/IR/InstrTypes.h"
#include "llvm/IR/Instructions.h"
#include "llvm/IR/IntrinsicInst.h"
#include "llvm/IR/Intrinsics.h"
#include "llvm/IR/IntrinsicsDirectX.h"
#include "llvm/IR/Module.h"
#include "llvm/InitializePasses.h"
#include "llvm/Pass.h"
#include "llvm/Transforms/Utils/Local.h"

Go to the source code of this file.

Macros

#define DEBUG_TYPE   "dxil-forward-handle-accesses"

Functions

static void diagnoseAmbiguousHandle (IntrinsicInst *NewII, IntrinsicInst *PrevII)
static void diagnoseHandleNotFound (LoadInst *LI)
static void diagnoseUndominatedLoad (LoadInst *LI, IntrinsicInst *Handle)
static void processHandle (IntrinsicInst *II, DenseMap< GlobalVariable *, IntrinsicInst * > &HandleMap)
static bool forwardHandleAccesses (Function &F, DominatorTree &DT)
 INITIALIZE_PASS_BEGIN (DXILForwardHandleAccessesLegacy, DEBUG_TYPE, "DXIL Forward Handle Accesses", false, false) INITIALIZE_PASS_END(DXILForwardHandleAccessesLegacy

Variables

 DEBUG_TYPE
DXIL Forward Handle Accesses
DXIL Forward Handle false

Macro Definition Documentation

◆ DEBUG_TYPE

#define DEBUG_TYPE   "dxil-forward-handle-accesses"

Definition at line 27 of file DXILForwardHandleAccesses.cpp.

Function Documentation

◆ diagnoseAmbiguousHandle()

void diagnoseAmbiguousHandle ( IntrinsicInst * NewII,
IntrinsicInst * PrevII )
static

Definition at line 31 of file DXILForwardHandleAccesses.cpp.

References F, llvm::Instruction::getFunction(), and llvm::Value::getName().

Referenced by processHandle().

◆ diagnoseHandleNotFound()

void diagnoseHandleNotFound ( LoadInst * LI)
static

◆ diagnoseUndominatedLoad()

void diagnoseUndominatedLoad ( LoadInst * LI,
IntrinsicInst * Handle )
static

◆ forwardHandleAccesses()

◆ INITIALIZE_PASS_BEGIN()

INITIALIZE_PASS_BEGIN ( DXILForwardHandleAccessesLegacy ,
DEBUG_TYPE ,
"DXIL Forward Handle Accesses" ,
false ,
false  )

◆ processHandle()

Variable Documentation

◆ Accesses

◆ DEBUG_TYPE

DEBUG_TYPE

Definition at line 214 of file DXILForwardHandleAccesses.cpp.

◆ false

DXIL Forward Handle false

Definition at line 215 of file DXILForwardHandleAccesses.cpp.