File indexing completed on 2026-05-10 08:43:55
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013 #ifndef LLVM_FRONTEND_HLSL_HLSLRESOURCE_H
0014 #define LLVM_FRONTEND_HLSL_HLSLRESOURCE_H
0015
0016 #include "llvm/ADT/StringRef.h"
0017 #include "llvm/Support/DXILABI.h"
0018
0019 namespace llvm {
0020 class GlobalVariable;
0021 class MDNode;
0022
0023 namespace hlsl {
0024
0025
0026 using dxil::ResourceClass;
0027 using dxil::ElementType;
0028 using dxil::ResourceKind;
0029
0030 class FrontendResource {
0031 MDNode *Entry;
0032
0033 public:
0034 FrontendResource(MDNode *E);
0035 FrontendResource(GlobalVariable *GV, ResourceKind RK, ElementType ElTy,
0036 bool IsROV, uint32_t ResIndex, uint32_t Space);
0037
0038 GlobalVariable *getGlobalVariable();
0039 StringRef getSourceType();
0040 ResourceKind getResourceKind();
0041 ElementType getElementType();
0042 bool getIsROV();
0043 uint32_t getResourceIndex();
0044 uint32_t getSpace();
0045 MDNode *getMetadata() { return Entry; }
0046 };
0047 }
0048 }
0049
0050 #endif