LLVM: llvm::dxil::DXILOpBuilder Class Reference (original) (raw)
#include "[Target/DirectX/DXILOpBuilder.h](DXILOpBuilder%5F8h%5Fsource.html)"
| Public Member Functions | |
|---|---|
| DXILOpBuilder (Module &M) | |
| IRBuilder & | getIRB () |
| CallInst * | createOp (dxil::OpCode Op, ArrayRef< Value * > Args, const Twine &Name="", Type *RetTy=nullptr) |
| Create a call instruction for the given DXIL op. | |
| Expected< CallInst * > | tryCreateOp (dxil::OpCode Op, ArrayRef< Value * > Args, const Twine &Name="", Type *RetTy=nullptr) |
| Try to create a call instruction for the given DXIL op. | |
| StructType * | getResRetType (Type *ElementTy) |
| Get a dx.types.ResRet type with the given element type. | |
| StructType * | getCBufRetType (Type *ElementTy) |
| Get a dx.types.CBufRet type with the given element type. | |
| StructType * | getHandleType () |
| Get the dx.types.Handle type. | |
| Constant * | getResBind (uint32_t LowerBound, uint32_t UpperBound, uint32_t SpaceID, dxil::ResourceClass RC) |
| Get a constant dx.types.ResBind value. | |
| Constant * | getResProps (uint32_t Word0, uint32_t Word1) |
| Get a constant dx.types.ResourceProperties value. |
Definition at line 33 of file DXILOpBuilder.h.
| llvm::dxil::DXILOpBuilder::DXILOpBuilder | ( | Module & | M | ) |
|---|
◆ createOp()
◆ getCBufRetType()
| StructType * llvm::dxil::DXILOpBuilder::getCBufRetType | ( | Type * | ElementTy | ) |
|---|
Get a dx.types.CBufRet type with the given element type.
Definition at line 590 of file DXILOpBuilder.cpp.
◆ getHandleType()
| StructType * llvm::dxil::DXILOpBuilder::getHandleType | ( | ) |
|---|
◆ getIRB()
| IRBuilder & llvm::dxil::DXILOpBuilder::getIRB ( ) | inline |
|---|
◆ getOpCodeName()
◆ getResBind()
◆ getResProps()
◆ getResRetType()
| StructType * llvm::dxil::DXILOpBuilder::getResRetType | ( | Type * | ElementTy | ) |
|---|
Get a dx.types.ResRet type with the given element type.
Definition at line 586 of file DXILOpBuilder.cpp.
◆ tryCreateOp()
Try to create a call instruction for the given DXIL op.
Fails if the overload is invalid.
Definition at line 501 of file DXILOpBuilder.cpp.
References llvm::SmallVectorImpl< T >::append(), llvm::ArrayRef(), constructOverloadName(), getDXILOpFunctionType(), getOverloadKind(), getPropIndex(), getShaderKindEnum(), llvm::dxil::makeOpError(), OpCodeProperty::OverloadParamIndex, OpCodeProperty::Overloads, llvm::SmallVectorTemplateBase< T, bool >::push_back(), setDXILAttributes(), OpCodeProperty::Stages, and llvm::to_underlying().
Referenced by createOp().
The documentation for this class was generated from the following files:
- lib/Target/DirectX/DXILOpBuilder.h
- lib/Target/DirectX/DXILOpBuilder.cpp