LLVM  16.0.0git
Namespaces | Functions
SPIRVEmitIntrinsics.cpp File Reference
#include "SPIRV.h"
#include "SPIRVTargetMachine.h"
#include "SPIRVUtils.h"
#include "llvm/IR/IRBuilder.h"
#include "llvm/IR/InstIterator.h"
#include "llvm/IR/InstVisitor.h"
#include "llvm/IR/IntrinsicsSPIRV.h"
#include <queue>
Include dependency graph for SPIRVEmitIntrinsics.cpp:

Go to the source code of this file.

Namespaces

 llvm
 This is an optimization pass for GlobalISel generic memory operations.
 

Functions

void llvm::initializeSPIRVEmitIntrinsicsPass (PassRegistry &)
 
 INITIALIZE_PASS (SPIRVEmitIntrinsics, "emit-intrinsics", "SPIRV emit intrinsics", false, false) static inline bool isAssignTypeInstr(const Instruction *I)
 
static bool isMemInstrToReplace (Instruction *I)
 
static bool isAggrToReplace (const Value *V)
 
static void setInsertPointSkippingPhis (IRBuilder<> &B, Instruction *I)
 
static bool requireAssignType (Instruction *I)
 

Function Documentation

◆ INITIALIZE_PASS()

INITIALIZE_PASS ( SPIRVEmitIntrinsics  ,
"emit-intrinsics ,
"SPIRV emit intrinsics ,
false  ,
false   
) const

Definition at line 98 of file SPIRVEmitIntrinsics.cpp.

References I.

◆ isAggrToReplace()

static bool isAggrToReplace ( const Value V)
static

Definition at line 111 of file SPIRVEmitIntrinsics.cpp.

References llvm::Value::getType(), and llvm::Type::isVectorTy().

◆ isMemInstrToReplace()

static bool isMemInstrToReplace ( Instruction I)
static

Definition at line 106 of file SPIRVEmitIntrinsics.cpp.

References I.

◆ requireAssignType()

static bool requireAssignType ( Instruction I)
static

Definition at line 123 of file SPIRVEmitIntrinsics.cpp.

References I, and Intr.

◆ setInsertPointSkippingPhis()

static void setInsertPointSkippingPhis ( IRBuilder<> &  B,
Instruction I 
)
static

Definition at line 116 of file SPIRVEmitIntrinsics.cpp.

References B, and I.