LLVM 18.0.0git
|
#include "Target/DirectX/DXILOpBuilder.h"
Public Member Functions | |
DXILOpBuilder (Module &M, IRBuilderBase &B) | |
CallInst * | createDXILOpCall (dxil::OpCode OpCode, Type *OverloadTy, llvm::iterator_range< Use * > Args) |
Type * | getOverloadTy (dxil::OpCode OpCode, FunctionType *FT, bool NoOpCodeParam) |
Static Public Member Functions | |
static const char * | getOpCodeName (dxil::OpCode DXILOp) |
Definition at line 29 of file DXILOpBuilder.h.
|
inline |
Definition at line 31 of file DXILOpBuilder.h.
CallInst * llvm::dxil::DXILOpBuilder::createDXILOpCall | ( | dxil::OpCode | OpCode, |
Type * | OverloadTy, | ||
llvm::iterator_range< Use * > | Args | ||
) |
Definition at line 261 of file DXILOpBuilder.cpp.
References llvm::SmallVectorImpl< T >::append(), llvm::IRBuilderBase::CreateCall(), llvm::SmallVectorImpl< T >::emplace_back(), llvm::IRBuilderBase::getInt32(), and getOrCreateDXILOpFunction().
Referenced by lowerIntrinsic().
Definition at line 321 of file DXILOpBuilder.cpp.
Type * llvm::dxil::DXILOpBuilder::getOverloadTy | ( | dxil::OpCode | OpCode, |
FunctionType * | FT, | ||
bool | NoOpCodeParam | ||
) |
Definition at line 270 of file DXILOpBuilder.cpp.
References llvm::dxil::CBUFFER_RET, llvm::Type::getContext(), llvm::Type::getDoubleTy(), llvm::Type::getFloatTy(), llvm::Type::getHalfTy(), llvm::Type::getInt16Ty(), llvm::Type::getInt1Ty(), llvm::Type::getInt32Ty(), llvm::Type::getInt64Ty(), llvm::Type::getInt8Ty(), llvm::FunctionType::getParamType(), llvm::FunctionType::getReturnType(), llvm::Type::getVoidTy(), llvm_unreachable, OpCodeProperty::OverloadParamIndex, OpCodeProperty::OverloadTys, and llvm::dxil::RESOURCE_RET.
Referenced by lowerIntrinsic().