LLVM 24.0.0git
DXILLegalizePass.cpp File Reference

Go to the source code of this file.

Macros

#define DEBUG_TYPE   "dxil-legalize"

Functions

static bool legalizeFreeze (Instruction &I, SmallVectorImpl< Instruction * > &ToRemove, DenseMap< Value *, Value * >)
static bool fixI8UseChain (Instruction &I, SmallVectorImpl< Instruction * > &ToRemove, DenseMap< Value *, Value * > &ReplacedValues)
static bool upcastI8AllocasAndUses (Instruction &I, SmallVectorImpl< Instruction * > &ToRemove, DenseMap< Value *, Value * > &ReplacedValues)
static bool downcastI64toI32InsertExtractElements (Instruction &I, SmallVectorImpl< Instruction * > &ToRemove, DenseMap< Value *, Value * > &)
static bool updateFnegToFsub (Instruction &I, SmallVectorImpl< Instruction * > &ToRemove, DenseMap< Value *, Value * > &)
static bool legalizeFloatAtomicExchange (Instruction &I, SmallVectorImpl< Instruction * > &ToRemove, DenseMap< Value *, Value * > &)
static bool resolveUnreachableSwitchDefault (Instruction &I, SmallVectorImpl< Instruction * > &ToRemove, DenseMap< Value *, Value * > &)
static bool legalizeScalarLoadStoreOnArrays (Instruction &I, SmallVectorImpl< Instruction * > &ToRemove, DenseMap< Value *, Value * > &)
 INITIALIZE_PASS_BEGIN (DXILLegalizeLegacy, DEBUG_TYPE, "DXIL Legalizer", false, false) INITIALIZE_PASS_END(DXILLegalizeLegacy

Variables

 DEBUG_TYPE
DXIL Legalizer
DXIL false

Macro Definition Documentation

◆ DEBUG_TYPE

#define DEBUG_TYPE   "dxil-legalize"

Definition at line 25 of file DXILLegalizePass.cpp.

Function Documentation

◆ downcastI64toI32InsertExtractElements()

bool downcastI64toI32InsertExtractElements ( Instruction & I,
SmallVectorImpl< Instruction * > & ToRemove,
DenseMap< Value *, Value * > &  )
static

◆ fixI8UseChain()

◆ INITIALIZE_PASS_BEGIN()

INITIALIZE_PASS_BEGIN ( DXILLegalizeLegacy ,
DEBUG_TYPE ,
"DXIL Legalizer" ,
false ,
false  )

References DEBUG_TYPE.

◆ legalizeFloatAtomicExchange()

◆ legalizeFreeze()

bool legalizeFreeze ( Instruction & I,
SmallVectorImpl< Instruction * > & ToRemove,
DenseMap< Value *, Value * >  )
static

Definition at line 29 of file DXILLegalizePass.cpp.

References llvm::dyn_cast(), I, and ToRemove.

◆ legalizeScalarLoadStoreOnArrays()

◆ resolveUnreachableSwitchDefault()

◆ upcastI8AllocasAndUses()

bool upcastI8AllocasAndUses ( Instruction & I,
SmallVectorImpl< Instruction * > & ToRemove,
DenseMap< Value *, Value * > & ReplacedValues )
static

◆ updateFnegToFsub()

bool updateFnegToFsub ( Instruction & I,
SmallVectorImpl< Instruction * > & ToRemove,
DenseMap< Value *, Value * > &  )
static

Definition at line 345 of file DXILLegalizePass.cpp.

References I, and ToRemove.

Variable Documentation

◆ DEBUG_TYPE

DEBUG_TYPE

Definition at line 572 of file DXILLegalizePass.cpp.

◆ false

DXIL false

Definition at line 572 of file DXILLegalizePass.cpp.

◆ Legalizer

DXIL Legalizer