Add GL_EXT_shader_image_int64 support (#2409)
This commit is contained in:
@@ -1,20 +1,25 @@
|
||||
spv.imageLoadStoreLod.frag
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 8000a
|
||||
// Id's are bound by 82
|
||||
// Id's are bound by 148
|
||||
|
||||
Capability Shader
|
||||
Capability Int64
|
||||
Capability ImageCubeArray
|
||||
Capability SparseResidency
|
||||
Capability Image1D
|
||||
Capability ImageReadWriteLodAMD
|
||||
Capability Int64ImageEXT
|
||||
Extension "SPV_AMD_shader_image_load_store_lod"
|
||||
Extension "SPV_EXT_shader_image_int64"
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 77
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Source GLSL 450
|
||||
SourceExtension "GL_AMD_shader_image_load_store_lod"
|
||||
SourceExtension "GL_ARB_gpu_shader_int64"
|
||||
SourceExtension "GL_EXT_shader_image_int64"
|
||||
Name 4 "main"
|
||||
Name 9 "f4"
|
||||
Name 14 "i1D"
|
||||
@@ -27,6 +32,18 @@ spv.imageLoadStoreLod.frag
|
||||
Name 65 "ResType"
|
||||
Name 71 "uiCubeArray"
|
||||
Name 77 "fragColor"
|
||||
Name 86 "Buf"
|
||||
MemberName 86(Buf) 0 "i64v4"
|
||||
MemberName 86(Buf) 1 "u64v4"
|
||||
Name 88 ""
|
||||
Name 92 "i64i1D"
|
||||
Name 102 "i64i2D"
|
||||
Name 111 "i64i3D"
|
||||
Name 120 "u64iCube"
|
||||
Name 127 "u64i1DArray"
|
||||
Name 133 "u64i2DArray"
|
||||
Name 136 "ResType"
|
||||
Name 142 "u64iCubeArray"
|
||||
Decorate 14(i1D) DescriptorSet 0
|
||||
Decorate 14(i1D) Binding 0
|
||||
Decorate 24(i2D) DescriptorSet 0
|
||||
@@ -42,6 +59,25 @@ spv.imageLoadStoreLod.frag
|
||||
Decorate 71(uiCubeArray) DescriptorSet 0
|
||||
Decorate 71(uiCubeArray) Binding 6
|
||||
Decorate 77(fragColor) Location 0
|
||||
MemberDecorate 86(Buf) 0 Offset 0
|
||||
MemberDecorate 86(Buf) 1 Offset 32
|
||||
Decorate 86(Buf) BufferBlock
|
||||
Decorate 88 DescriptorSet 0
|
||||
Decorate 88 Binding 14
|
||||
Decorate 92(i64i1D) DescriptorSet 0
|
||||
Decorate 92(i64i1D) Binding 7
|
||||
Decorate 102(i64i2D) DescriptorSet 0
|
||||
Decorate 102(i64i2D) Binding 8
|
||||
Decorate 111(i64i3D) DescriptorSet 0
|
||||
Decorate 111(i64i3D) Binding 9
|
||||
Decorate 120(u64iCube) DescriptorSet 0
|
||||
Decorate 120(u64iCube) Binding 10
|
||||
Decorate 127(u64i1DArray) DescriptorSet 0
|
||||
Decorate 127(u64i1DArray) Binding 11
|
||||
Decorate 133(u64i2DArray) DescriptorSet 0
|
||||
Decorate 133(u64i2DArray) Binding 12
|
||||
Decorate 142(u64iCubeArray) DescriptorSet 0
|
||||
Decorate 142(u64iCubeArray) Binding 13
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeFloat 32
|
||||
@@ -88,6 +124,38 @@ spv.imageLoadStoreLod.frag
|
||||
71(uiCubeArray): 70(ptr) Variable UniformConstant
|
||||
76: TypePointer Output 7(fvec4)
|
||||
77(fragColor): 76(ptr) Variable Output
|
||||
82: TypeInt 64 1
|
||||
83: TypeVector 82(int64_t) 4
|
||||
84: TypeInt 64 0
|
||||
85: TypeVector 84(int64_t) 4
|
||||
86(Buf): TypeStruct 83(i64vec4) 85(i64vec4)
|
||||
87: TypePointer Uniform 86(Buf)
|
||||
88: 87(ptr) Variable Uniform
|
||||
89: 16(int) Constant 0
|
||||
90: TypeImage 82(int64_t) 1D nonsampled format:R64i
|
||||
91: TypePointer UniformConstant 90
|
||||
92(i64i1D): 91(ptr) Variable UniformConstant
|
||||
95: TypePointer Uniform 83(i64vec4)
|
||||
100: TypeImage 82(int64_t) 2D nonsampled format:R64i
|
||||
101: TypePointer UniformConstant 100
|
||||
102(i64i2D): 101(ptr) Variable UniformConstant
|
||||
109: TypeImage 82(int64_t) 3D nonsampled format:R64i
|
||||
110: TypePointer UniformConstant 109
|
||||
111(i64i3D): 110(ptr) Variable UniformConstant
|
||||
118: TypeImage 84(int64_t) Cube nonsampled format:R64ui
|
||||
119: TypePointer UniformConstant 118
|
||||
120(u64iCube): 119(ptr) Variable UniformConstant
|
||||
122: TypePointer Uniform 85(i64vec4)
|
||||
125: TypeImage 84(int64_t) 1D array nonsampled format:R64ui
|
||||
126: TypePointer UniformConstant 125
|
||||
127(u64i1DArray): 126(ptr) Variable UniformConstant
|
||||
131: TypeImage 84(int64_t) 2D array nonsampled format:R64ui
|
||||
132: TypePointer UniformConstant 131
|
||||
133(u64i2DArray): 132(ptr) Variable UniformConstant
|
||||
136(ResType): TypeStruct 16(int) 85(i64vec4)
|
||||
140: TypeImage 84(int64_t) Cube array nonsampled format:R64ui
|
||||
141: TypePointer UniformConstant 140
|
||||
142(u64iCubeArray): 141(ptr) Variable UniformConstant
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
9(f4): 8(ptr) Variable Function
|
||||
@@ -131,5 +199,46 @@ spv.imageLoadStoreLod.frag
|
||||
80: 7(fvec4) ConvertUToF 79
|
||||
81: 7(fvec4) FAdd 78 80
|
||||
Store 77(fragColor) 81
|
||||
93: 90 Load 92(i64i1D)
|
||||
94: 83(i64vec4) ImageRead 93 17 Lod 18
|
||||
96: 95(ptr) AccessChain 88 89
|
||||
97: 83(i64vec4) Load 96
|
||||
98: 83(i64vec4) IAdd 97 94
|
||||
99: 95(ptr) AccessChain 88 89
|
||||
Store 99 98
|
||||
103: 100 Load 102(i64i2D)
|
||||
104: 83(i64vec4) ImageRead 103 28 Lod 18
|
||||
105: 95(ptr) AccessChain 88 89
|
||||
106: 83(i64vec4) Load 105
|
||||
107: 83(i64vec4) IAdd 106 104
|
||||
108: 95(ptr) AccessChain 88 89
|
||||
Store 108 107
|
||||
112: 109 Load 111(i64i3D)
|
||||
113: 83(i64vec4) ImageRead 112 40 Lod 18
|
||||
114: 95(ptr) AccessChain 88 89
|
||||
115: 83(i64vec4) Load 114
|
||||
116: 83(i64vec4) IAdd 115 113
|
||||
117: 95(ptr) AccessChain 88 89
|
||||
Store 117 116
|
||||
121: 118 Load 120(u64iCube)
|
||||
123: 122(ptr) AccessChain 88 17
|
||||
124: 85(i64vec4) Load 123
|
||||
ImageWrite 121 40 124 Lod 18
|
||||
128: 125 Load 127(u64i1DArray)
|
||||
129: 122(ptr) AccessChain 88 17
|
||||
130: 85(i64vec4) Load 129
|
||||
ImageWrite 128 28 130 Lod 18
|
||||
134: 131 Load 133(u64i2DArray)
|
||||
135: 122(ptr) AccessChain 88 17
|
||||
137:136(ResType) ImageSparseRead 134 40 Lod 18
|
||||
138: 85(i64vec4) CompositeExtract 137 1
|
||||
Store 135 138
|
||||
139: 16(int) CompositeExtract 137 0
|
||||
143: 140 Load 142(u64iCubeArray)
|
||||
144: 122(ptr) AccessChain 88 17
|
||||
145:136(ResType) ImageSparseRead 143 40 Lod 18
|
||||
146: 85(i64vec4) CompositeExtract 145 1
|
||||
Store 144 146
|
||||
147: 16(int) CompositeExtract 145 0
|
||||
Return
|
||||
FunctionEnd
|
||||
|
||||
Reference in New Issue
Block a user