LLVM 22.0.0git
DXILMemIntrinsics.cpp File Reference
#include "DXILMemIntrinsics.h"
#include "DirectX.h"
#include "llvm/Analysis/DXILResource.h"
#include "llvm/IR/IRBuilder.h"
#include "llvm/IR/IntrinsicInst.h"
#include "llvm/IR/IntrinsicsDirectX.h"
#include "llvm/IR/Module.h"

Go to the source code of this file.

Classes

class  DXILMemIntrinsicsLegacy

Macros

#define DEBUG_TYPE   "dxil-mem-intrinsics"

Functions

void expandMemSet (MemSetInst *MemSet)
static TypegetPointeeType (Value *Ptr, const DataLayout &DL)
static size_t flattenTypes (Type *ContainerTy, const DataLayout &DL, SmallVectorImpl< std::pair< Type *, size_t > > &FlatTys, size_t NextOffset=0)
void expandMemCpy (MemCpyInst *MemCpy)
void expandMemMove (MemMoveInst *MemMove)
static bool eliminateMemIntrinsics (Module &M)
 INITIALIZE_PASS_BEGIN (DXILMemIntrinsicsLegacy, DEBUG_TYPE, "DXIL Memory Intrinsic Elimination", false, false) INITIALIZE_PASS_END(DXILMemIntrinsicsLegacy

Variables

 DEBUG_TYPE
DXIL Memory Intrinsic Elimination
DXIL Memory Intrinsic false

Macro Definition Documentation

◆ DEBUG_TYPE

#define DEBUG_TYPE   "dxil-mem-intrinsics"

Definition at line 17 of file DXILMemIntrinsics.cpp.

Function Documentation

◆ eliminateMemIntrinsics()

◆ expandMemCpy()

◆ expandMemMove()

void expandMemMove ( MemMoveInst * MemMove)

Definition at line 181 of file DXILMemIntrinsics.cpp.

References llvm::report_fatal_error().

Referenced by eliminateMemIntrinsics().

◆ expandMemSet()

◆ flattenTypes()

size_t flattenTypes ( Type * ContainerTy,
const DataLayout & DL,
SmallVectorImpl< std::pair< Type *, size_t > > & FlatTys,
size_t NextOffset = 0 )
static

Definition at line 112 of file DXILMemIntrinsics.cpp.

References DL, llvm::dyn_cast(), E(), flattenTypes(), and I.

Referenced by expandMemCpy(), and flattenTypes().

◆ getPointeeType()

◆ INITIALIZE_PASS_BEGIN()

INITIALIZE_PASS_BEGIN ( DXILMemIntrinsicsLegacy ,
DEBUG_TYPE ,
"DXIL Memory Intrinsic Elimination" ,
false ,
false  )

References DEBUG_TYPE.

Variable Documentation

◆ DEBUG_TYPE

DEBUG_TYPE

Definition at line 233 of file DXILMemIntrinsics.cpp.

◆ Elimination

DXIL Memory Intrinsic Elimination

Definition at line 234 of file DXILMemIntrinsics.cpp.

◆ false

DXIL Memory Intrinsic false

Definition at line 234 of file DXILMemIntrinsics.cpp.