Merge pull request #811 from steve-lunarg/combine-test

HLSL: set combined flag false for Buffer<>
This commit is contained in:
John Kessenich 2017-04-01 11:07:31 -06:00 committed by GitHub
commit c7fd73b784
6 changed files with 391 additions and 404 deletions

View File

@ -342,7 +342,7 @@ gl_FragCoord origin is upper left
0:51 'r50' ( temp float) 0:51 'r50' ( temp float)
0:51 Construct float ( temp float) 0:51 Construct float ( temp float)
0:? textureFetch ( temp 4-component vector of float) 0:? textureFetch ( temp 4-component vector of float)
0:51 'g_tTexbfs' (layout( r32f) uniform samplerBuffer) 0:51 'g_tTexbfs' (layout( r32f) uniform textureBuffer)
0:51 Convert uint to int ( temp int) 0:51 Convert uint to int ( temp int)
0:51 upos: direct index for structure ( uniform uint) 0:51 upos: direct index for structure ( uniform uint)
0:51 'anon@0' (layout( row_major std140) uniform block{ uniform int i, uniform uint u, uniform float f, uniform bool b, uniform 2-component vector of int i2, uniform 2-component vector of uint u2, uniform 2-component vector of float f2, uniform 2-component vector of bool b2, uniform uint upos, uniform float fpos}) 0:51 'anon@0' (layout( row_major std140) uniform block{ uniform int i, uniform uint u, uniform float f, uniform bool b, uniform 2-component vector of int i2, uniform 2-component vector of uint u2, uniform 2-component vector of float f2, uniform 2-component vector of bool b2, uniform uint upos, uniform float fpos})
@ -353,7 +353,7 @@ gl_FragCoord origin is upper left
0:52 'r51' ( temp float) 0:52 'r51' ( temp float)
0:52 Construct float ( temp float) 0:52 Construct float ( temp float)
0:? textureFetch ( temp 4-component vector of float) 0:? textureFetch ( temp 4-component vector of float)
0:52 'g_tTexbfs' (layout( r32f) uniform samplerBuffer) 0:52 'g_tTexbfs' (layout( r32f) uniform textureBuffer)
0:52 Convert float to int ( temp int) 0:52 Convert float to int ( temp int)
0:52 fpos: direct index for structure ( uniform float) 0:52 fpos: direct index for structure ( uniform float)
0:52 'anon@0' (layout( row_major std140) uniform block{ uniform int i, uniform uint u, uniform float f, uniform bool b, uniform 2-component vector of int i2, uniform 2-component vector of uint u2, uniform 2-component vector of float f2, uniform 2-component vector of bool b2, uniform uint upos, uniform float fpos}) 0:52 'anon@0' (layout( row_major std140) uniform block{ uniform int i, uniform uint u, uniform float f, uniform bool b, uniform 2-component vector of int i2, uniform 2-component vector of uint u2, uniform 2-component vector of float f2, uniform 2-component vector of bool b2, uniform uint upos, uniform float fpos})
@ -437,7 +437,7 @@ gl_FragCoord origin is upper left
0:20 0 (const int) 0:20 0 (const int)
0:? Linker Objects 0:? Linker Objects
0:? 'anon@0' (layout( row_major std140) uniform block{ uniform int i, uniform uint u, uniform float f, uniform bool b, uniform 2-component vector of int i2, uniform 2-component vector of uint u2, uniform 2-component vector of float f2, uniform 2-component vector of bool b2, uniform uint upos, uniform float fpos}) 0:? 'anon@0' (layout( row_major std140) uniform block{ uniform int i, uniform uint u, uniform float f, uniform bool b, uniform 2-component vector of int i2, uniform 2-component vector of uint u2, uniform 2-component vector of float f2, uniform 2-component vector of bool b2, uniform uint upos, uniform float fpos})
0:? 'g_tTexbfs' (layout( r32f) uniform samplerBuffer) 0:? 'g_tTexbfs' (layout( r32f) uniform textureBuffer)
0:? 'g_tTex1df4' ( uniform texture1D) 0:? 'g_tTex1df4' ( uniform texture1D)
0:? 'color' (layout( location=0) out 4-component vector of float) 0:? 'color' (layout( location=0) out 4-component vector of float)
@ -788,7 +788,7 @@ gl_FragCoord origin is upper left
0:51 'r50' ( temp float) 0:51 'r50' ( temp float)
0:51 Construct float ( temp float) 0:51 Construct float ( temp float)
0:? textureFetch ( temp 4-component vector of float) 0:? textureFetch ( temp 4-component vector of float)
0:51 'g_tTexbfs' (layout( r32f) uniform samplerBuffer) 0:51 'g_tTexbfs' (layout( r32f) uniform textureBuffer)
0:51 Convert uint to int ( temp int) 0:51 Convert uint to int ( temp int)
0:51 upos: direct index for structure ( uniform uint) 0:51 upos: direct index for structure ( uniform uint)
0:51 'anon@0' (layout( row_major std140) uniform block{ uniform int i, uniform uint u, uniform float f, uniform bool b, uniform 2-component vector of int i2, uniform 2-component vector of uint u2, uniform 2-component vector of float f2, uniform 2-component vector of bool b2, uniform uint upos, uniform float fpos}) 0:51 'anon@0' (layout( row_major std140) uniform block{ uniform int i, uniform uint u, uniform float f, uniform bool b, uniform 2-component vector of int i2, uniform 2-component vector of uint u2, uniform 2-component vector of float f2, uniform 2-component vector of bool b2, uniform uint upos, uniform float fpos})
@ -799,7 +799,7 @@ gl_FragCoord origin is upper left
0:52 'r51' ( temp float) 0:52 'r51' ( temp float)
0:52 Construct float ( temp float) 0:52 Construct float ( temp float)
0:? textureFetch ( temp 4-component vector of float) 0:? textureFetch ( temp 4-component vector of float)
0:52 'g_tTexbfs' (layout( r32f) uniform samplerBuffer) 0:52 'g_tTexbfs' (layout( r32f) uniform textureBuffer)
0:52 Convert float to int ( temp int) 0:52 Convert float to int ( temp int)
0:52 fpos: direct index for structure ( uniform float) 0:52 fpos: direct index for structure ( uniform float)
0:52 'anon@0' (layout( row_major std140) uniform block{ uniform int i, uniform uint u, uniform float f, uniform bool b, uniform 2-component vector of int i2, uniform 2-component vector of uint u2, uniform 2-component vector of float f2, uniform 2-component vector of bool b2, uniform uint upos, uniform float fpos}) 0:52 'anon@0' (layout( row_major std140) uniform block{ uniform int i, uniform uint u, uniform float f, uniform bool b, uniform 2-component vector of int i2, uniform 2-component vector of uint u2, uniform 2-component vector of float f2, uniform 2-component vector of bool b2, uniform uint upos, uniform float fpos})
@ -883,13 +883,13 @@ gl_FragCoord origin is upper left
0:20 0 (const int) 0:20 0 (const int)
0:? Linker Objects 0:? Linker Objects
0:? 'anon@0' (layout( row_major std140) uniform block{ uniform int i, uniform uint u, uniform float f, uniform bool b, uniform 2-component vector of int i2, uniform 2-component vector of uint u2, uniform 2-component vector of float f2, uniform 2-component vector of bool b2, uniform uint upos, uniform float fpos}) 0:? 'anon@0' (layout( row_major std140) uniform block{ uniform int i, uniform uint u, uniform float f, uniform bool b, uniform 2-component vector of int i2, uniform 2-component vector of uint u2, uniform 2-component vector of float f2, uniform 2-component vector of bool b2, uniform uint upos, uniform float fpos})
0:? 'g_tTexbfs' (layout( r32f) uniform samplerBuffer) 0:? 'g_tTexbfs' (layout( r32f) uniform textureBuffer)
0:? 'g_tTex1df4' ( uniform texture1D) 0:? 'g_tTex1df4' ( uniform texture1D)
0:? 'color' (layout( location=0) out 4-component vector of float) 0:? 'color' (layout( location=0) out 4-component vector of float)
// Module Version 10000 // Module Version 10000
// Generated by (magic number): 80001 // Generated by (magic number): 80001
// Id's are bound by 325 // Id's are bound by 322
Capability Shader Capability Shader
Capability Sampled1D Capability Sampled1D
@ -897,7 +897,7 @@ gl_FragCoord origin is upper left
Capability ImageQuery Capability ImageQuery
1: ExtInstImport "GLSL.std.450" 1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450 MemoryModel Logical GLSL450
EntryPoint Fragment 4 "main" 322 EntryPoint Fragment 4 "main" 319
ExecutionMode 4 OriginUpperLeft ExecutionMode 4 OriginUpperLeft
Name 4 "main" Name 4 "main"
Name 8 "PS_OUTPUT" Name 8 "PS_OUTPUT"
@ -938,19 +938,19 @@ gl_FragCoord origin is upper left
Name 229 "r42" Name 229 "r42"
Name 243 "r43" Name 243 "r43"
Name 255 "r50" Name 255 "r50"
Name 259 "g_tTexbfs" Name 258 "g_tTexbfs"
Name 268 "r51" Name 266 "r51"
Name 277 "sizeQueryTemp" Name 274 "sizeQueryTemp"
Name 280 "g_tTex1df4" Name 277 "g_tTex1df4"
Name 283 "WidthI" Name 280 "WidthI"
Name 286 "sizeQueryTemp" Name 283 "sizeQueryTemp"
Name 292 "NumberOfLevelsU" Name 289 "NumberOfLevelsU"
Name 295 "sizeQueryTemp" Name 292 "sizeQueryTemp"
Name 298 "WidthU" Name 295 "WidthU"
Name 300 "NumberOfLevelsI" Name 297 "NumberOfLevelsI"
Name 304 "sizeQueryTemp" Name 301 "sizeQueryTemp"
Name 313 "ps_output" Name 310 "ps_output"
Name 322 "color" Name 319 "color"
MemberDecorate 19($Global) 0 Offset 0 MemberDecorate 19($Global) 0 Offset 0
MemberDecorate 19($Global) 1 Offset 4 MemberDecorate 19($Global) 1 Offset 4
MemberDecorate 19($Global) 2 Offset 8 MemberDecorate 19($Global) 2 Offset 8
@ -963,9 +963,9 @@ gl_FragCoord origin is upper left
MemberDecorate 19($Global) 9 Offset 52 MemberDecorate 19($Global) 9 Offset 52
Decorate 19($Global) Block Decorate 19($Global) Block
Decorate 21 DescriptorSet 0 Decorate 21 DescriptorSet 0
Decorate 259(g_tTexbfs) DescriptorSet 0 Decorate 258(g_tTexbfs) DescriptorSet 0
Decorate 280(g_tTex1df4) DescriptorSet 0 Decorate 277(g_tTex1df4) DescriptorSet 0
Decorate 322(color) Location 0 Decorate 319(color) Location 0
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
6: TypeFloat 32 6: TypeFloat 32
@ -1013,24 +1013,23 @@ gl_FragCoord origin is upper left
109: 14(int) Constant 4 109: 14(int) Constant 4
110: TypePointer Uniform 16(ivec2) 110: TypePointer Uniform 16(ivec2)
256: TypeImage 6(float) Buffer sampled format:R32f 256: TypeImage 6(float) Buffer sampled format:R32f
257: TypeSampledImage 256 257: TypePointer UniformConstant 256
258: TypePointer UniformConstant 257 258(g_tTexbfs): 257(ptr) Variable UniformConstant
259(g_tTexbfs): 258(ptr) Variable UniformConstant 260: 14(int) Constant 8
261: 14(int) Constant 8 268: 14(int) Constant 9
270: 14(int) Constant 9 275: TypeImage 6(float) 1D sampled format:Unknown
278: TypeImage 6(float) 1D sampled format:Unknown 276: TypePointer UniformConstant 275
279: TypePointer UniformConstant 278 277(g_tTex1df4): 276(ptr) Variable UniformConstant
280(g_tTex1df4): 279(ptr) Variable UniformConstant 285: 15(int) Constant 6
288: 15(int) Constant 6 309: TypePointer Function 8(PS_OUTPUT)
312: TypePointer Function 8(PS_OUTPUT) 313: TypePointer Function 7(fvec4)
316: TypePointer Function 7(fvec4) 318: TypePointer Output 7(fvec4)
321: TypePointer Output 7(fvec4) 319(color): 318(ptr) Variable Output
322(color): 321(ptr) Variable Output
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
323:8(PS_OUTPUT) FunctionCall 10(@main() 320:8(PS_OUTPUT) FunctionCall 10(@main()
324: 7(fvec4) CompositeExtract 323 0 321: 7(fvec4) CompositeExtract 320 0
Store 322(color) 324 Store 319(color) 321
Return Return
FunctionEnd FunctionEnd
10(@main():8(PS_OUTPUT) Function None 9 10(@main():8(PS_OUTPUT) Function None 9
@ -1058,16 +1057,16 @@ gl_FragCoord origin is upper left
229(r42): 73(ptr) Variable Function 229(r42): 73(ptr) Variable Function
243(r43): 101(ptr) Variable Function 243(r43): 101(ptr) Variable Function
255(r50): 12(ptr) Variable Function 255(r50): 12(ptr) Variable Function
268(r51): 12(ptr) Variable Function 266(r51): 12(ptr) Variable Function
277(sizeQueryTemp): 37(ptr) Variable Function 274(sizeQueryTemp): 37(ptr) Variable Function
283(WidthI): 48(ptr) Variable Function 280(WidthI): 48(ptr) Variable Function
286(sizeQueryTemp): 37(ptr) Variable Function 283(sizeQueryTemp): 37(ptr) Variable Function
292(NumberOfLevelsU): 37(ptr) Variable Function 289(NumberOfLevelsU): 37(ptr) Variable Function
295(sizeQueryTemp): 37(ptr) Variable Function 292(sizeQueryTemp): 37(ptr) Variable Function
298(WidthU): 37(ptr) Variable Function 295(WidthU): 37(ptr) Variable Function
300(NumberOfLevelsI): 48(ptr) Variable Function 297(NumberOfLevelsI): 48(ptr) Variable Function
304(sizeQueryTemp): 37(ptr) Variable Function 301(sizeQueryTemp): 37(ptr) Variable Function
313(ps_output): 312(ptr) Variable Function 310(ps_output): 309(ptr) Variable Function
24: 23(ptr) AccessChain 21 22 24: 23(ptr) AccessChain 21 22
25: 15(int) Load 24 25: 15(int) Load 24
28: 26(bool) INotEqual 25 27 28: 26(bool) INotEqual 25 27
@ -1271,60 +1270,58 @@ gl_FragCoord origin is upper left
253: 17(ivec2) ExtInst 1(GLSL.std.450) 44(UClamp) 247 250 252 253: 17(ivec2) ExtInst 1(GLSL.std.450) 44(UClamp) 247 250 252
254: 16(ivec2) Bitcast 253 254: 16(ivec2) Bitcast 253
Store 243(r43) 254 Store 243(r43) 254
260: 257 Load 259(g_tTexbfs) 259: 256 Load 258(g_tTexbfs)
262: 23(ptr) AccessChain 21 261 261: 23(ptr) AccessChain 21 260
263: 15(int) Load 262 262: 15(int) Load 261
264: 14(int) Bitcast 263 263: 14(int) Bitcast 262
265: 256 Image 260 264: 7(fvec4) ImageFetch 259 263
266: 7(fvec4) ImageFetch 265 264 265: 6(float) CompositeExtract 264 0
267: 6(float) CompositeExtract 266 0 Store 255(r50) 265
Store 255(r50) 267 267: 256 Load 258(g_tTexbfs)
269: 257 Load 259(g_tTexbfs) 269: 33(ptr) AccessChain 21 268
271: 33(ptr) AccessChain 21 270 270: 6(float) Load 269
272: 6(float) Load 271 271: 14(int) ConvertFToS 270
273: 14(int) ConvertFToS 272 272: 7(fvec4) ImageFetch 267 271
274: 256 Image 269 273: 6(float) CompositeExtract 272 0
275: 7(fvec4) ImageFetch 274 273 Store 266(r51) 273
276: 6(float) CompositeExtract 275 0 278: 275 Load 277(g_tTex1df4)
Store 268(r51) 276 279: 15(int) ImageQuerySizeLod 278 53
281: 278 Load 280(g_tTex1df4) Store 274(sizeQueryTemp) 279
282: 15(int) ImageQuerySizeLod 281 53 281: 15(int) Load 274(sizeQueryTemp)
Store 277(sizeQueryTemp) 282 282: 14(int) Bitcast 281
284: 15(int) Load 277(sizeQueryTemp) Store 280(WidthI) 282
285: 14(int) Bitcast 284 284: 275 Load 277(g_tTex1df4)
Store 283(WidthI) 285 286: 15(int) ImageQuerySizeLod 284 285
287: 278 Load 280(g_tTex1df4) Store 283(sizeQueryTemp) 286
289: 15(int) ImageQuerySizeLod 287 288 287: 15(int) Load 283(sizeQueryTemp)
Store 286(sizeQueryTemp) 289 288: 14(int) Bitcast 287
290: 15(int) Load 286(sizeQueryTemp) Store 280(WidthI) 288
291: 14(int) Bitcast 290 290: 275 Load 277(g_tTex1df4)
Store 283(WidthI) 291 291: 15(int) ImageQueryLevels 290
293: 278 Load 280(g_tTex1df4) Store 289(NumberOfLevelsU) 291
294: 15(int) ImageQueryLevels 293 293: 275 Load 277(g_tTex1df4)
Store 292(NumberOfLevelsU) 294 294: 15(int) ImageQuerySizeLod 293 285
296: 278 Load 280(g_tTex1df4) Store 292(sizeQueryTemp) 294
297: 15(int) ImageQuerySizeLod 296 288 296: 15(int) Load 292(sizeQueryTemp)
Store 295(sizeQueryTemp) 297 Store 295(WidthU) 296
299: 15(int) Load 295(sizeQueryTemp) 298: 275 Load 277(g_tTex1df4)
Store 298(WidthU) 299 299: 15(int) ImageQueryLevels 298
301: 278 Load 280(g_tTex1df4) 300: 14(int) Bitcast 299
302: 15(int) ImageQueryLevels 301 Store 297(NumberOfLevelsI) 300
303: 14(int) Bitcast 302 302: 275 Load 277(g_tTex1df4)
Store 300(NumberOfLevelsI) 303 303: 15(int) ImageQuerySizeLod 302 285
305: 278 Load 280(g_tTex1df4) Store 301(sizeQueryTemp) 303
306: 15(int) ImageQuerySizeLod 305 288 304: 15(int) Load 301(sizeQueryTemp)
Store 304(sizeQueryTemp) 306 305: 14(int) Bitcast 304
307: 15(int) Load 304(sizeQueryTemp) Store 280(WidthI) 305
306: 275 Load 277(g_tTex1df4)
307: 15(int) ImageQueryLevels 306
308: 14(int) Bitcast 307 308: 14(int) Bitcast 307
Store 283(WidthI) 308 Store 297(NumberOfLevelsI) 308
309: 278 Load 280(g_tTex1df4) 311: 6(float) Load 13(r00)
310: 15(int) ImageQueryLevels 309 312: 7(fvec4) CompositeConstruct 311 311 311 311
311: 14(int) Bitcast 310 314: 313(ptr) AccessChain 310(ps_output) 53
Store 300(NumberOfLevelsI) 311 Store 314 312
314: 6(float) Load 13(r00) 315:8(PS_OUTPUT) Load 310(ps_output)
315: 7(fvec4) CompositeConstruct 314 314 314 314 ReturnValue 315
317: 316(ptr) AccessChain 313(ps_output) 53
Store 317 315
318:8(PS_OUTPUT) Load 313(ps_output)
ReturnValue 318
FunctionEnd FunctionEnd

View File

@ -95,7 +95,7 @@ gl_FragCoord origin is upper left
0:20 0 (const int) 0:20 0 (const int)
0:? Linker Objects 0:? Linker Objects
0:? 'anon@0' (layout( row_major std140) uniform block{ uniform int i, uniform uint u, uniform float f, uniform bool b, uniform 2-component vector of int i2, uniform 2-component vector of uint u2, uniform 2-component vector of float f2, uniform 2-component vector of bool b2, uniform uint upos, uniform float fpos}) 0:? 'anon@0' (layout( row_major std140) uniform block{ uniform int i, uniform uint u, uniform float f, uniform bool b, uniform 2-component vector of int i2, uniform 2-component vector of uint u2, uniform 2-component vector of float f2, uniform 2-component vector of bool b2, uniform uint upos, uniform float fpos})
0:? 'g_tTexbfs' (layout( r32f) uniform samplerBuffer) 0:? 'g_tTexbfs' (layout( r32f) uniform textureBuffer)
0:? 'g_tTex1df4' ( uniform texture1D) 0:? 'g_tTex1df4' ( uniform texture1D)
0:? 'color' (layout( location=0) out 4-component vector of float) 0:? 'color' (layout( location=0) out 4-component vector of float)
@ -199,13 +199,13 @@ gl_FragCoord origin is upper left
0:20 0 (const int) 0:20 0 (const int)
0:? Linker Objects 0:? Linker Objects
0:? 'anon@0' (layout( row_major std140) uniform block{ uniform int i, uniform uint u, uniform float f, uniform bool b, uniform 2-component vector of int i2, uniform 2-component vector of uint u2, uniform 2-component vector of float f2, uniform 2-component vector of bool b2, uniform uint upos, uniform float fpos}) 0:? 'anon@0' (layout( row_major std140) uniform block{ uniform int i, uniform uint u, uniform float f, uniform bool b, uniform 2-component vector of int i2, uniform 2-component vector of uint u2, uniform 2-component vector of float f2, uniform 2-component vector of bool b2, uniform uint upos, uniform float fpos})
0:? 'g_tTexbfs' (layout( r32f) uniform samplerBuffer) 0:? 'g_tTexbfs' (layout( r32f) uniform textureBuffer)
0:? 'g_tTex1df4' ( uniform texture1D) 0:? 'g_tTex1df4' ( uniform texture1D)
0:? 'color' (layout( location=0) out 4-component vector of float) 0:? 'color' (layout( location=0) out 4-component vector of float)
// Module Version 10000 // Module Version 10000
// Generated by (magic number): 80001 // Generated by (magic number): 80001
// Id's are bound by 81 // Id's are bound by 80
Capability Shader Capability Shader
Capability Sampled1D Capability Sampled1D
@ -242,7 +242,7 @@ gl_FragCoord origin is upper left
Name 57 "sizeQueryTemp" Name 57 "sizeQueryTemp"
Name 66 "ps_output" Name 66 "ps_output"
Name 74 "color" Name 74 "color"
Name 80 "g_tTexbfs" Name 79 "g_tTexbfs"
MemberDecorate 17($Global) 0 Offset 0 MemberDecorate 17($Global) 0 Offset 0
MemberDecorate 17($Global) 1 Offset 4 MemberDecorate 17($Global) 1 Offset 4
MemberDecorate 17($Global) 2 Offset 8 MemberDecorate 17($Global) 2 Offset 8
@ -257,7 +257,7 @@ gl_FragCoord origin is upper left
Decorate 19 DescriptorSet 0 Decorate 19 DescriptorSet 0
Decorate 31(g_tTex1df4) DescriptorSet 0 Decorate 31(g_tTex1df4) DescriptorSet 0
Decorate 74(color) Location 0 Decorate 74(color) Location 0
Decorate 80(g_tTexbfs) DescriptorSet 0 Decorate 79(g_tTexbfs) DescriptorSet 0
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
6: TypeFloat 32 6: TypeFloat 32
@ -289,9 +289,8 @@ gl_FragCoord origin is upper left
73: TypePointer Output 7(fvec4) 73: TypePointer Output 7(fvec4)
74(color): 73(ptr) Variable Output 74(color): 73(ptr) Variable Output
77: TypeImage 6(float) Buffer sampled format:R32f 77: TypeImage 6(float) Buffer sampled format:R32f
78: TypeSampledImage 77 78: TypePointer UniformConstant 77
79: TypePointer UniformConstant 78 79(g_tTexbfs): 78(ptr) Variable UniformConstant
80(g_tTexbfs): 79(ptr) Variable UniformConstant
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
75:8(PS_OUTPUT) FunctionCall 10(@main() 75:8(PS_OUTPUT) FunctionCall 10(@main()

View File

@ -9,7 +9,7 @@ gl_FragCoord origin is upper left
0:28 move second child to first child ( temp 4-component vector of float) 0:28 move second child to first child ( temp 4-component vector of float)
0:28 'r00' ( temp 4-component vector of float) 0:28 'r00' ( temp 4-component vector of float)
0:28 textureFetch ( temp 4-component vector of float) 0:28 textureFetch ( temp 4-component vector of float)
0:28 'g_tTexbf4' (layout( rgba32f) uniform samplerBuffer) 0:28 'g_tTexbf4' (layout( rgba32f) uniform textureBuffer)
0:28 c1: direct index for structure ( uniform int) 0:28 c1: direct index for structure ( uniform int)
0:28 'anon@0' (layout( row_major std140) uniform block{ uniform int c1, uniform 2-component vector of int c2, uniform 3-component vector of int c3, uniform 4-component vector of int c4, uniform int o1, uniform 2-component vector of int o2, uniform 3-component vector of int o3, uniform 4-component vector of int o4}) 0:28 'anon@0' (layout( row_major std140) uniform block{ uniform int c1, uniform 2-component vector of int c2, uniform 3-component vector of int c3, uniform 4-component vector of int c4, uniform int o1, uniform 2-component vector of int o2, uniform 3-component vector of int o3, uniform 4-component vector of int o4})
0:28 Constant: 0:28 Constant:
@ -18,7 +18,7 @@ gl_FragCoord origin is upper left
0:29 move second child to first child ( temp 4-component vector of int) 0:29 move second child to first child ( temp 4-component vector of int)
0:29 'r01' ( temp 4-component vector of int) 0:29 'r01' ( temp 4-component vector of int)
0:29 textureFetch ( temp 4-component vector of int) 0:29 textureFetch ( temp 4-component vector of int)
0:29 'g_tTexbi4' (layout( rgba32i) uniform isamplerBuffer) 0:29 'g_tTexbi4' (layout( rgba32i) uniform itextureBuffer)
0:29 c1: direct index for structure ( uniform int) 0:29 c1: direct index for structure ( uniform int)
0:29 'anon@0' (layout( row_major std140) uniform block{ uniform int c1, uniform 2-component vector of int c2, uniform 3-component vector of int c3, uniform 4-component vector of int c4, uniform int o1, uniform 2-component vector of int o2, uniform 3-component vector of int o3, uniform 4-component vector of int o4}) 0:29 'anon@0' (layout( row_major std140) uniform block{ uniform int c1, uniform 2-component vector of int c2, uniform 3-component vector of int c3, uniform 4-component vector of int c4, uniform int o1, uniform 2-component vector of int o2, uniform 3-component vector of int o3, uniform 4-component vector of int o4})
0:29 Constant: 0:29 Constant:
@ -27,7 +27,7 @@ gl_FragCoord origin is upper left
0:30 move second child to first child ( temp 4-component vector of uint) 0:30 move second child to first child ( temp 4-component vector of uint)
0:30 'r02' ( temp 4-component vector of uint) 0:30 'r02' ( temp 4-component vector of uint)
0:30 textureFetch ( temp 4-component vector of uint) 0:30 textureFetch ( temp 4-component vector of uint)
0:30 'g_tTexbu4' (layout( rgba32ui) uniform usamplerBuffer) 0:30 'g_tTexbu4' (layout( rgba32ui) uniform utextureBuffer)
0:30 c1: direct index for structure ( uniform int) 0:30 c1: direct index for structure ( uniform int)
0:30 'anon@0' (layout( row_major std140) uniform block{ uniform int c1, uniform 2-component vector of int c2, uniform 3-component vector of int c3, uniform 4-component vector of int c4, uniform int o1, uniform 2-component vector of int o2, uniform 3-component vector of int o3, uniform 4-component vector of int o4}) 0:30 'anon@0' (layout( row_major std140) uniform block{ uniform int c1, uniform 2-component vector of int c2, uniform 3-component vector of int c3, uniform 4-component vector of int c4, uniform int o1, uniform 2-component vector of int o2, uniform 3-component vector of int o3, uniform 4-component vector of int o4})
0:30 Constant: 0:30 Constant:
@ -71,10 +71,10 @@ gl_FragCoord origin is upper left
0:24 Constant: 0:24 Constant:
0:24 1 (const int) 0:24 1 (const int)
0:? Linker Objects 0:? Linker Objects
0:? 'g_tTexbf4_test' (layout( binding=0 rgba32f) uniform samplerBuffer) 0:? 'g_tTexbf4_test' (layout( binding=0 rgba32f) uniform textureBuffer)
0:? 'g_tTexbf4' (layout( rgba32f) uniform samplerBuffer) 0:? 'g_tTexbf4' (layout( rgba32f) uniform textureBuffer)
0:? 'g_tTexbi4' (layout( rgba32i) uniform isamplerBuffer) 0:? 'g_tTexbi4' (layout( rgba32i) uniform itextureBuffer)
0:? 'g_tTexbu4' (layout( rgba32ui) uniform usamplerBuffer) 0:? 'g_tTexbu4' (layout( rgba32ui) uniform utextureBuffer)
0:? 'anon@0' (layout( row_major std140) uniform block{ uniform int c1, uniform 2-component vector of int c2, uniform 3-component vector of int c3, uniform 4-component vector of int c4, uniform int o1, uniform 2-component vector of int o2, uniform 3-component vector of int o3, uniform 4-component vector of int o4}) 0:? 'anon@0' (layout( row_major std140) uniform block{ uniform int c1, uniform 2-component vector of int c2, uniform 3-component vector of int c3, uniform 4-component vector of int c4, uniform int o1, uniform 2-component vector of int o2, uniform 3-component vector of int o3, uniform 4-component vector of int o4})
0:? 'Color' (layout( location=0) out 4-component vector of float) 0:? 'Color' (layout( location=0) out 4-component vector of float)
0:? 'Depth' ( out float FragDepth) 0:? 'Depth' ( out float FragDepth)
@ -93,7 +93,7 @@ gl_FragCoord origin is upper left
0:28 move second child to first child ( temp 4-component vector of float) 0:28 move second child to first child ( temp 4-component vector of float)
0:28 'r00' ( temp 4-component vector of float) 0:28 'r00' ( temp 4-component vector of float)
0:28 textureFetch ( temp 4-component vector of float) 0:28 textureFetch ( temp 4-component vector of float)
0:28 'g_tTexbf4' (layout( rgba32f) uniform samplerBuffer) 0:28 'g_tTexbf4' (layout( rgba32f) uniform textureBuffer)
0:28 c1: direct index for structure ( uniform int) 0:28 c1: direct index for structure ( uniform int)
0:28 'anon@0' (layout( row_major std140) uniform block{ uniform int c1, uniform 2-component vector of int c2, uniform 3-component vector of int c3, uniform 4-component vector of int c4, uniform int o1, uniform 2-component vector of int o2, uniform 3-component vector of int o3, uniform 4-component vector of int o4}) 0:28 'anon@0' (layout( row_major std140) uniform block{ uniform int c1, uniform 2-component vector of int c2, uniform 3-component vector of int c3, uniform 4-component vector of int c4, uniform int o1, uniform 2-component vector of int o2, uniform 3-component vector of int o3, uniform 4-component vector of int o4})
0:28 Constant: 0:28 Constant:
@ -102,7 +102,7 @@ gl_FragCoord origin is upper left
0:29 move second child to first child ( temp 4-component vector of int) 0:29 move second child to first child ( temp 4-component vector of int)
0:29 'r01' ( temp 4-component vector of int) 0:29 'r01' ( temp 4-component vector of int)
0:29 textureFetch ( temp 4-component vector of int) 0:29 textureFetch ( temp 4-component vector of int)
0:29 'g_tTexbi4' (layout( rgba32i) uniform isamplerBuffer) 0:29 'g_tTexbi4' (layout( rgba32i) uniform itextureBuffer)
0:29 c1: direct index for structure ( uniform int) 0:29 c1: direct index for structure ( uniform int)
0:29 'anon@0' (layout( row_major std140) uniform block{ uniform int c1, uniform 2-component vector of int c2, uniform 3-component vector of int c3, uniform 4-component vector of int c4, uniform int o1, uniform 2-component vector of int o2, uniform 3-component vector of int o3, uniform 4-component vector of int o4}) 0:29 'anon@0' (layout( row_major std140) uniform block{ uniform int c1, uniform 2-component vector of int c2, uniform 3-component vector of int c3, uniform 4-component vector of int c4, uniform int o1, uniform 2-component vector of int o2, uniform 3-component vector of int o3, uniform 4-component vector of int o4})
0:29 Constant: 0:29 Constant:
@ -111,7 +111,7 @@ gl_FragCoord origin is upper left
0:30 move second child to first child ( temp 4-component vector of uint) 0:30 move second child to first child ( temp 4-component vector of uint)
0:30 'r02' ( temp 4-component vector of uint) 0:30 'r02' ( temp 4-component vector of uint)
0:30 textureFetch ( temp 4-component vector of uint) 0:30 textureFetch ( temp 4-component vector of uint)
0:30 'g_tTexbu4' (layout( rgba32ui) uniform usamplerBuffer) 0:30 'g_tTexbu4' (layout( rgba32ui) uniform utextureBuffer)
0:30 c1: direct index for structure ( uniform int) 0:30 c1: direct index for structure ( uniform int)
0:30 'anon@0' (layout( row_major std140) uniform block{ uniform int c1, uniform 2-component vector of int c2, uniform 3-component vector of int c3, uniform 4-component vector of int c4, uniform int o1, uniform 2-component vector of int o2, uniform 3-component vector of int o3, uniform 4-component vector of int o4}) 0:30 'anon@0' (layout( row_major std140) uniform block{ uniform int c1, uniform 2-component vector of int c2, uniform 3-component vector of int c3, uniform 4-component vector of int c4, uniform int o1, uniform 2-component vector of int o2, uniform 3-component vector of int o3, uniform 4-component vector of int o4})
0:30 Constant: 0:30 Constant:
@ -155,23 +155,23 @@ gl_FragCoord origin is upper left
0:24 Constant: 0:24 Constant:
0:24 1 (const int) 0:24 1 (const int)
0:? Linker Objects 0:? Linker Objects
0:? 'g_tTexbf4_test' (layout( binding=0 rgba32f) uniform samplerBuffer) 0:? 'g_tTexbf4_test' (layout( binding=0 rgba32f) uniform textureBuffer)
0:? 'g_tTexbf4' (layout( rgba32f) uniform samplerBuffer) 0:? 'g_tTexbf4' (layout( rgba32f) uniform textureBuffer)
0:? 'g_tTexbi4' (layout( rgba32i) uniform isamplerBuffer) 0:? 'g_tTexbi4' (layout( rgba32i) uniform itextureBuffer)
0:? 'g_tTexbu4' (layout( rgba32ui) uniform usamplerBuffer) 0:? 'g_tTexbu4' (layout( rgba32ui) uniform utextureBuffer)
0:? 'anon@0' (layout( row_major std140) uniform block{ uniform int c1, uniform 2-component vector of int c2, uniform 3-component vector of int c3, uniform 4-component vector of int c4, uniform int o1, uniform 2-component vector of int o2, uniform 3-component vector of int o3, uniform 4-component vector of int o4}) 0:? 'anon@0' (layout( row_major std140) uniform block{ uniform int c1, uniform 2-component vector of int c2, uniform 3-component vector of int c3, uniform 4-component vector of int c4, uniform int o1, uniform 2-component vector of int o2, uniform 3-component vector of int o3, uniform 4-component vector of int o4})
0:? 'Color' (layout( location=0) out 4-component vector of float) 0:? 'Color' (layout( location=0) out 4-component vector of float)
0:? 'Depth' ( out float FragDepth) 0:? 'Depth' ( out float FragDepth)
// Module Version 10000 // Module Version 10000
// Generated by (magic number): 80001 // Generated by (magic number): 80001
// Id's are bound by 78 // Id's are bound by 72
Capability Shader Capability Shader
Capability SampledBuffer Capability SampledBuffer
1: ExtInstImport "GLSL.std.450" 1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450 MemoryModel Logical GLSL450
EntryPoint Fragment 4 "main" 70 74 EntryPoint Fragment 4 "main" 64 68
ExecutionMode 4 OriginUpperLeft ExecutionMode 4 OriginUpperLeft
Name 4 "main" Name 4 "main"
Name 8 "PS_OUTPUT" Name 8 "PS_OUTPUT"
@ -179,43 +179,43 @@ gl_FragCoord origin is upper left
MemberName 8(PS_OUTPUT) 1 "Depth" MemberName 8(PS_OUTPUT) 1 "Depth"
Name 10 "@main(" Name 10 "@main("
Name 13 "r00" Name 13 "r00"
Name 17 "g_tTexbf4" Name 16 "g_tTexbf4"
Name 23 "$Global" Name 22 "$Global"
MemberName 23($Global) 0 "c1" MemberName 22($Global) 0 "c1"
MemberName 23($Global) 1 "c2" MemberName 22($Global) 1 "c2"
MemberName 23($Global) 2 "c3" MemberName 22($Global) 2 "c3"
MemberName 23($Global) 3 "c4" MemberName 22($Global) 3 "c4"
MemberName 23($Global) 4 "o1" MemberName 22($Global) 4 "o1"
MemberName 23($Global) 5 "o2" MemberName 22($Global) 5 "o2"
MemberName 23($Global) 6 "o3" MemberName 22($Global) 6 "o3"
MemberName 23($Global) 7 "o4" MemberName 22($Global) 7 "o4"
Name 25 "" Name 24 ""
Name 33 "r01" Name 31 "r01"
Name 37 "g_tTexbi4" Name 34 "g_tTexbi4"
Name 46 "r02" Name 42 "r02"
Name 50 "g_tTexbu4" Name 45 "g_tTexbu4"
Name 57 "psout" Name 51 "psout"
Name 67 "flattenTemp" Name 61 "flattenTemp"
Name 70 "Color" Name 64 "Color"
Name 74 "Depth" Name 68 "Depth"
Name 77 "g_tTexbf4_test" Name 71 "g_tTexbf4_test"
Decorate 17(g_tTexbf4) DescriptorSet 0 Decorate 16(g_tTexbf4) DescriptorSet 0
MemberDecorate 23($Global) 0 Offset 0 MemberDecorate 22($Global) 0 Offset 0
MemberDecorate 23($Global) 1 Offset 8 MemberDecorate 22($Global) 1 Offset 8
MemberDecorate 23($Global) 2 Offset 16 MemberDecorate 22($Global) 2 Offset 16
MemberDecorate 23($Global) 3 Offset 32 MemberDecorate 22($Global) 3 Offset 32
MemberDecorate 23($Global) 4 Offset 48 MemberDecorate 22($Global) 4 Offset 48
MemberDecorate 23($Global) 5 Offset 56 MemberDecorate 22($Global) 5 Offset 56
MemberDecorate 23($Global) 6 Offset 64 MemberDecorate 22($Global) 6 Offset 64
MemberDecorate 23($Global) 7 Offset 80 MemberDecorate 22($Global) 7 Offset 80
Decorate 23($Global) Block Decorate 22($Global) Block
Decorate 25 DescriptorSet 0 Decorate 24 DescriptorSet 0
Decorate 37(g_tTexbi4) DescriptorSet 0 Decorate 34(g_tTexbi4) DescriptorSet 0
Decorate 50(g_tTexbu4) DescriptorSet 0 Decorate 45(g_tTexbu4) DescriptorSet 0
Decorate 70(Color) Location 0 Decorate 64(Color) Location 0
Decorate 74(Depth) BuiltIn FragDepth Decorate 68(Depth) BuiltIn FragDepth
Decorate 77(g_tTexbf4_test) DescriptorSet 0 Decorate 71(g_tTexbf4_test) DescriptorSet 0
Decorate 77(g_tTexbf4_test) Binding 0 Decorate 71(g_tTexbf4_test) Binding 0
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
6: TypeFloat 32 6: TypeFloat 32
@ -224,81 +224,75 @@ gl_FragCoord origin is upper left
9: TypeFunction 8(PS_OUTPUT) 9: TypeFunction 8(PS_OUTPUT)
12: TypePointer Function 7(fvec4) 12: TypePointer Function 7(fvec4)
14: TypeImage 6(float) Buffer sampled format:Rgba32f 14: TypeImage 6(float) Buffer sampled format:Rgba32f
15: TypeSampledImage 14 15: TypePointer UniformConstant 14
16: TypePointer UniformConstant 15 16(g_tTexbf4): 15(ptr) Variable UniformConstant
17(g_tTexbf4): 16(ptr) Variable UniformConstant 18: TypeInt 32 1
19: TypeInt 32 1 19: TypeVector 18(int) 2
20: TypeVector 19(int) 2 20: TypeVector 18(int) 3
21: TypeVector 19(int) 3 21: TypeVector 18(int) 4
22: TypeVector 19(int) 4 22($Global): TypeStruct 18(int) 19(ivec2) 20(ivec3) 21(ivec4) 18(int) 19(ivec2) 20(ivec3) 21(ivec4)
23($Global): TypeStruct 19(int) 20(ivec2) 21(ivec3) 22(ivec4) 19(int) 20(ivec2) 21(ivec3) 22(ivec4) 23: TypePointer Uniform 22($Global)
24: TypePointer Uniform 23($Global) 24: 23(ptr) Variable Uniform
25: 24(ptr) Variable Uniform 25: 18(int) Constant 0
26: 19(int) Constant 0 26: TypePointer Uniform 18(int)
27: TypePointer Uniform 19(int) 30: TypePointer Function 21(ivec4)
32: TypePointer Function 22(ivec4) 32: TypeImage 18(int) Buffer sampled format:Rgba32i
34: TypeImage 19(int) Buffer sampled format:Rgba32i 33: TypePointer UniformConstant 32
35: TypeSampledImage 34 34(g_tTexbi4): 33(ptr) Variable UniformConstant
36: TypePointer UniformConstant 35 39: TypeInt 32 0
37(g_tTexbi4): 36(ptr) Variable UniformConstant 40: TypeVector 39(int) 4
43: TypeInt 32 0 41: TypePointer Function 40(ivec4)
44: TypeVector 43(int) 4 43: TypeImage 39(int) Buffer sampled format:Rgba32ui
45: TypePointer Function 44(ivec4) 44: TypePointer UniformConstant 43
47: TypeImage 43(int) Buffer sampled format:Rgba32ui 45(g_tTexbu4): 44(ptr) Variable UniformConstant
48: TypeSampledImage 47 50: TypePointer Function 8(PS_OUTPUT)
49: TypePointer UniformConstant 48 52: 6(float) Constant 1065353216
50(g_tTexbu4): 49(ptr) Variable UniformConstant 53: 7(fvec4) ConstantComposite 52 52 52 52
56: TypePointer Function 8(PS_OUTPUT) 55: 18(int) Constant 1
58: 6(float) Constant 1065353216 56: TypePointer Function 6(float)
59: 7(fvec4) ConstantComposite 58 58 58 58 63: TypePointer Output 7(fvec4)
61: 19(int) Constant 1 64(Color): 63(ptr) Variable Output
62: TypePointer Function 6(float) 67: TypePointer Output 6(float)
69: TypePointer Output 7(fvec4) 68(Depth): 67(ptr) Variable Output
70(Color): 69(ptr) Variable Output 71(g_tTexbf4_test): 15(ptr) Variable UniformConstant
73: TypePointer Output 6(float)
74(Depth): 73(ptr) Variable Output
77(g_tTexbf4_test): 16(ptr) Variable UniformConstant
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
67(flattenTemp): 56(ptr) Variable Function 61(flattenTemp): 50(ptr) Variable Function
68:8(PS_OUTPUT) FunctionCall 10(@main() 62:8(PS_OUTPUT) FunctionCall 10(@main()
Store 67(flattenTemp) 68 Store 61(flattenTemp) 62
71: 12(ptr) AccessChain 67(flattenTemp) 26 65: 12(ptr) AccessChain 61(flattenTemp) 25
72: 7(fvec4) Load 71 66: 7(fvec4) Load 65
Store 70(Color) 72 Store 64(Color) 66
75: 62(ptr) AccessChain 67(flattenTemp) 61 69: 56(ptr) AccessChain 61(flattenTemp) 55
76: 6(float) Load 75 70: 6(float) Load 69
Store 74(Depth) 76 Store 68(Depth) 70
Return Return
FunctionEnd FunctionEnd
10(@main():8(PS_OUTPUT) Function None 9 10(@main():8(PS_OUTPUT) Function None 9
11: Label 11: Label
13(r00): 12(ptr) Variable Function 13(r00): 12(ptr) Variable Function
33(r01): 32(ptr) Variable Function 31(r01): 30(ptr) Variable Function
46(r02): 45(ptr) Variable Function 42(r02): 41(ptr) Variable Function
57(psout): 56(ptr) Variable Function 51(psout): 50(ptr) Variable Function
18: 15 Load 17(g_tTexbf4) 17: 14 Load 16(g_tTexbf4)
28: 27(ptr) AccessChain 25 26 27: 26(ptr) AccessChain 24 25
29: 19(int) Load 28 28: 18(int) Load 27
30: 14 Image 18 29: 7(fvec4) ImageFetch 17 28
31: 7(fvec4) ImageFetch 30 29 Store 13(r00) 29
Store 13(r00) 31 35: 32 Load 34(g_tTexbi4)
38: 35 Load 37(g_tTexbi4) 36: 26(ptr) AccessChain 24 25
39: 27(ptr) AccessChain 25 26 37: 18(int) Load 36
40: 19(int) Load 39 38: 21(ivec4) ImageFetch 35 37
41: 34 Image 38 Store 31(r01) 38
42: 22(ivec4) ImageFetch 41 40 46: 43 Load 45(g_tTexbu4)
Store 33(r01) 42 47: 26(ptr) AccessChain 24 25
51: 48 Load 50(g_tTexbu4) 48: 18(int) Load 47
52: 27(ptr) AccessChain 25 26 49: 40(ivec4) ImageFetch 46 48
53: 19(int) Load 52 Store 42(r02) 49
54: 47 Image 51 54: 12(ptr) AccessChain 51(psout) 25
55: 44(ivec4) ImageFetch 54 53 Store 54 53
Store 46(r02) 55 57: 56(ptr) AccessChain 51(psout) 55
60: 12(ptr) AccessChain 57(psout) 26 Store 57 52
Store 60 59 58:8(PS_OUTPUT) Load 51(psout)
63: 62(ptr) AccessChain 57(psout) 61 ReturnValue 58
Store 63 58
64:8(PS_OUTPUT) Load 57(psout)
ReturnValue 64
FunctionEnd FunctionEnd

View File

@ -10,7 +10,7 @@ gl_FragCoord origin is upper left
0:28 'r00' ( temp float) 0:28 'r00' ( temp float)
0:28 Construct float ( temp float) 0:28 Construct float ( temp float)
0:? textureFetch ( temp 4-component vector of float) 0:? textureFetch ( temp 4-component vector of float)
0:28 'g_tTexbfs' (layout( r32f) uniform samplerBuffer) 0:28 'g_tTexbfs' (layout( r32f) uniform textureBuffer)
0:28 c1: direct index for structure ( uniform int) 0:28 c1: direct index for structure ( uniform int)
0:28 'anon@0' (layout( row_major std140) uniform block{ uniform int c1, uniform 2-component vector of int c2, uniform 3-component vector of int c3, uniform 4-component vector of int c4, uniform int o1, uniform 2-component vector of int o2, uniform 3-component vector of int o3, uniform 4-component vector of int o4}) 0:28 'anon@0' (layout( row_major std140) uniform block{ uniform int c1, uniform 2-component vector of int c2, uniform 3-component vector of int c3, uniform 4-component vector of int c4, uniform int o1, uniform 2-component vector of int o2, uniform 3-component vector of int o3, uniform 4-component vector of int o4})
0:28 Constant: 0:28 Constant:
@ -20,7 +20,7 @@ gl_FragCoord origin is upper left
0:29 'r01' ( temp int) 0:29 'r01' ( temp int)
0:29 Construct int ( temp int) 0:29 Construct int ( temp int)
0:? textureFetch ( temp 4-component vector of int) 0:? textureFetch ( temp 4-component vector of int)
0:29 'g_tTexbis' (layout( r32i) uniform isamplerBuffer) 0:29 'g_tTexbis' (layout( r32i) uniform itextureBuffer)
0:29 c1: direct index for structure ( uniform int) 0:29 c1: direct index for structure ( uniform int)
0:29 'anon@0' (layout( row_major std140) uniform block{ uniform int c1, uniform 2-component vector of int c2, uniform 3-component vector of int c3, uniform 4-component vector of int c4, uniform int o1, uniform 2-component vector of int o2, uniform 3-component vector of int o3, uniform 4-component vector of int o4}) 0:29 'anon@0' (layout( row_major std140) uniform block{ uniform int c1, uniform 2-component vector of int c2, uniform 3-component vector of int c3, uniform 4-component vector of int c4, uniform int o1, uniform 2-component vector of int o2, uniform 3-component vector of int o3, uniform 4-component vector of int o4})
0:29 Constant: 0:29 Constant:
@ -30,7 +30,7 @@ gl_FragCoord origin is upper left
0:30 'r02' ( temp uint) 0:30 'r02' ( temp uint)
0:30 Construct uint ( temp uint) 0:30 Construct uint ( temp uint)
0:? textureFetch ( temp 4-component vector of uint) 0:? textureFetch ( temp 4-component vector of uint)
0:30 'g_tTexbus' (layout( r32ui) uniform usamplerBuffer) 0:30 'g_tTexbus' (layout( r32ui) uniform utextureBuffer)
0:30 c1: direct index for structure ( uniform int) 0:30 c1: direct index for structure ( uniform int)
0:30 'anon@0' (layout( row_major std140) uniform block{ uniform int c1, uniform 2-component vector of int c2, uniform 3-component vector of int c3, uniform 4-component vector of int c4, uniform int o1, uniform 2-component vector of int o2, uniform 3-component vector of int o3, uniform 4-component vector of int o4}) 0:30 'anon@0' (layout( row_major std140) uniform block{ uniform int c1, uniform 2-component vector of int c2, uniform 3-component vector of int c3, uniform 4-component vector of int c4, uniform int o1, uniform 2-component vector of int o2, uniform 3-component vector of int o3, uniform 4-component vector of int o4})
0:30 Constant: 0:30 Constant:
@ -74,10 +74,10 @@ gl_FragCoord origin is upper left
0:24 Constant: 0:24 Constant:
0:24 1 (const int) 0:24 1 (const int)
0:? Linker Objects 0:? Linker Objects
0:? 'g_tTexbfs_test' (layout( binding=0 r32f) uniform samplerBuffer) 0:? 'g_tTexbfs_test' (layout( binding=0 r32f) uniform textureBuffer)
0:? 'g_tTexbfs' (layout( r32f) uniform samplerBuffer) 0:? 'g_tTexbfs' (layout( r32f) uniform textureBuffer)
0:? 'g_tTexbis' (layout( r32i) uniform isamplerBuffer) 0:? 'g_tTexbis' (layout( r32i) uniform itextureBuffer)
0:? 'g_tTexbus' (layout( r32ui) uniform usamplerBuffer) 0:? 'g_tTexbus' (layout( r32ui) uniform utextureBuffer)
0:? 'anon@0' (layout( row_major std140) uniform block{ uniform int c1, uniform 2-component vector of int c2, uniform 3-component vector of int c3, uniform 4-component vector of int c4, uniform int o1, uniform 2-component vector of int o2, uniform 3-component vector of int o3, uniform 4-component vector of int o4}) 0:? 'anon@0' (layout( row_major std140) uniform block{ uniform int c1, uniform 2-component vector of int c2, uniform 3-component vector of int c3, uniform 4-component vector of int c4, uniform int o1, uniform 2-component vector of int o2, uniform 3-component vector of int o3, uniform 4-component vector of int o4})
0:? 'Color' (layout( location=0) out 4-component vector of float) 0:? 'Color' (layout( location=0) out 4-component vector of float)
0:? 'Depth' ( out float FragDepth) 0:? 'Depth' ( out float FragDepth)
@ -97,7 +97,7 @@ gl_FragCoord origin is upper left
0:28 'r00' ( temp float) 0:28 'r00' ( temp float)
0:28 Construct float ( temp float) 0:28 Construct float ( temp float)
0:? textureFetch ( temp 4-component vector of float) 0:? textureFetch ( temp 4-component vector of float)
0:28 'g_tTexbfs' (layout( r32f) uniform samplerBuffer) 0:28 'g_tTexbfs' (layout( r32f) uniform textureBuffer)
0:28 c1: direct index for structure ( uniform int) 0:28 c1: direct index for structure ( uniform int)
0:28 'anon@0' (layout( row_major std140) uniform block{ uniform int c1, uniform 2-component vector of int c2, uniform 3-component vector of int c3, uniform 4-component vector of int c4, uniform int o1, uniform 2-component vector of int o2, uniform 3-component vector of int o3, uniform 4-component vector of int o4}) 0:28 'anon@0' (layout( row_major std140) uniform block{ uniform int c1, uniform 2-component vector of int c2, uniform 3-component vector of int c3, uniform 4-component vector of int c4, uniform int o1, uniform 2-component vector of int o2, uniform 3-component vector of int o3, uniform 4-component vector of int o4})
0:28 Constant: 0:28 Constant:
@ -107,7 +107,7 @@ gl_FragCoord origin is upper left
0:29 'r01' ( temp int) 0:29 'r01' ( temp int)
0:29 Construct int ( temp int) 0:29 Construct int ( temp int)
0:? textureFetch ( temp 4-component vector of int) 0:? textureFetch ( temp 4-component vector of int)
0:29 'g_tTexbis' (layout( r32i) uniform isamplerBuffer) 0:29 'g_tTexbis' (layout( r32i) uniform itextureBuffer)
0:29 c1: direct index for structure ( uniform int) 0:29 c1: direct index for structure ( uniform int)
0:29 'anon@0' (layout( row_major std140) uniform block{ uniform int c1, uniform 2-component vector of int c2, uniform 3-component vector of int c3, uniform 4-component vector of int c4, uniform int o1, uniform 2-component vector of int o2, uniform 3-component vector of int o3, uniform 4-component vector of int o4}) 0:29 'anon@0' (layout( row_major std140) uniform block{ uniform int c1, uniform 2-component vector of int c2, uniform 3-component vector of int c3, uniform 4-component vector of int c4, uniform int o1, uniform 2-component vector of int o2, uniform 3-component vector of int o3, uniform 4-component vector of int o4})
0:29 Constant: 0:29 Constant:
@ -117,7 +117,7 @@ gl_FragCoord origin is upper left
0:30 'r02' ( temp uint) 0:30 'r02' ( temp uint)
0:30 Construct uint ( temp uint) 0:30 Construct uint ( temp uint)
0:? textureFetch ( temp 4-component vector of uint) 0:? textureFetch ( temp 4-component vector of uint)
0:30 'g_tTexbus' (layout( r32ui) uniform usamplerBuffer) 0:30 'g_tTexbus' (layout( r32ui) uniform utextureBuffer)
0:30 c1: direct index for structure ( uniform int) 0:30 c1: direct index for structure ( uniform int)
0:30 'anon@0' (layout( row_major std140) uniform block{ uniform int c1, uniform 2-component vector of int c2, uniform 3-component vector of int c3, uniform 4-component vector of int c4, uniform int o1, uniform 2-component vector of int o2, uniform 3-component vector of int o3, uniform 4-component vector of int o4}) 0:30 'anon@0' (layout( row_major std140) uniform block{ uniform int c1, uniform 2-component vector of int c2, uniform 3-component vector of int c3, uniform 4-component vector of int c4, uniform int o1, uniform 2-component vector of int o2, uniform 3-component vector of int o3, uniform 4-component vector of int o4})
0:30 Constant: 0:30 Constant:
@ -161,23 +161,23 @@ gl_FragCoord origin is upper left
0:24 Constant: 0:24 Constant:
0:24 1 (const int) 0:24 1 (const int)
0:? Linker Objects 0:? Linker Objects
0:? 'g_tTexbfs_test' (layout( binding=0 r32f) uniform samplerBuffer) 0:? 'g_tTexbfs_test' (layout( binding=0 r32f) uniform textureBuffer)
0:? 'g_tTexbfs' (layout( r32f) uniform samplerBuffer) 0:? 'g_tTexbfs' (layout( r32f) uniform textureBuffer)
0:? 'g_tTexbis' (layout( r32i) uniform isamplerBuffer) 0:? 'g_tTexbis' (layout( r32i) uniform itextureBuffer)
0:? 'g_tTexbus' (layout( r32ui) uniform usamplerBuffer) 0:? 'g_tTexbus' (layout( r32ui) uniform utextureBuffer)
0:? 'anon@0' (layout( row_major std140) uniform block{ uniform int c1, uniform 2-component vector of int c2, uniform 3-component vector of int c3, uniform 4-component vector of int c4, uniform int o1, uniform 2-component vector of int o2, uniform 3-component vector of int o3, uniform 4-component vector of int o4}) 0:? 'anon@0' (layout( row_major std140) uniform block{ uniform int c1, uniform 2-component vector of int c2, uniform 3-component vector of int c3, uniform 4-component vector of int c4, uniform int o1, uniform 2-component vector of int o2, uniform 3-component vector of int o3, uniform 4-component vector of int o4})
0:? 'Color' (layout( location=0) out 4-component vector of float) 0:? 'Color' (layout( location=0) out 4-component vector of float)
0:? 'Depth' ( out float FragDepth) 0:? 'Depth' ( out float FragDepth)
// Module Version 10000 // Module Version 10000
// Generated by (magic number): 80001 // Generated by (magic number): 80001
// Id's are bound by 81 // Id's are bound by 75
Capability Shader Capability Shader
Capability SampledBuffer Capability SampledBuffer
1: ExtInstImport "GLSL.std.450" 1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450 MemoryModel Logical GLSL450
EntryPoint Fragment 4 "main" 73 77 EntryPoint Fragment 4 "main" 67 71
ExecutionMode 4 OriginUpperLeft ExecutionMode 4 OriginUpperLeft
Name 4 "main" Name 4 "main"
Name 8 "PS_OUTPUT" Name 8 "PS_OUTPUT"
@ -185,43 +185,43 @@ gl_FragCoord origin is upper left
MemberName 8(PS_OUTPUT) 1 "Depth" MemberName 8(PS_OUTPUT) 1 "Depth"
Name 10 "@main(" Name 10 "@main("
Name 13 "r00" Name 13 "r00"
Name 17 "g_tTexbfs" Name 16 "g_tTexbfs"
Name 23 "$Global" Name 22 "$Global"
MemberName 23($Global) 0 "c1" MemberName 22($Global) 0 "c1"
MemberName 23($Global) 1 "c2" MemberName 22($Global) 1 "c2"
MemberName 23($Global) 2 "c3" MemberName 22($Global) 2 "c3"
MemberName 23($Global) 3 "c4" MemberName 22($Global) 3 "c4"
MemberName 23($Global) 4 "o1" MemberName 22($Global) 4 "o1"
MemberName 23($Global) 5 "o2" MemberName 22($Global) 5 "o2"
MemberName 23($Global) 6 "o3" MemberName 22($Global) 6 "o3"
MemberName 23($Global) 7 "o4" MemberName 22($Global) 7 "o4"
Name 25 "" Name 24 ""
Name 34 "r01" Name 32 "r01"
Name 38 "g_tTexbis" Name 35 "g_tTexbis"
Name 47 "r02" Name 43 "r02"
Name 51 "g_tTexbus" Name 46 "g_tTexbus"
Name 60 "psout" Name 54 "psout"
Name 70 "flattenTemp" Name 64 "flattenTemp"
Name 73 "Color" Name 67 "Color"
Name 77 "Depth" Name 71 "Depth"
Name 80 "g_tTexbfs_test" Name 74 "g_tTexbfs_test"
Decorate 17(g_tTexbfs) DescriptorSet 0 Decorate 16(g_tTexbfs) DescriptorSet 0
MemberDecorate 23($Global) 0 Offset 0 MemberDecorate 22($Global) 0 Offset 0
MemberDecorate 23($Global) 1 Offset 8 MemberDecorate 22($Global) 1 Offset 8
MemberDecorate 23($Global) 2 Offset 16 MemberDecorate 22($Global) 2 Offset 16
MemberDecorate 23($Global) 3 Offset 32 MemberDecorate 22($Global) 3 Offset 32
MemberDecorate 23($Global) 4 Offset 48 MemberDecorate 22($Global) 4 Offset 48
MemberDecorate 23($Global) 5 Offset 56 MemberDecorate 22($Global) 5 Offset 56
MemberDecorate 23($Global) 6 Offset 64 MemberDecorate 22($Global) 6 Offset 64
MemberDecorate 23($Global) 7 Offset 80 MemberDecorate 22($Global) 7 Offset 80
Decorate 23($Global) Block Decorate 22($Global) Block
Decorate 25 DescriptorSet 0 Decorate 24 DescriptorSet 0
Decorate 38(g_tTexbis) DescriptorSet 0 Decorate 35(g_tTexbis) DescriptorSet 0
Decorate 51(g_tTexbus) DescriptorSet 0 Decorate 46(g_tTexbus) DescriptorSet 0
Decorate 73(Color) Location 0 Decorate 67(Color) Location 0
Decorate 77(Depth) BuiltIn FragDepth Decorate 71(Depth) BuiltIn FragDepth
Decorate 80(g_tTexbfs_test) DescriptorSet 0 Decorate 74(g_tTexbfs_test) DescriptorSet 0
Decorate 80(g_tTexbfs_test) Binding 0 Decorate 74(g_tTexbfs_test) Binding 0
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
6: TypeFloat 32 6: TypeFloat 32
@ -230,84 +230,78 @@ gl_FragCoord origin is upper left
9: TypeFunction 8(PS_OUTPUT) 9: TypeFunction 8(PS_OUTPUT)
12: TypePointer Function 6(float) 12: TypePointer Function 6(float)
14: TypeImage 6(float) Buffer sampled format:R32f 14: TypeImage 6(float) Buffer sampled format:R32f
15: TypeSampledImage 14 15: TypePointer UniformConstant 14
16: TypePointer UniformConstant 15 16(g_tTexbfs): 15(ptr) Variable UniformConstant
17(g_tTexbfs): 16(ptr) Variable UniformConstant 18: TypeInt 32 1
19: TypeInt 32 1 19: TypeVector 18(int) 2
20: TypeVector 19(int) 2 20: TypeVector 18(int) 3
21: TypeVector 19(int) 3 21: TypeVector 18(int) 4
22: TypeVector 19(int) 4 22($Global): TypeStruct 18(int) 19(ivec2) 20(ivec3) 21(ivec4) 18(int) 19(ivec2) 20(ivec3) 21(ivec4)
23($Global): TypeStruct 19(int) 20(ivec2) 21(ivec3) 22(ivec4) 19(int) 20(ivec2) 21(ivec3) 22(ivec4) 23: TypePointer Uniform 22($Global)
24: TypePointer Uniform 23($Global) 24: 23(ptr) Variable Uniform
25: 24(ptr) Variable Uniform 25: 18(int) Constant 0
26: 19(int) Constant 0 26: TypePointer Uniform 18(int)
27: TypePointer Uniform 19(int) 31: TypePointer Function 18(int)
33: TypePointer Function 19(int) 33: TypeImage 18(int) Buffer sampled format:R32i
35: TypeImage 19(int) Buffer sampled format:R32i 34: TypePointer UniformConstant 33
36: TypeSampledImage 35 35(g_tTexbis): 34(ptr) Variable UniformConstant
37: TypePointer UniformConstant 36 41: TypeInt 32 0
38(g_tTexbis): 37(ptr) Variable UniformConstant 42: TypePointer Function 41(int)
45: TypeInt 32 0 44: TypeImage 41(int) Buffer sampled format:R32ui
46: TypePointer Function 45(int) 45: TypePointer UniformConstant 44
48: TypeImage 45(int) Buffer sampled format:R32ui 46(g_tTexbus): 45(ptr) Variable UniformConstant
49: TypeSampledImage 48 50: TypeVector 41(int) 4
50: TypePointer UniformConstant 49 53: TypePointer Function 8(PS_OUTPUT)
51(g_tTexbus): 50(ptr) Variable UniformConstant 55: 6(float) Constant 1065353216
56: TypeVector 45(int) 4 56: 7(fvec4) ConstantComposite 55 55 55 55
59: TypePointer Function 8(PS_OUTPUT) 57: TypePointer Function 7(fvec4)
61: 6(float) Constant 1065353216 59: 18(int) Constant 1
62: 7(fvec4) ConstantComposite 61 61 61 61 66: TypePointer Output 7(fvec4)
63: TypePointer Function 7(fvec4) 67(Color): 66(ptr) Variable Output
65: 19(int) Constant 1 70: TypePointer Output 6(float)
72: TypePointer Output 7(fvec4) 71(Depth): 70(ptr) Variable Output
73(Color): 72(ptr) Variable Output 74(g_tTexbfs_test): 15(ptr) Variable UniformConstant
76: TypePointer Output 6(float)
77(Depth): 76(ptr) Variable Output
80(g_tTexbfs_test): 16(ptr) Variable UniformConstant
4(main): 2 Function None 3 4(main): 2 Function None 3
5: Label 5: Label
70(flattenTemp): 59(ptr) Variable Function 64(flattenTemp): 53(ptr) Variable Function
71:8(PS_OUTPUT) FunctionCall 10(@main() 65:8(PS_OUTPUT) FunctionCall 10(@main()
Store 70(flattenTemp) 71 Store 64(flattenTemp) 65
74: 63(ptr) AccessChain 70(flattenTemp) 26 68: 57(ptr) AccessChain 64(flattenTemp) 25
75: 7(fvec4) Load 74 69: 7(fvec4) Load 68
Store 73(Color) 75 Store 67(Color) 69
78: 12(ptr) AccessChain 70(flattenTemp) 65 72: 12(ptr) AccessChain 64(flattenTemp) 59
79: 6(float) Load 78 73: 6(float) Load 72
Store 77(Depth) 79 Store 71(Depth) 73
Return Return
FunctionEnd FunctionEnd
10(@main():8(PS_OUTPUT) Function None 9 10(@main():8(PS_OUTPUT) Function None 9
11: Label 11: Label
13(r00): 12(ptr) Variable Function 13(r00): 12(ptr) Variable Function
34(r01): 33(ptr) Variable Function 32(r01): 31(ptr) Variable Function
47(r02): 46(ptr) Variable Function 43(r02): 42(ptr) Variable Function
60(psout): 59(ptr) Variable Function 54(psout): 53(ptr) Variable Function
18: 15 Load 17(g_tTexbfs) 17: 14 Load 16(g_tTexbfs)
28: 27(ptr) AccessChain 25 26 27: 26(ptr) AccessChain 24 25
29: 19(int) Load 28 28: 18(int) Load 27
30: 14 Image 18 29: 7(fvec4) ImageFetch 17 28
31: 7(fvec4) ImageFetch 30 29 30: 6(float) CompositeExtract 29 0
32: 6(float) CompositeExtract 31 0 Store 13(r00) 30
Store 13(r00) 32 36: 33 Load 35(g_tTexbis)
39: 36 Load 38(g_tTexbis) 37: 26(ptr) AccessChain 24 25
40: 27(ptr) AccessChain 25 26 38: 18(int) Load 37
41: 19(int) Load 40 39: 21(ivec4) ImageFetch 36 38
42: 35 Image 39 40: 18(int) CompositeExtract 39 0
43: 22(ivec4) ImageFetch 42 41 Store 32(r01) 40
44: 19(int) CompositeExtract 43 0 47: 44 Load 46(g_tTexbus)
Store 34(r01) 44 48: 26(ptr) AccessChain 24 25
52: 49 Load 51(g_tTexbus) 49: 18(int) Load 48
53: 27(ptr) AccessChain 25 26 51: 50(ivec4) ImageFetch 47 49
54: 19(int) Load 53 52: 41(int) CompositeExtract 51 0
55: 48 Image 52 Store 43(r02) 52
57: 56(ivec4) ImageFetch 55 54 58: 57(ptr) AccessChain 54(psout) 25
58: 45(int) CompositeExtract 57 0 Store 58 56
Store 47(r02) 58 60: 12(ptr) AccessChain 54(psout) 59
64: 63(ptr) AccessChain 60(psout) 26 Store 60 55
Store 64 62 61:8(PS_OUTPUT) Load 54(psout)
66: 12(ptr) AccessChain 60(psout) 65 ReturnValue 61
Store 66 61
67:8(PS_OUTPUT) Load 60(psout)
ReturnValue 67
FunctionEnd FunctionEnd

View File

@ -7,7 +7,7 @@ Shader version: 450
0:? Sequence 0:? Sequence
0:5 Branch: Return with expression 0:5 Branch: Return with expression
0:5 textureFetch ( temp 4-component vector of float) 0:5 textureFetch ( temp 4-component vector of float)
0:5 'Position' (layout( rgba32f) uniform samplerBuffer) 0:5 'Position' (layout( rgba32f) uniform textureBuffer)
0:5 Convert uint to int ( temp int) 0:5 Convert uint to int ( temp int)
0:5 'Index' ( in uint) 0:5 'Index' ( in uint)
0:9 Function Definition: @RealEntrypoint(u1; ( temp 4-component vector of float) 0:9 Function Definition: @RealEntrypoint(u1; ( temp 4-component vector of float)
@ -28,7 +28,7 @@ Shader version: 450
0:9 Function Call: @RealEntrypoint(u1; ( temp 4-component vector of float) 0:9 Function Call: @RealEntrypoint(u1; ( temp 4-component vector of float)
0:? 'Index' ( temp uint) 0:? 'Index' ( temp uint)
0:? Linker Objects 0:? Linker Objects
0:? 'Position' (layout( rgba32f) uniform samplerBuffer) 0:? 'Position' (layout( rgba32f) uniform textureBuffer)
0:? '@entryPointOutput' ( out 4-component vector of float Position) 0:? '@entryPointOutput' ( out 4-component vector of float Position)
0:? 'Index' ( in uint VertexIndex) 0:? 'Index' ( in uint VertexIndex)
@ -44,7 +44,7 @@ Shader version: 450
0:? Sequence 0:? Sequence
0:5 Branch: Return with expression 0:5 Branch: Return with expression
0:5 textureFetch ( temp 4-component vector of float) 0:5 textureFetch ( temp 4-component vector of float)
0:5 'Position' (layout( rgba32f) uniform samplerBuffer) 0:5 'Position' (layout( rgba32f) uniform textureBuffer)
0:5 Convert uint to int ( temp int) 0:5 Convert uint to int ( temp int)
0:5 'Index' ( in uint) 0:5 'Index' ( in uint)
0:9 Function Definition: @RealEntrypoint(u1; ( temp 4-component vector of float) 0:9 Function Definition: @RealEntrypoint(u1; ( temp 4-component vector of float)
@ -65,33 +65,33 @@ Shader version: 450
0:9 Function Call: @RealEntrypoint(u1; ( temp 4-component vector of float) 0:9 Function Call: @RealEntrypoint(u1; ( temp 4-component vector of float)
0:? 'Index' ( temp uint) 0:? 'Index' ( temp uint)
0:? Linker Objects 0:? Linker Objects
0:? 'Position' (layout( rgba32f) uniform samplerBuffer) 0:? 'Position' (layout( rgba32f) uniform textureBuffer)
0:? '@entryPointOutput' ( out 4-component vector of float Position) 0:? '@entryPointOutput' ( out 4-component vector of float Position)
0:? 'Index' ( in uint VertexIndex) 0:? 'Index' ( in uint VertexIndex)
// Module Version 10000 // Module Version 10000
// Generated by (magic number): 80001 // Generated by (magic number): 80001
// Id's are bound by 43 // Id's are bound by 41
Capability Shader Capability Shader
Capability SampledBuffer Capability SampledBuffer
1: ExtInstImport "GLSL.std.450" 1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450 MemoryModel Logical GLSL450
EntryPoint Vertex 4 "RealEntrypoint" 36 39 EntryPoint Vertex 4 "RealEntrypoint" 34 37
Name 4 "RealEntrypoint" Name 4 "RealEntrypoint"
Name 12 "FakeEntrypoint(u1;" Name 12 "FakeEntrypoint(u1;"
Name 11 "Index" Name 11 "Index"
Name 15 "@RealEntrypoint(u1;" Name 15 "@RealEntrypoint(u1;"
Name 14 "Index" Name 14 "Index"
Name 20 "Position" Name 19 "Position"
Name 29 "param" Name 27 "param"
Name 32 "Index"
Name 34 "Index" Name 34 "Index"
Name 36 "Index" Name 37 "@entryPointOutput"
Name 39 "@entryPointOutput" Name 38 "param"
Name 40 "param" Decorate 19(Position) DescriptorSet 0
Decorate 20(Position) DescriptorSet 0 Decorate 34(Index) BuiltIn VertexIndex
Decorate 36(Index) BuiltIn VertexIndex Decorate 37(@entryPointOutput) BuiltIn Position
Decorate 39(@entryPointOutput) BuiltIn Position
2: TypeVoid 2: TypeVoid
3: TypeFunction 2 3: TypeFunction 2
6: TypeInt 32 0 6: TypeInt 32 0
@ -100,42 +100,40 @@ Shader version: 450
9: TypeVector 8(float) 4 9: TypeVector 8(float) 4
10: TypeFunction 9(fvec4) 7(ptr) 10: TypeFunction 9(fvec4) 7(ptr)
17: TypeImage 8(float) Buffer sampled format:Rgba32f 17: TypeImage 8(float) Buffer sampled format:Rgba32f
18: TypeSampledImage 17 18: TypePointer UniformConstant 17
19: TypePointer UniformConstant 18 19(Position): 18(ptr) Variable UniformConstant
20(Position): 19(ptr) Variable UniformConstant 22: TypeInt 32 1
23: TypeInt 32 1 33: TypePointer Input 6(int)
35: TypePointer Input 6(int) 34(Index): 33(ptr) Variable Input
36(Index): 35(ptr) Variable Input 36: TypePointer Output 9(fvec4)
38: TypePointer Output 9(fvec4) 37(@entryPointOutput): 36(ptr) Variable Output
39(@entryPointOutput): 38(ptr) Variable Output
4(RealEntrypoint): 2 Function None 3 4(RealEntrypoint): 2 Function None 3
5: Label 5: Label
34(Index): 7(ptr) Variable Function 32(Index): 7(ptr) Variable Function
40(param): 7(ptr) Variable Function 38(param): 7(ptr) Variable Function
37: 6(int) Load 36(Index) 35: 6(int) Load 34(Index)
Store 34(Index) 37 Store 32(Index) 35
41: 6(int) Load 34(Index) 39: 6(int) Load 32(Index)
Store 40(param) 41 Store 38(param) 39
42: 9(fvec4) FunctionCall 15(@RealEntrypoint(u1;) 40(param) 40: 9(fvec4) FunctionCall 15(@RealEntrypoint(u1;) 38(param)
Store 39(@entryPointOutput) 42 Store 37(@entryPointOutput) 40
Return Return
FunctionEnd FunctionEnd
12(FakeEntrypoint(u1;): 9(fvec4) Function None 10 12(FakeEntrypoint(u1;): 9(fvec4) Function None 10
11(Index): 7(ptr) FunctionParameter 11(Index): 7(ptr) FunctionParameter
13: Label 13: Label
21: 18 Load 20(Position) 20: 17 Load 19(Position)
22: 6(int) Load 11(Index) 21: 6(int) Load 11(Index)
24: 23(int) Bitcast 22 23: 22(int) Bitcast 21
25: 17 Image 21 24: 9(fvec4) ImageFetch 20 23
26: 9(fvec4) ImageFetch 25 24 ReturnValue 24
ReturnValue 26
FunctionEnd FunctionEnd
15(@RealEntrypoint(u1;): 9(fvec4) Function None 10 15(@RealEntrypoint(u1;): 9(fvec4) Function None 10
14(Index): 7(ptr) FunctionParameter 14(Index): 7(ptr) FunctionParameter
16: Label 16: Label
29(param): 7(ptr) Variable Function 27(param): 7(ptr) Variable Function
30: 6(int) Load 14(Index) 28: 6(int) Load 14(Index)
Store 29(param) 30 Store 27(param) 28
31: 9(fvec4) FunctionCall 12(FakeEntrypoint(u1;) 29(param) 29: 9(fvec4) FunctionCall 12(FakeEntrypoint(u1;) 27(param)
ReturnValue 31 ReturnValue 29
FunctionEnd FunctionEnd

View File

@ -1145,9 +1145,10 @@ bool HlslGrammar::acceptTextureType(TType& type)
bool array = false; bool array = false;
bool ms = false; bool ms = false;
bool image = false; bool image = false;
bool combined = true;
switch (textureType) { switch (textureType) {
case EHTokBuffer: dim = EsdBuffer; break; case EHTokBuffer: dim = EsdBuffer; combined = false; break;
case EHTokTexture1d: dim = Esd1D; break; case EHTokTexture1d: dim = Esd1D; break;
case EHTokTexture1darray: dim = Esd1D; array = true; break; case EHTokTexture1darray: dim = Esd1D; array = true; break;
case EHTokTexture2d: dim = Esd2D; break; case EHTokTexture2d: dim = Esd2D; break;
@ -1252,6 +1253,10 @@ bool HlslGrammar::acceptTextureType(TType& type)
// Remember the declared vector size. // Remember the declared vector size.
sampler.vectorSize = txType.getVectorSize(); sampler.vectorSize = txType.getVectorSize();
// Force uncombined, if necessary
if (!combined)
sampler.combined = false;
type.shallowCopy(TType(sampler, EvqUniform, arraySizes)); type.shallowCopy(TType(sampler, EvqUniform, arraySizes));
type.getQualifier().layoutFormat = format; type.getQualifier().layoutFormat = format;