WIP: HLSL: Buffer types should be unsampled.
RWBuffer objects were generating (properly) unsampled resoures, while Buffer objects were not. This fixes that.
This commit is contained in:
		
							parent
							
								
									e751bca75c
								
							
						
					
					
						commit
						cf2e7275e8
					
				| @ -341,8 +341,8 @@ gl_FragCoord origin is upper left | ||||
| 0:51        move second child to first child ( temp float) | ||||
| 0:51          'r50' ( temp float) | ||||
| 0:51          Construct float ( temp float) | ||||
| 0:?             textureFetch ( temp 4-component vector of float) | ||||
| 0:51              'g_tTexbfs' (layout( r32f) uniform samplerBuffer) | ||||
| 0:?             imageLoad ( temp 4-component vector of float) | ||||
| 0:51              'g_tTexbfs' (layout( r32f) uniform imageBuffer) | ||||
| 0:51              Convert uint to int ( temp int) | ||||
| 0:51                upos: direct index for structure (layout( offset=48) uniform uint) | ||||
| 0:51                  'anon@0' (layout( row_major std140) uniform block{layout( offset=0) uniform int i, layout( offset=4) uniform uint u, layout( offset=8) uniform float f, layout( offset=12) uniform bool b, layout( offset=16) uniform 2-component vector of int i2, layout( offset=24) uniform 2-component vector of uint u2, layout( offset=32) uniform 2-component vector of float f2, layout( offset=40) uniform 2-component vector of bool b2, layout( offset=48) uniform uint upos, layout( offset=52) uniform float fpos}) | ||||
| @ -352,8 +352,8 @@ gl_FragCoord origin is upper left | ||||
| 0:52        move second child to first child ( temp float) | ||||
| 0:52          'r51' ( temp float) | ||||
| 0:52          Construct float ( temp float) | ||||
| 0:?             textureFetch ( temp 4-component vector of float) | ||||
| 0:52              'g_tTexbfs' (layout( r32f) uniform samplerBuffer) | ||||
| 0:?             imageLoad ( temp 4-component vector of float) | ||||
| 0:52              'g_tTexbfs' (layout( r32f) uniform imageBuffer) | ||||
| 0:52              Convert float to int ( temp int) | ||||
| 0:52                fpos: direct index for structure (layout( offset=52) uniform float) | ||||
| 0:52                  'anon@0' (layout( row_major std140) uniform block{layout( offset=0) uniform int i, layout( offset=4) uniform uint u, layout( offset=8) uniform float f, layout( offset=12) uniform bool b, layout( offset=16) uniform 2-component vector of int i2, layout( offset=24) uniform 2-component vector of uint u2, layout( offset=32) uniform 2-component vector of float f2, layout( offset=40) uniform 2-component vector of bool b2, layout( offset=48) uniform uint upos, layout( offset=52) uniform float fpos}) | ||||
| @ -436,7 +436,7 @@ gl_FragCoord origin is upper left | ||||
| 0:20            Constant: | ||||
| 0:20              0 (const int) | ||||
| 0:?   Linker Objects | ||||
| 0:?     'g_tTexbfs' (layout( r32f) uniform samplerBuffer) | ||||
| 0:?     'g_tTexbfs' (layout( r32f) uniform imageBuffer) | ||||
| 0:?     'g_tTex1df4' ( uniform texture1D) | ||||
| 0:?     'color' (layout( location=0) out 4-component vector of float) | ||||
| 0:?     'anon@0' (layout( row_major std140) uniform block{layout( offset=0) uniform int i, layout( offset=4) uniform uint u, layout( offset=8) uniform float f, layout( offset=12) uniform bool b, layout( offset=16) uniform 2-component vector of int i2, layout( offset=24) uniform 2-component vector of uint u2, layout( offset=32) uniform 2-component vector of float f2, layout( offset=40) uniform 2-component vector of bool b2, layout( offset=48) uniform uint upos, layout( offset=52) uniform float fpos}) | ||||
| @ -787,8 +787,8 @@ gl_FragCoord origin is upper left | ||||
| 0:51        move second child to first child ( temp float) | ||||
| 0:51          'r50' ( temp float) | ||||
| 0:51          Construct float ( temp float) | ||||
| 0:?             textureFetch ( temp 4-component vector of float) | ||||
| 0:51              'g_tTexbfs' (layout( r32f) uniform samplerBuffer) | ||||
| 0:?             imageLoad ( temp 4-component vector of float) | ||||
| 0:51              'g_tTexbfs' (layout( r32f) uniform imageBuffer) | ||||
| 0:51              Convert uint to int ( temp int) | ||||
| 0:51                upos: direct index for structure (layout( offset=48) uniform uint) | ||||
| 0:51                  'anon@0' (layout( row_major std140) uniform block{layout( offset=0) uniform int i, layout( offset=4) uniform uint u, layout( offset=8) uniform float f, layout( offset=12) uniform bool b, layout( offset=16) uniform 2-component vector of int i2, layout( offset=24) uniform 2-component vector of uint u2, layout( offset=32) uniform 2-component vector of float f2, layout( offset=40) uniform 2-component vector of bool b2, layout( offset=48) uniform uint upos, layout( offset=52) uniform float fpos}) | ||||
| @ -798,8 +798,8 @@ gl_FragCoord origin is upper left | ||||
| 0:52        move second child to first child ( temp float) | ||||
| 0:52          'r51' ( temp float) | ||||
| 0:52          Construct float ( temp float) | ||||
| 0:?             textureFetch ( temp 4-component vector of float) | ||||
| 0:52              'g_tTexbfs' (layout( r32f) uniform samplerBuffer) | ||||
| 0:?             imageLoad ( temp 4-component vector of float) | ||||
| 0:52              'g_tTexbfs' (layout( r32f) uniform imageBuffer) | ||||
| 0:52              Convert float to int ( temp int) | ||||
| 0:52                fpos: direct index for structure (layout( offset=52) uniform float) | ||||
| 0:52                  'anon@0' (layout( row_major std140) uniform block{layout( offset=0) uniform int i, layout( offset=4) uniform uint u, layout( offset=8) uniform float f, layout( offset=12) uniform bool b, layout( offset=16) uniform 2-component vector of int i2, layout( offset=24) uniform 2-component vector of uint u2, layout( offset=32) uniform 2-component vector of float f2, layout( offset=40) uniform 2-component vector of bool b2, layout( offset=48) uniform uint upos, layout( offset=52) uniform float fpos}) | ||||
| @ -882,14 +882,14 @@ gl_FragCoord origin is upper left | ||||
| 0:20            Constant: | ||||
| 0:20              0 (const int) | ||||
| 0:?   Linker Objects | ||||
| 0:?     'g_tTexbfs' (layout( r32f) uniform samplerBuffer) | ||||
| 0:?     'g_tTexbfs' (layout( r32f) uniform imageBuffer) | ||||
| 0:?     'g_tTex1df4' ( uniform texture1D) | ||||
| 0:?     'color' (layout( location=0) out 4-component vector of float) | ||||
| 0:?     'anon@0' (layout( row_major std140) uniform block{layout( offset=0) uniform int i, layout( offset=4) uniform uint u, layout( offset=8) uniform float f, layout( offset=12) uniform bool b, layout( offset=16) uniform 2-component vector of int i2, layout( offset=24) uniform 2-component vector of uint u2, layout( offset=32) uniform 2-component vector of float f2, layout( offset=40) uniform 2-component vector of bool b2, layout( offset=48) uniform uint upos, layout( offset=52) uniform float fpos}) | ||||
| 
 | ||||
| // Module Version 10000 | ||||
| // Generated by (magic number): 80001 | ||||
| // Id's are bound by 325 | ||||
| // Id's are bound by 322 | ||||
| 
 | ||||
|                               Capability Shader | ||||
|                               Capability Sampled1D | ||||
| @ -897,7 +897,7 @@ gl_FragCoord origin is upper left | ||||
|                               Capability ImageQuery | ||||
|                1:             ExtInstImport  "GLSL.std.450" | ||||
|                               MemoryModel Logical GLSL450 | ||||
|                               EntryPoint Fragment 4  "main" 322 | ||||
|                               EntryPoint Fragment 4  "main" 319 | ||||
|                               ExecutionMode 4 OriginUpperLeft | ||||
|                               Name 4  "main" | ||||
|                               Name 8  "PS_OUTPUT" | ||||
| @ -938,19 +938,19 @@ gl_FragCoord origin is upper left | ||||
|                               Name 229  "r42" | ||||
|                               Name 243  "r43" | ||||
|                               Name 255  "r50" | ||||
|                               Name 259  "g_tTexbfs" | ||||
|                               Name 268  "r51" | ||||
|                               Name 277  "sizeQueryTemp" | ||||
|                               Name 280  "g_tTex1df4" | ||||
|                               Name 283  "WidthI" | ||||
|                               Name 286  "sizeQueryTemp" | ||||
|                               Name 292  "NumberOfLevelsU" | ||||
|                               Name 295  "sizeQueryTemp" | ||||
|                               Name 298  "WidthU" | ||||
|                               Name 300  "NumberOfLevelsI" | ||||
|                               Name 304  "sizeQueryTemp" | ||||
|                               Name 313  "ps_output" | ||||
|                               Name 322  "color" | ||||
|                               Name 258  "g_tTexbfs" | ||||
|                               Name 266  "r51" | ||||
|                               Name 274  "sizeQueryTemp" | ||||
|                               Name 277  "g_tTex1df4" | ||||
|                               Name 280  "WidthI" | ||||
|                               Name 283  "sizeQueryTemp" | ||||
|                               Name 289  "NumberOfLevelsU" | ||||
|                               Name 292  "sizeQueryTemp" | ||||
|                               Name 295  "WidthU" | ||||
|                               Name 297  "NumberOfLevelsI" | ||||
|                               Name 301  "sizeQueryTemp" | ||||
|                               Name 310  "ps_output" | ||||
|                               Name 319  "color" | ||||
|                               MemberDecorate 19($Global) 0 Offset 0 | ||||
|                               MemberDecorate 19($Global) 1 Offset 4 | ||||
|                               MemberDecorate 19($Global) 2 Offset 8 | ||||
| @ -963,9 +963,9 @@ gl_FragCoord origin is upper left | ||||
|                               MemberDecorate 19($Global) 9 Offset 52 | ||||
|                               Decorate 19($Global) Block | ||||
|                               Decorate 21 DescriptorSet 0 | ||||
|                               Decorate 259(g_tTexbfs) DescriptorSet 0 | ||||
|                               Decorate 280(g_tTex1df4) DescriptorSet 0 | ||||
|                               Decorate 322(color) Location 0 | ||||
|                               Decorate 258(g_tTexbfs) DescriptorSet 0 | ||||
|                               Decorate 277(g_tTex1df4) DescriptorSet 0 | ||||
|                               Decorate 319(color) Location 0 | ||||
|                2:             TypeVoid | ||||
|                3:             TypeFunction 2 | ||||
|                6:             TypeFloat 32 | ||||
| @ -1012,25 +1012,24 @@ gl_FragCoord origin is upper left | ||||
|              107:   16(ivec2) ConstantComposite 44 44 | ||||
|              109:     14(int) Constant 4 | ||||
|              110:             TypePointer Uniform 16(ivec2) | ||||
|              256:             TypeImage 6(float) Buffer sampled format:R32f | ||||
|              257:             TypeSampledImage 256 | ||||
|              258:             TypePointer UniformConstant 257 | ||||
|   259(g_tTexbfs):    258(ptr) Variable UniformConstant | ||||
|              261:     14(int) Constant 8 | ||||
|              270:     14(int) Constant 9 | ||||
|              278:             TypeImage 6(float) 1D sampled format:Unknown | ||||
|              279:             TypePointer UniformConstant 278 | ||||
|  280(g_tTex1df4):    279(ptr) Variable UniformConstant | ||||
|              288:     15(int) Constant 6 | ||||
|              312:             TypePointer Function 8(PS_OUTPUT) | ||||
|              316:             TypePointer Function 7(fvec4) | ||||
|              321:             TypePointer Output 7(fvec4) | ||||
|       322(color):    321(ptr) Variable Output | ||||
|              256:             TypeImage 6(float) Buffer nonsampled format:R32f | ||||
|              257:             TypePointer UniformConstant 256 | ||||
|   258(g_tTexbfs):    257(ptr) Variable UniformConstant | ||||
|              260:     14(int) Constant 8 | ||||
|              268:     14(int) Constant 9 | ||||
|              275:             TypeImage 6(float) 1D sampled format:Unknown | ||||
|              276:             TypePointer UniformConstant 275 | ||||
|  277(g_tTex1df4):    276(ptr) Variable UniformConstant | ||||
|              285:     15(int) Constant 6 | ||||
|              309:             TypePointer Function 8(PS_OUTPUT) | ||||
|              313:             TypePointer Function 7(fvec4) | ||||
|              318:             TypePointer Output 7(fvec4) | ||||
|       319(color):    318(ptr) Variable Output | ||||
|          4(main):           2 Function None 3 | ||||
|                5:             Label | ||||
|              323:8(PS_OUTPUT) FunctionCall 10(@main() | ||||
|              324:    7(fvec4) CompositeExtract 323 0 | ||||
|                               Store 322(color) 324 | ||||
|              320:8(PS_OUTPUT) FunctionCall 10(@main() | ||||
|              321:    7(fvec4) CompositeExtract 320 0 | ||||
|                               Store 319(color) 321 | ||||
|                               Return | ||||
|                               FunctionEnd | ||||
|       10(@main():8(PS_OUTPUT) Function None 9 | ||||
| @ -1058,16 +1057,16 @@ gl_FragCoord origin is upper left | ||||
|         229(r42):     73(ptr) Variable Function | ||||
|         243(r43):    101(ptr) Variable Function | ||||
|         255(r50):     12(ptr) Variable Function | ||||
|         268(r51):     12(ptr) Variable Function | ||||
| 277(sizeQueryTemp):     37(ptr) Variable Function | ||||
|      283(WidthI):     48(ptr) Variable Function | ||||
| 286(sizeQueryTemp):     37(ptr) Variable Function | ||||
| 292(NumberOfLevelsU):     37(ptr) Variable Function | ||||
| 295(sizeQueryTemp):     37(ptr) Variable Function | ||||
|      298(WidthU):     37(ptr) Variable Function | ||||
| 300(NumberOfLevelsI):     48(ptr) Variable Function | ||||
| 304(sizeQueryTemp):     37(ptr) Variable Function | ||||
|   313(ps_output):    312(ptr) Variable Function | ||||
|         266(r51):     12(ptr) Variable Function | ||||
| 274(sizeQueryTemp):     37(ptr) Variable Function | ||||
|      280(WidthI):     48(ptr) Variable Function | ||||
| 283(sizeQueryTemp):     37(ptr) Variable Function | ||||
| 289(NumberOfLevelsU):     37(ptr) Variable Function | ||||
| 292(sizeQueryTemp):     37(ptr) Variable Function | ||||
|      295(WidthU):     37(ptr) Variable Function | ||||
| 297(NumberOfLevelsI):     48(ptr) Variable Function | ||||
| 301(sizeQueryTemp):     37(ptr) Variable Function | ||||
|   310(ps_output):    309(ptr) Variable Function | ||||
|               24:     23(ptr) AccessChain 21 22 | ||||
|               25:     15(int) Load 24 | ||||
|               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 | ||||
|              254:   16(ivec2) Bitcast 253 | ||||
|                               Store 243(r43) 254 | ||||
|              260:         257 Load 259(g_tTexbfs) | ||||
|              262:     23(ptr) AccessChain 21 261 | ||||
|              263:     15(int) Load 262 | ||||
|              264:     14(int) Bitcast 263 | ||||
|              265:         256 Image 260 | ||||
|              266:    7(fvec4) ImageFetch 265 264 | ||||
|              267:    6(float) CompositeExtract 266 0 | ||||
|                               Store 255(r50) 267 | ||||
|              269:         257 Load 259(g_tTexbfs) | ||||
|              271:     33(ptr) AccessChain 21 270 | ||||
|              272:    6(float) Load 271 | ||||
|              273:     14(int) ConvertFToS 272 | ||||
|              274:         256 Image 269 | ||||
|              275:    7(fvec4) ImageFetch 274 273 | ||||
|              276:    6(float) CompositeExtract 275 0 | ||||
|                               Store 268(r51) 276 | ||||
|              281:         278 Load 280(g_tTex1df4) | ||||
|              282:     15(int) ImageQuerySizeLod 281 53 | ||||
|                               Store 277(sizeQueryTemp) 282 | ||||
|              284:     15(int) Load 277(sizeQueryTemp) | ||||
|              285:     14(int) Bitcast 284 | ||||
|                               Store 283(WidthI) 285 | ||||
|              287:         278 Load 280(g_tTex1df4) | ||||
|              289:     15(int) ImageQuerySizeLod 287 288 | ||||
|                               Store 286(sizeQueryTemp) 289 | ||||
|              290:     15(int) Load 286(sizeQueryTemp) | ||||
|              291:     14(int) Bitcast 290 | ||||
|                               Store 283(WidthI) 291 | ||||
|              293:         278 Load 280(g_tTex1df4) | ||||
|              294:     15(int) ImageQueryLevels 293 | ||||
|                               Store 292(NumberOfLevelsU) 294 | ||||
|              296:         278 Load 280(g_tTex1df4) | ||||
|              297:     15(int) ImageQuerySizeLod 296 288 | ||||
|                               Store 295(sizeQueryTemp) 297 | ||||
|              299:     15(int) Load 295(sizeQueryTemp) | ||||
|                               Store 298(WidthU) 299 | ||||
|              301:         278 Load 280(g_tTex1df4) | ||||
|              302:     15(int) ImageQueryLevels 301 | ||||
|              303:     14(int) Bitcast 302 | ||||
|                               Store 300(NumberOfLevelsI) 303 | ||||
|              305:         278 Load 280(g_tTex1df4) | ||||
|              306:     15(int) ImageQuerySizeLod 305 288 | ||||
|                               Store 304(sizeQueryTemp) 306 | ||||
|              307:     15(int) Load 304(sizeQueryTemp) | ||||
|              259:         256 Load 258(g_tTexbfs) | ||||
|              261:     23(ptr) AccessChain 21 260 | ||||
|              262:     15(int) Load 261 | ||||
|              263:     14(int) Bitcast 262 | ||||
|              264:    7(fvec4) ImageRead 259 263 | ||||
|              265:    6(float) CompositeExtract 264 0 | ||||
|                               Store 255(r50) 265 | ||||
|              267:         256 Load 258(g_tTexbfs) | ||||
|              269:     33(ptr) AccessChain 21 268 | ||||
|              270:    6(float) Load 269 | ||||
|              271:     14(int) ConvertFToS 270 | ||||
|              272:    7(fvec4) ImageRead 267 271 | ||||
|              273:    6(float) CompositeExtract 272 0 | ||||
|                               Store 266(r51) 273 | ||||
|              278:         275 Load 277(g_tTex1df4) | ||||
|              279:     15(int) ImageQuerySizeLod 278 53 | ||||
|                               Store 274(sizeQueryTemp) 279 | ||||
|              281:     15(int) Load 274(sizeQueryTemp) | ||||
|              282:     14(int) Bitcast 281 | ||||
|                               Store 280(WidthI) 282 | ||||
|              284:         275 Load 277(g_tTex1df4) | ||||
|              286:     15(int) ImageQuerySizeLod 284 285 | ||||
|                               Store 283(sizeQueryTemp) 286 | ||||
|              287:     15(int) Load 283(sizeQueryTemp) | ||||
|              288:     14(int) Bitcast 287 | ||||
|                               Store 280(WidthI) 288 | ||||
|              290:         275 Load 277(g_tTex1df4) | ||||
|              291:     15(int) ImageQueryLevels 290 | ||||
|                               Store 289(NumberOfLevelsU) 291 | ||||
|              293:         275 Load 277(g_tTex1df4) | ||||
|              294:     15(int) ImageQuerySizeLod 293 285 | ||||
|                               Store 292(sizeQueryTemp) 294 | ||||
|              296:     15(int) Load 292(sizeQueryTemp) | ||||
|                               Store 295(WidthU) 296 | ||||
|              298:         275 Load 277(g_tTex1df4) | ||||
|              299:     15(int) ImageQueryLevels 298 | ||||
|              300:     14(int) Bitcast 299 | ||||
|                               Store 297(NumberOfLevelsI) 300 | ||||
|              302:         275 Load 277(g_tTex1df4) | ||||
|              303:     15(int) ImageQuerySizeLod 302 285 | ||||
|                               Store 301(sizeQueryTemp) 303 | ||||
|              304:     15(int) Load 301(sizeQueryTemp) | ||||
|              305:     14(int) Bitcast 304 | ||||
|                               Store 280(WidthI) 305 | ||||
|              306:         275 Load 277(g_tTex1df4) | ||||
|              307:     15(int) ImageQueryLevels 306 | ||||
|              308:     14(int) Bitcast 307 | ||||
|                               Store 283(WidthI) 308 | ||||
|              309:         278 Load 280(g_tTex1df4) | ||||
|              310:     15(int) ImageQueryLevels 309 | ||||
|              311:     14(int) Bitcast 310 | ||||
|                               Store 300(NumberOfLevelsI) 311 | ||||
|              314:    6(float) Load 13(r00) | ||||
|              315:    7(fvec4) CompositeConstruct 314 314 314 314 | ||||
|              317:    316(ptr) AccessChain 313(ps_output) 53 | ||||
|                               Store 317 315 | ||||
|              318:8(PS_OUTPUT) Load 313(ps_output) | ||||
|                               ReturnValue 318 | ||||
|                               Store 297(NumberOfLevelsI) 308 | ||||
|              311:    6(float) Load 13(r00) | ||||
|              312:    7(fvec4) CompositeConstruct 311 311 311 311 | ||||
|              314:    313(ptr) AccessChain 310(ps_output) 53 | ||||
|                               Store 314 312 | ||||
|              315:8(PS_OUTPUT) Load 310(ps_output) | ||||
|                               ReturnValue 315 | ||||
|                               FunctionEnd | ||||
|  | ||||
| @ -94,7 +94,7 @@ gl_FragCoord origin is upper left | ||||
| 0:20            Constant: | ||||
| 0:20              0 (const int) | ||||
| 0:?   Linker Objects | ||||
| 0:?     'g_tTexbfs' (layout( r32f) uniform samplerBuffer) | ||||
| 0:?     'g_tTexbfs' (layout( r32f) uniform imageBuffer) | ||||
| 0:?     'g_tTex1df4' ( uniform texture1D) | ||||
| 0:?     'color' (layout( location=0) out 4-component vector of float) | ||||
| 0:?     'anon@0' (layout( row_major std140) uniform block{layout( offset=0) uniform int i, layout( offset=4) uniform uint u, layout( offset=8) uniform float f, layout( offset=12) uniform bool b, layout( offset=16) uniform 2-component vector of int i2, layout( offset=24) uniform 2-component vector of uint u2, layout( offset=32) uniform 2-component vector of float f2, layout( offset=40) uniform 2-component vector of bool b2, layout( offset=48) uniform uint upos, layout( offset=52) uniform float fpos}) | ||||
| @ -198,14 +198,14 @@ gl_FragCoord origin is upper left | ||||
| 0:20            Constant: | ||||
| 0:20              0 (const int) | ||||
| 0:?   Linker Objects | ||||
| 0:?     'g_tTexbfs' (layout( r32f) uniform samplerBuffer) | ||||
| 0:?     'g_tTexbfs' (layout( r32f) uniform imageBuffer) | ||||
| 0:?     'g_tTex1df4' ( uniform texture1D) | ||||
| 0:?     'color' (layout( location=0) out 4-component vector of float) | ||||
| 0:?     'anon@0' (layout( row_major std140) uniform block{layout( offset=0) uniform int i, layout( offset=4) uniform uint u, layout( offset=8) uniform float f, layout( offset=12) uniform bool b, layout( offset=16) uniform 2-component vector of int i2, layout( offset=24) uniform 2-component vector of uint u2, layout( offset=32) uniform 2-component vector of float f2, layout( offset=40) uniform 2-component vector of bool b2, layout( offset=48) uniform uint upos, layout( offset=52) uniform float fpos}) | ||||
| 
 | ||||
| // Module Version 10000 | ||||
| // Generated by (magic number): 80001 | ||||
| // Id's are bound by 81 | ||||
| // Id's are bound by 80 | ||||
| 
 | ||||
|                               Capability Shader | ||||
|                               Capability Sampled1D | ||||
| @ -242,7 +242,7 @@ gl_FragCoord origin is upper left | ||||
|                               Name 57  "sizeQueryTemp" | ||||
|                               Name 66  "ps_output" | ||||
|                               Name 74  "color" | ||||
|                               Name 80  "g_tTexbfs" | ||||
|                               Name 79  "g_tTexbfs" | ||||
|                               MemberDecorate 17($Global) 0 Offset 0 | ||||
|                               MemberDecorate 17($Global) 1 Offset 4 | ||||
|                               MemberDecorate 17($Global) 2 Offset 8 | ||||
| @ -257,7 +257,7 @@ gl_FragCoord origin is upper left | ||||
|                               Decorate 19 DescriptorSet 0 | ||||
|                               Decorate 31(g_tTex1df4) DescriptorSet 0 | ||||
|                               Decorate 74(color) Location 0 | ||||
|                               Decorate 80(g_tTexbfs) DescriptorSet 0 | ||||
|                               Decorate 79(g_tTexbfs) DescriptorSet 0 | ||||
|                2:             TypeVoid | ||||
|                3:             TypeFunction 2 | ||||
|                6:             TypeFloat 32 | ||||
| @ -288,10 +288,9 @@ gl_FragCoord origin is upper left | ||||
|               68:             TypePointer Function 7(fvec4) | ||||
|               73:             TypePointer Output 7(fvec4) | ||||
|        74(color):     73(ptr) Variable Output | ||||
|               77:             TypeImage 6(float) Buffer sampled format:R32f | ||||
|               78:             TypeSampledImage 77 | ||||
|               79:             TypePointer UniformConstant 78 | ||||
|    80(g_tTexbfs):     79(ptr) Variable UniformConstant | ||||
|               77:             TypeImage 6(float) Buffer nonsampled format:R32f | ||||
|               78:             TypePointer UniformConstant 77 | ||||
|    79(g_tTexbfs):     78(ptr) Variable UniformConstant | ||||
|          4(main):           2 Function None 3 | ||||
|                5:             Label | ||||
|               75:8(PS_OUTPUT) FunctionCall 10(@main() | ||||
|  | ||||
| @ -8,8 +8,8 @@ gl_FragCoord origin is upper left | ||||
| 0:28      Sequence | ||||
| 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          textureFetch ( temp 4-component vector of float) | ||||
| 0:28            'g_tTexbf4' (layout( rgba32f) uniform samplerBuffer) | ||||
| 0:28          imageLoad ( temp 4-component vector of float) | ||||
| 0:28            'g_tTexbf4' (layout( rgba32f) uniform imageBuffer) | ||||
| 0:28            c1: direct index for structure (layout( offset=0) uniform int) | ||||
| 0:28              'anon@0' (layout( row_major std140) uniform block{layout( offset=0) uniform int c1, layout( offset=8) uniform 2-component vector of int c2, layout( offset=16) uniform 3-component vector of int c3, layout( offset=32) uniform 4-component vector of int c4, layout( offset=48) uniform int o1, layout( offset=56) uniform 2-component vector of int o2, layout( offset=64) uniform 3-component vector of int o3, layout( offset=80) uniform 4-component vector of int o4}) | ||||
| 0:28              Constant: | ||||
| @ -17,8 +17,8 @@ gl_FragCoord origin is upper left | ||||
| 0:29      Sequence | ||||
| 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          textureFetch ( temp 4-component vector of int) | ||||
| 0:29            'g_tTexbi4' (layout( rgba32i) uniform isamplerBuffer) | ||||
| 0:29          imageLoad ( temp 4-component vector of int) | ||||
| 0:29            'g_tTexbi4' (layout( rgba32i) uniform iimageBuffer) | ||||
| 0:29            c1: direct index for structure (layout( offset=0) uniform int) | ||||
| 0:29              'anon@0' (layout( row_major std140) uniform block{layout( offset=0) uniform int c1, layout( offset=8) uniform 2-component vector of int c2, layout( offset=16) uniform 3-component vector of int c3, layout( offset=32) uniform 4-component vector of int c4, layout( offset=48) uniform int o1, layout( offset=56) uniform 2-component vector of int o2, layout( offset=64) uniform 3-component vector of int o3, layout( offset=80) uniform 4-component vector of int o4}) | ||||
| 0:29              Constant: | ||||
| @ -26,8 +26,8 @@ gl_FragCoord origin is upper left | ||||
| 0:30      Sequence | ||||
| 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          textureFetch ( temp 4-component vector of uint) | ||||
| 0:30            'g_tTexbu4' (layout( rgba32ui) uniform usamplerBuffer) | ||||
| 0:30          imageLoad ( temp 4-component vector of uint) | ||||
| 0:30            'g_tTexbu4' (layout( rgba32ui) uniform uimageBuffer) | ||||
| 0:30            c1: direct index for structure (layout( offset=0) uniform int) | ||||
| 0:30              'anon@0' (layout( row_major std140) uniform block{layout( offset=0) uniform int c1, layout( offset=8) uniform 2-component vector of int c2, layout( offset=16) uniform 3-component vector of int c3, layout( offset=32) uniform 4-component vector of int c4, layout( offset=48) uniform int o1, layout( offset=56) uniform 2-component vector of int o2, layout( offset=64) uniform 3-component vector of int o3, layout( offset=80) uniform 4-component vector of int o4}) | ||||
| 0:30              Constant: | ||||
| @ -71,10 +71,10 @@ gl_FragCoord origin is upper left | ||||
| 0:24            Constant: | ||||
| 0:24              1 (const int) | ||||
| 0:?   Linker Objects | ||||
| 0:?     'g_tTexbf4_test' (layout( binding=0 rgba32f) uniform samplerBuffer) | ||||
| 0:?     'g_tTexbf4' (layout( rgba32f) uniform samplerBuffer) | ||||
| 0:?     'g_tTexbi4' (layout( rgba32i) uniform isamplerBuffer) | ||||
| 0:?     'g_tTexbu4' (layout( rgba32ui) uniform usamplerBuffer) | ||||
| 0:?     'g_tTexbf4_test' (layout( binding=0 rgba32f) uniform imageBuffer) | ||||
| 0:?     'g_tTexbf4' (layout( rgba32f) uniform imageBuffer) | ||||
| 0:?     'g_tTexbi4' (layout( rgba32i) uniform iimageBuffer) | ||||
| 0:?     'g_tTexbu4' (layout( rgba32ui) uniform uimageBuffer) | ||||
| 0:?     'Color' (layout( location=0) out 4-component vector of float) | ||||
| 0:?     'Depth' ( out float FragDepth) | ||||
| 0:?     'anon@0' (layout( row_major std140) uniform block{layout( offset=0) uniform int c1, layout( offset=8) uniform 2-component vector of int c2, layout( offset=16) uniform 3-component vector of int c3, layout( offset=32) uniform 4-component vector of int c4, layout( offset=48) uniform int o1, layout( offset=56) uniform 2-component vector of int o2, layout( offset=64) uniform 3-component vector of int o3, layout( offset=80) uniform 4-component vector of int o4}) | ||||
| @ -92,8 +92,8 @@ gl_FragCoord origin is upper left | ||||
| 0:28      Sequence | ||||
| 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          textureFetch ( temp 4-component vector of float) | ||||
| 0:28            'g_tTexbf4' (layout( rgba32f) uniform samplerBuffer) | ||||
| 0:28          imageLoad ( temp 4-component vector of float) | ||||
| 0:28            'g_tTexbf4' (layout( rgba32f) uniform imageBuffer) | ||||
| 0:28            c1: direct index for structure (layout( offset=0) uniform int) | ||||
| 0:28              'anon@0' (layout( row_major std140) uniform block{layout( offset=0) uniform int c1, layout( offset=8) uniform 2-component vector of int c2, layout( offset=16) uniform 3-component vector of int c3, layout( offset=32) uniform 4-component vector of int c4, layout( offset=48) uniform int o1, layout( offset=56) uniform 2-component vector of int o2, layout( offset=64) uniform 3-component vector of int o3, layout( offset=80) uniform 4-component vector of int o4}) | ||||
| 0:28              Constant: | ||||
| @ -101,8 +101,8 @@ gl_FragCoord origin is upper left | ||||
| 0:29      Sequence | ||||
| 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          textureFetch ( temp 4-component vector of int) | ||||
| 0:29            'g_tTexbi4' (layout( rgba32i) uniform isamplerBuffer) | ||||
| 0:29          imageLoad ( temp 4-component vector of int) | ||||
| 0:29            'g_tTexbi4' (layout( rgba32i) uniform iimageBuffer) | ||||
| 0:29            c1: direct index for structure (layout( offset=0) uniform int) | ||||
| 0:29              'anon@0' (layout( row_major std140) uniform block{layout( offset=0) uniform int c1, layout( offset=8) uniform 2-component vector of int c2, layout( offset=16) uniform 3-component vector of int c3, layout( offset=32) uniform 4-component vector of int c4, layout( offset=48) uniform int o1, layout( offset=56) uniform 2-component vector of int o2, layout( offset=64) uniform 3-component vector of int o3, layout( offset=80) uniform 4-component vector of int o4}) | ||||
| 0:29              Constant: | ||||
| @ -110,8 +110,8 @@ gl_FragCoord origin is upper left | ||||
| 0:30      Sequence | ||||
| 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          textureFetch ( temp 4-component vector of uint) | ||||
| 0:30            'g_tTexbu4' (layout( rgba32ui) uniform usamplerBuffer) | ||||
| 0:30          imageLoad ( temp 4-component vector of uint) | ||||
| 0:30            'g_tTexbu4' (layout( rgba32ui) uniform uimageBuffer) | ||||
| 0:30            c1: direct index for structure (layout( offset=0) uniform int) | ||||
| 0:30              'anon@0' (layout( row_major std140) uniform block{layout( offset=0) uniform int c1, layout( offset=8) uniform 2-component vector of int c2, layout( offset=16) uniform 3-component vector of int c3, layout( offset=32) uniform 4-component vector of int c4, layout( offset=48) uniform int o1, layout( offset=56) uniform 2-component vector of int o2, layout( offset=64) uniform 3-component vector of int o3, layout( offset=80) uniform 4-component vector of int o4}) | ||||
| 0:30              Constant: | ||||
| @ -155,23 +155,23 @@ gl_FragCoord origin is upper left | ||||
| 0:24            Constant: | ||||
| 0:24              1 (const int) | ||||
| 0:?   Linker Objects | ||||
| 0:?     'g_tTexbf4_test' (layout( binding=0 rgba32f) uniform samplerBuffer) | ||||
| 0:?     'g_tTexbf4' (layout( rgba32f) uniform samplerBuffer) | ||||
| 0:?     'g_tTexbi4' (layout( rgba32i) uniform isamplerBuffer) | ||||
| 0:?     'g_tTexbu4' (layout( rgba32ui) uniform usamplerBuffer) | ||||
| 0:?     'g_tTexbf4_test' (layout( binding=0 rgba32f) uniform imageBuffer) | ||||
| 0:?     'g_tTexbf4' (layout( rgba32f) uniform imageBuffer) | ||||
| 0:?     'g_tTexbi4' (layout( rgba32i) uniform iimageBuffer) | ||||
| 0:?     'g_tTexbu4' (layout( rgba32ui) uniform uimageBuffer) | ||||
| 0:?     'Color' (layout( location=0) out 4-component vector of float) | ||||
| 0:?     'Depth' ( out float FragDepth) | ||||
| 0:?     'anon@0' (layout( row_major std140) uniform block{layout( offset=0) uniform int c1, layout( offset=8) uniform 2-component vector of int c2, layout( offset=16) uniform 3-component vector of int c3, layout( offset=32) uniform 4-component vector of int c4, layout( offset=48) uniform int o1, layout( offset=56) uniform 2-component vector of int o2, layout( offset=64) uniform 3-component vector of int o3, layout( offset=80) uniform 4-component vector of int o4}) | ||||
| 
 | ||||
| // Module Version 10000 | ||||
| // Generated by (magic number): 80001 | ||||
| // Id's are bound by 78 | ||||
| // Id's are bound by 72 | ||||
| 
 | ||||
|                               Capability Shader | ||||
|                               Capability SampledBuffer | ||||
|                1:             ExtInstImport  "GLSL.std.450" | ||||
|                               MemoryModel Logical GLSL450 | ||||
|                               EntryPoint Fragment 4  "main" 70 74 | ||||
|                               EntryPoint Fragment 4  "main" 64 68 | ||||
|                               ExecutionMode 4 OriginUpperLeft | ||||
|                               Name 4  "main" | ||||
|                               Name 8  "PS_OUTPUT" | ||||
| @ -179,43 +179,43 @@ gl_FragCoord origin is upper left | ||||
|                               MemberName 8(PS_OUTPUT) 1  "Depth" | ||||
|                               Name 10  "@main(" | ||||
|                               Name 13  "r00" | ||||
|                               Name 17  "g_tTexbf4" | ||||
|                               Name 23  "$Global" | ||||
|                               MemberName 23($Global) 0  "c1" | ||||
|                               MemberName 23($Global) 1  "c2" | ||||
|                               MemberName 23($Global) 2  "c3" | ||||
|                               MemberName 23($Global) 3  "c4" | ||||
|                               MemberName 23($Global) 4  "o1" | ||||
|                               MemberName 23($Global) 5  "o2" | ||||
|                               MemberName 23($Global) 6  "o3" | ||||
|                               MemberName 23($Global) 7  "o4" | ||||
|                               Name 25  "" | ||||
|                               Name 33  "r01" | ||||
|                               Name 37  "g_tTexbi4" | ||||
|                               Name 46  "r02" | ||||
|                               Name 50  "g_tTexbu4" | ||||
|                               Name 57  "psout" | ||||
|                               Name 67  "flattenTemp" | ||||
|                               Name 70  "Color" | ||||
|                               Name 74  "Depth" | ||||
|                               Name 77  "g_tTexbf4_test" | ||||
|                               Decorate 17(g_tTexbf4) DescriptorSet 0 | ||||
|                               MemberDecorate 23($Global) 0 Offset 0 | ||||
|                               MemberDecorate 23($Global) 1 Offset 8 | ||||
|                               MemberDecorate 23($Global) 2 Offset 16 | ||||
|                               MemberDecorate 23($Global) 3 Offset 32 | ||||
|                               MemberDecorate 23($Global) 4 Offset 48 | ||||
|                               MemberDecorate 23($Global) 5 Offset 56 | ||||
|                               MemberDecorate 23($Global) 6 Offset 64 | ||||
|                               MemberDecorate 23($Global) 7 Offset 80 | ||||
|                               Decorate 23($Global) Block | ||||
|                               Decorate 25 DescriptorSet 0 | ||||
|                               Decorate 37(g_tTexbi4) DescriptorSet 0 | ||||
|                               Decorate 50(g_tTexbu4) DescriptorSet 0 | ||||
|                               Decorate 70(Color) Location 0 | ||||
|                               Decorate 74(Depth) BuiltIn FragDepth | ||||
|                               Decorate 77(g_tTexbf4_test) DescriptorSet 0 | ||||
|                               Decorate 77(g_tTexbf4_test) Binding 0 | ||||
|                               Name 16  "g_tTexbf4" | ||||
|                               Name 22  "$Global" | ||||
|                               MemberName 22($Global) 0  "c1" | ||||
|                               MemberName 22($Global) 1  "c2" | ||||
|                               MemberName 22($Global) 2  "c3" | ||||
|                               MemberName 22($Global) 3  "c4" | ||||
|                               MemberName 22($Global) 4  "o1" | ||||
|                               MemberName 22($Global) 5  "o2" | ||||
|                               MemberName 22($Global) 6  "o3" | ||||
|                               MemberName 22($Global) 7  "o4" | ||||
|                               Name 24  "" | ||||
|                               Name 31  "r01" | ||||
|                               Name 34  "g_tTexbi4" | ||||
|                               Name 42  "r02" | ||||
|                               Name 45  "g_tTexbu4" | ||||
|                               Name 51  "psout" | ||||
|                               Name 61  "flattenTemp" | ||||
|                               Name 64  "Color" | ||||
|                               Name 68  "Depth" | ||||
|                               Name 71  "g_tTexbf4_test" | ||||
|                               Decorate 16(g_tTexbf4) DescriptorSet 0 | ||||
|                               MemberDecorate 22($Global) 0 Offset 0 | ||||
|                               MemberDecorate 22($Global) 1 Offset 8 | ||||
|                               MemberDecorate 22($Global) 2 Offset 16 | ||||
|                               MemberDecorate 22($Global) 3 Offset 32 | ||||
|                               MemberDecorate 22($Global) 4 Offset 48 | ||||
|                               MemberDecorate 22($Global) 5 Offset 56 | ||||
|                               MemberDecorate 22($Global) 6 Offset 64 | ||||
|                               MemberDecorate 22($Global) 7 Offset 80 | ||||
|                               Decorate 22($Global) Block | ||||
|                               Decorate 24 DescriptorSet 0 | ||||
|                               Decorate 34(g_tTexbi4) DescriptorSet 0 | ||||
|                               Decorate 45(g_tTexbu4) DescriptorSet 0 | ||||
|                               Decorate 64(Color) Location 0 | ||||
|                               Decorate 68(Depth) BuiltIn FragDepth | ||||
|                               Decorate 71(g_tTexbf4_test) DescriptorSet 0 | ||||
|                               Decorate 71(g_tTexbf4_test) Binding 0 | ||||
|                2:             TypeVoid | ||||
|                3:             TypeFunction 2 | ||||
|                6:             TypeFloat 32 | ||||
| @ -223,82 +223,76 @@ gl_FragCoord origin is upper left | ||||
|     8(PS_OUTPUT):             TypeStruct 7(fvec4) 6(float) | ||||
|                9:             TypeFunction 8(PS_OUTPUT) | ||||
|               12:             TypePointer Function 7(fvec4) | ||||
|               14:             TypeImage 6(float) Buffer sampled format:Rgba32f | ||||
|               15:             TypeSampledImage 14 | ||||
|               16:             TypePointer UniformConstant 15 | ||||
|    17(g_tTexbf4):     16(ptr) Variable UniformConstant | ||||
|               19:             TypeInt 32 1 | ||||
|               20:             TypeVector 19(int) 2 | ||||
|               21:             TypeVector 19(int) 3 | ||||
|               22:             TypeVector 19(int) 4 | ||||
|      23($Global):             TypeStruct 19(int) 20(ivec2) 21(ivec3) 22(ivec4) 19(int) 20(ivec2) 21(ivec3) 22(ivec4) | ||||
|               24:             TypePointer Uniform 23($Global) | ||||
|               25:     24(ptr) Variable Uniform | ||||
|               26:     19(int) Constant 0 | ||||
|               27:             TypePointer Uniform 19(int) | ||||
|               32:             TypePointer Function 22(ivec4) | ||||
|               34:             TypeImage 19(int) Buffer sampled format:Rgba32i | ||||
|               35:             TypeSampledImage 34 | ||||
|               36:             TypePointer UniformConstant 35 | ||||
|    37(g_tTexbi4):     36(ptr) Variable UniformConstant | ||||
|               43:             TypeInt 32 0 | ||||
|               44:             TypeVector 43(int) 4 | ||||
|               45:             TypePointer Function 44(ivec4) | ||||
|               47:             TypeImage 43(int) Buffer sampled format:Rgba32ui | ||||
|               48:             TypeSampledImage 47 | ||||
|               49:             TypePointer UniformConstant 48 | ||||
|    50(g_tTexbu4):     49(ptr) Variable UniformConstant | ||||
|               56:             TypePointer Function 8(PS_OUTPUT) | ||||
|               58:    6(float) Constant 1065353216 | ||||
|               59:    7(fvec4) ConstantComposite 58 58 58 58 | ||||
|               61:     19(int) Constant 1 | ||||
|               62:             TypePointer Function 6(float) | ||||
|               69:             TypePointer Output 7(fvec4) | ||||
|        70(Color):     69(ptr) Variable Output | ||||
|               73:             TypePointer Output 6(float) | ||||
|        74(Depth):     73(ptr) Variable Output | ||||
| 77(g_tTexbf4_test):     16(ptr) Variable UniformConstant | ||||
|               14:             TypeImage 6(float) Buffer nonsampled format:Rgba32f | ||||
|               15:             TypePointer UniformConstant 14 | ||||
|    16(g_tTexbf4):     15(ptr) Variable UniformConstant | ||||
|               18:             TypeInt 32 1 | ||||
|               19:             TypeVector 18(int) 2 | ||||
|               20:             TypeVector 18(int) 3 | ||||
|               21:             TypeVector 18(int) 4 | ||||
|      22($Global):             TypeStruct 18(int) 19(ivec2) 20(ivec3) 21(ivec4) 18(int) 19(ivec2) 20(ivec3) 21(ivec4) | ||||
|               23:             TypePointer Uniform 22($Global) | ||||
|               24:     23(ptr) Variable Uniform | ||||
|               25:     18(int) Constant 0 | ||||
|               26:             TypePointer Uniform 18(int) | ||||
|               30:             TypePointer Function 21(ivec4) | ||||
|               32:             TypeImage 18(int) Buffer nonsampled format:Rgba32i | ||||
|               33:             TypePointer UniformConstant 32 | ||||
|    34(g_tTexbi4):     33(ptr) Variable UniformConstant | ||||
|               39:             TypeInt 32 0 | ||||
|               40:             TypeVector 39(int) 4 | ||||
|               41:             TypePointer Function 40(ivec4) | ||||
|               43:             TypeImage 39(int) Buffer nonsampled format:Rgba32ui | ||||
|               44:             TypePointer UniformConstant 43 | ||||
|    45(g_tTexbu4):     44(ptr) Variable UniformConstant | ||||
|               50:             TypePointer Function 8(PS_OUTPUT) | ||||
|               52:    6(float) Constant 1065353216 | ||||
|               53:    7(fvec4) ConstantComposite 52 52 52 52 | ||||
|               55:     18(int) Constant 1 | ||||
|               56:             TypePointer Function 6(float) | ||||
|               63:             TypePointer Output 7(fvec4) | ||||
|        64(Color):     63(ptr) Variable Output | ||||
|               67:             TypePointer Output 6(float) | ||||
|        68(Depth):     67(ptr) Variable Output | ||||
| 71(g_tTexbf4_test):     15(ptr) Variable UniformConstant | ||||
|          4(main):           2 Function None 3 | ||||
|                5:             Label | ||||
|  67(flattenTemp):     56(ptr) Variable Function | ||||
|               68:8(PS_OUTPUT) FunctionCall 10(@main() | ||||
|                               Store 67(flattenTemp) 68 | ||||
|               71:     12(ptr) AccessChain 67(flattenTemp) 26 | ||||
|               72:    7(fvec4) Load 71 | ||||
|                               Store 70(Color) 72 | ||||
|               75:     62(ptr) AccessChain 67(flattenTemp) 61 | ||||
|               76:    6(float) Load 75 | ||||
|                               Store 74(Depth) 76 | ||||
|  61(flattenTemp):     50(ptr) Variable Function | ||||
|               62:8(PS_OUTPUT) FunctionCall 10(@main() | ||||
|                               Store 61(flattenTemp) 62 | ||||
|               65:     12(ptr) AccessChain 61(flattenTemp) 25 | ||||
|               66:    7(fvec4) Load 65 | ||||
|                               Store 64(Color) 66 | ||||
|               69:     56(ptr) AccessChain 61(flattenTemp) 55 | ||||
|               70:    6(float) Load 69 | ||||
|                               Store 68(Depth) 70 | ||||
|                               Return | ||||
|                               FunctionEnd | ||||
|       10(@main():8(PS_OUTPUT) Function None 9 | ||||
|               11:             Label | ||||
|          13(r00):     12(ptr) Variable Function | ||||
|          33(r01):     32(ptr) Variable Function | ||||
|          46(r02):     45(ptr) Variable Function | ||||
|        57(psout):     56(ptr) Variable Function | ||||
|               18:          15 Load 17(g_tTexbf4) | ||||
|               28:     27(ptr) AccessChain 25 26 | ||||
|               29:     19(int) Load 28 | ||||
|               30:          14 Image 18 | ||||
|               31:    7(fvec4) ImageFetch 30 29 | ||||
|                               Store 13(r00) 31 | ||||
|               38:          35 Load 37(g_tTexbi4) | ||||
|               39:     27(ptr) AccessChain 25 26 | ||||
|               40:     19(int) Load 39 | ||||
|               41:          34 Image 38 | ||||
|               42:   22(ivec4) ImageFetch 41 40 | ||||
|                               Store 33(r01) 42 | ||||
|               51:          48 Load 50(g_tTexbu4) | ||||
|               52:     27(ptr) AccessChain 25 26 | ||||
|               53:     19(int) Load 52 | ||||
|               54:          47 Image 51 | ||||
|               55:   44(ivec4) ImageFetch 54 53 | ||||
|                               Store 46(r02) 55 | ||||
|               60:     12(ptr) AccessChain 57(psout) 26 | ||||
|                               Store 60 59 | ||||
|               63:     62(ptr) AccessChain 57(psout) 61 | ||||
|                               Store 63 58 | ||||
|               64:8(PS_OUTPUT) Load 57(psout) | ||||
|                               ReturnValue 64 | ||||
|          31(r01):     30(ptr) Variable Function | ||||
|          42(r02):     41(ptr) Variable Function | ||||
|        51(psout):     50(ptr) Variable Function | ||||
|               17:          14 Load 16(g_tTexbf4) | ||||
|               27:     26(ptr) AccessChain 24 25 | ||||
|               28:     18(int) Load 27 | ||||
|               29:    7(fvec4) ImageRead 17 28 | ||||
|                               Store 13(r00) 29 | ||||
|               35:          32 Load 34(g_tTexbi4) | ||||
|               36:     26(ptr) AccessChain 24 25 | ||||
|               37:     18(int) Load 36 | ||||
|               38:   21(ivec4) ImageRead 35 37 | ||||
|                               Store 31(r01) 38 | ||||
|               46:          43 Load 45(g_tTexbu4) | ||||
|               47:     26(ptr) AccessChain 24 25 | ||||
|               48:     18(int) Load 47 | ||||
|               49:   40(ivec4) ImageRead 46 48 | ||||
|                               Store 42(r02) 49 | ||||
|               54:     12(ptr) AccessChain 51(psout) 25 | ||||
|                               Store 54 53 | ||||
|               57:     56(ptr) AccessChain 51(psout) 55 | ||||
|                               Store 57 52 | ||||
|               58:8(PS_OUTPUT) Load 51(psout) | ||||
|                               ReturnValue 58 | ||||
|                               FunctionEnd | ||||
|  | ||||
| @ -9,8 +9,8 @@ gl_FragCoord origin is upper left | ||||
| 0:28        move second child to first child ( temp float) | ||||
| 0:28          'r00' ( temp float) | ||||
| 0:28          Construct float ( temp float) | ||||
| 0:?             textureFetch ( temp 4-component vector of float) | ||||
| 0:28              'g_tTexbfs' (layout( r32f) uniform samplerBuffer) | ||||
| 0:?             imageLoad ( temp 4-component vector of float) | ||||
| 0:28              'g_tTexbfs' (layout( r32f) uniform imageBuffer) | ||||
| 0:28              c1: direct index for structure (layout( offset=0) uniform int) | ||||
| 0:28                'anon@0' (layout( row_major std140) uniform block{layout( offset=0) uniform int c1, layout( offset=8) uniform 2-component vector of int c2, layout( offset=16) uniform 3-component vector of int c3, layout( offset=32) uniform 4-component vector of int c4, layout( offset=48) uniform int o1, layout( offset=56) uniform 2-component vector of int o2, layout( offset=64) uniform 3-component vector of int o3, layout( offset=80) uniform 4-component vector of int o4}) | ||||
| 0:28                Constant: | ||||
| @ -19,8 +19,8 @@ gl_FragCoord origin is upper left | ||||
| 0:29        move second child to first child ( temp int) | ||||
| 0:29          'r01' ( temp int) | ||||
| 0:29          Construct int ( temp int) | ||||
| 0:?             textureFetch ( temp 4-component vector of int) | ||||
| 0:29              'g_tTexbis' (layout( r32i) uniform isamplerBuffer) | ||||
| 0:?             imageLoad ( temp 4-component vector of int) | ||||
| 0:29              'g_tTexbis' (layout( r32i) uniform iimageBuffer) | ||||
| 0:29              c1: direct index for structure (layout( offset=0) uniform int) | ||||
| 0:29                'anon@0' (layout( row_major std140) uniform block{layout( offset=0) uniform int c1, layout( offset=8) uniform 2-component vector of int c2, layout( offset=16) uniform 3-component vector of int c3, layout( offset=32) uniform 4-component vector of int c4, layout( offset=48) uniform int o1, layout( offset=56) uniform 2-component vector of int o2, layout( offset=64) uniform 3-component vector of int o3, layout( offset=80) uniform 4-component vector of int o4}) | ||||
| 0:29                Constant: | ||||
| @ -29,8 +29,8 @@ gl_FragCoord origin is upper left | ||||
| 0:30        move second child to first child ( temp uint) | ||||
| 0:30          'r02' ( temp uint) | ||||
| 0:30          Construct uint ( temp uint) | ||||
| 0:?             textureFetch ( temp 4-component vector of uint) | ||||
| 0:30              'g_tTexbus' (layout( r32ui) uniform usamplerBuffer) | ||||
| 0:?             imageLoad ( temp 4-component vector of uint) | ||||
| 0:30              'g_tTexbus' (layout( r32ui) uniform uimageBuffer) | ||||
| 0:30              c1: direct index for structure (layout( offset=0) uniform int) | ||||
| 0:30                'anon@0' (layout( row_major std140) uniform block{layout( offset=0) uniform int c1, layout( offset=8) uniform 2-component vector of int c2, layout( offset=16) uniform 3-component vector of int c3, layout( offset=32) uniform 4-component vector of int c4, layout( offset=48) uniform int o1, layout( offset=56) uniform 2-component vector of int o2, layout( offset=64) uniform 3-component vector of int o3, layout( offset=80) uniform 4-component vector of int o4}) | ||||
| 0:30                Constant: | ||||
| @ -74,10 +74,10 @@ gl_FragCoord origin is upper left | ||||
| 0:24            Constant: | ||||
| 0:24              1 (const int) | ||||
| 0:?   Linker Objects | ||||
| 0:?     'g_tTexbfs_test' (layout( binding=0 r32f) uniform samplerBuffer) | ||||
| 0:?     'g_tTexbfs' (layout( r32f) uniform samplerBuffer) | ||||
| 0:?     'g_tTexbis' (layout( r32i) uniform isamplerBuffer) | ||||
| 0:?     'g_tTexbus' (layout( r32ui) uniform usamplerBuffer) | ||||
| 0:?     'g_tTexbfs_test' (layout( binding=0 r32f) uniform imageBuffer) | ||||
| 0:?     'g_tTexbfs' (layout( r32f) uniform imageBuffer) | ||||
| 0:?     'g_tTexbis' (layout( r32i) uniform iimageBuffer) | ||||
| 0:?     'g_tTexbus' (layout( r32ui) uniform uimageBuffer) | ||||
| 0:?     'Color' (layout( location=0) out 4-component vector of float) | ||||
| 0:?     'Depth' ( out float FragDepth) | ||||
| 0:?     'anon@0' (layout( row_major std140) uniform block{layout( offset=0) uniform int c1, layout( offset=8) uniform 2-component vector of int c2, layout( offset=16) uniform 3-component vector of int c3, layout( offset=32) uniform 4-component vector of int c4, layout( offset=48) uniform int o1, layout( offset=56) uniform 2-component vector of int o2, layout( offset=64) uniform 3-component vector of int o3, layout( offset=80) uniform 4-component vector of int o4}) | ||||
| @ -96,8 +96,8 @@ gl_FragCoord origin is upper left | ||||
| 0:28        move second child to first child ( temp float) | ||||
| 0:28          'r00' ( temp float) | ||||
| 0:28          Construct float ( temp float) | ||||
| 0:?             textureFetch ( temp 4-component vector of float) | ||||
| 0:28              'g_tTexbfs' (layout( r32f) uniform samplerBuffer) | ||||
| 0:?             imageLoad ( temp 4-component vector of float) | ||||
| 0:28              'g_tTexbfs' (layout( r32f) uniform imageBuffer) | ||||
| 0:28              c1: direct index for structure (layout( offset=0) uniform int) | ||||
| 0:28                'anon@0' (layout( row_major std140) uniform block{layout( offset=0) uniform int c1, layout( offset=8) uniform 2-component vector of int c2, layout( offset=16) uniform 3-component vector of int c3, layout( offset=32) uniform 4-component vector of int c4, layout( offset=48) uniform int o1, layout( offset=56) uniform 2-component vector of int o2, layout( offset=64) uniform 3-component vector of int o3, layout( offset=80) uniform 4-component vector of int o4}) | ||||
| 0:28                Constant: | ||||
| @ -106,8 +106,8 @@ gl_FragCoord origin is upper left | ||||
| 0:29        move second child to first child ( temp int) | ||||
| 0:29          'r01' ( temp int) | ||||
| 0:29          Construct int ( temp int) | ||||
| 0:?             textureFetch ( temp 4-component vector of int) | ||||
| 0:29              'g_tTexbis' (layout( r32i) uniform isamplerBuffer) | ||||
| 0:?             imageLoad ( temp 4-component vector of int) | ||||
| 0:29              'g_tTexbis' (layout( r32i) uniform iimageBuffer) | ||||
| 0:29              c1: direct index for structure (layout( offset=0) uniform int) | ||||
| 0:29                'anon@0' (layout( row_major std140) uniform block{layout( offset=0) uniform int c1, layout( offset=8) uniform 2-component vector of int c2, layout( offset=16) uniform 3-component vector of int c3, layout( offset=32) uniform 4-component vector of int c4, layout( offset=48) uniform int o1, layout( offset=56) uniform 2-component vector of int o2, layout( offset=64) uniform 3-component vector of int o3, layout( offset=80) uniform 4-component vector of int o4}) | ||||
| 0:29                Constant: | ||||
| @ -116,8 +116,8 @@ gl_FragCoord origin is upper left | ||||
| 0:30        move second child to first child ( temp uint) | ||||
| 0:30          'r02' ( temp uint) | ||||
| 0:30          Construct uint ( temp uint) | ||||
| 0:?             textureFetch ( temp 4-component vector of uint) | ||||
| 0:30              'g_tTexbus' (layout( r32ui) uniform usamplerBuffer) | ||||
| 0:?             imageLoad ( temp 4-component vector of uint) | ||||
| 0:30              'g_tTexbus' (layout( r32ui) uniform uimageBuffer) | ||||
| 0:30              c1: direct index for structure (layout( offset=0) uniform int) | ||||
| 0:30                'anon@0' (layout( row_major std140) uniform block{layout( offset=0) uniform int c1, layout( offset=8) uniform 2-component vector of int c2, layout( offset=16) uniform 3-component vector of int c3, layout( offset=32) uniform 4-component vector of int c4, layout( offset=48) uniform int o1, layout( offset=56) uniform 2-component vector of int o2, layout( offset=64) uniform 3-component vector of int o3, layout( offset=80) uniform 4-component vector of int o4}) | ||||
| 0:30                Constant: | ||||
| @ -161,23 +161,23 @@ gl_FragCoord origin is upper left | ||||
| 0:24            Constant: | ||||
| 0:24              1 (const int) | ||||
| 0:?   Linker Objects | ||||
| 0:?     'g_tTexbfs_test' (layout( binding=0 r32f) uniform samplerBuffer) | ||||
| 0:?     'g_tTexbfs' (layout( r32f) uniform samplerBuffer) | ||||
| 0:?     'g_tTexbis' (layout( r32i) uniform isamplerBuffer) | ||||
| 0:?     'g_tTexbus' (layout( r32ui) uniform usamplerBuffer) | ||||
| 0:?     'g_tTexbfs_test' (layout( binding=0 r32f) uniform imageBuffer) | ||||
| 0:?     'g_tTexbfs' (layout( r32f) uniform imageBuffer) | ||||
| 0:?     'g_tTexbis' (layout( r32i) uniform iimageBuffer) | ||||
| 0:?     'g_tTexbus' (layout( r32ui) uniform uimageBuffer) | ||||
| 0:?     'Color' (layout( location=0) out 4-component vector of float) | ||||
| 0:?     'Depth' ( out float FragDepth) | ||||
| 0:?     'anon@0' (layout( row_major std140) uniform block{layout( offset=0) uniform int c1, layout( offset=8) uniform 2-component vector of int c2, layout( offset=16) uniform 3-component vector of int c3, layout( offset=32) uniform 4-component vector of int c4, layout( offset=48) uniform int o1, layout( offset=56) uniform 2-component vector of int o2, layout( offset=64) uniform 3-component vector of int o3, layout( offset=80) uniform 4-component vector of int o4}) | ||||
| 
 | ||||
| // Module Version 10000 | ||||
| // Generated by (magic number): 80001 | ||||
| // Id's are bound by 81 | ||||
| // Id's are bound by 75 | ||||
| 
 | ||||
|                               Capability Shader | ||||
|                               Capability SampledBuffer | ||||
|                1:             ExtInstImport  "GLSL.std.450" | ||||
|                               MemoryModel Logical GLSL450 | ||||
|                               EntryPoint Fragment 4  "main" 73 77 | ||||
|                               EntryPoint Fragment 4  "main" 67 71 | ||||
|                               ExecutionMode 4 OriginUpperLeft | ||||
|                               Name 4  "main" | ||||
|                               Name 8  "PS_OUTPUT" | ||||
| @ -185,43 +185,43 @@ gl_FragCoord origin is upper left | ||||
|                               MemberName 8(PS_OUTPUT) 1  "Depth" | ||||
|                               Name 10  "@main(" | ||||
|                               Name 13  "r00" | ||||
|                               Name 17  "g_tTexbfs" | ||||
|                               Name 23  "$Global" | ||||
|                               MemberName 23($Global) 0  "c1" | ||||
|                               MemberName 23($Global) 1  "c2" | ||||
|                               MemberName 23($Global) 2  "c3" | ||||
|                               MemberName 23($Global) 3  "c4" | ||||
|                               MemberName 23($Global) 4  "o1" | ||||
|                               MemberName 23($Global) 5  "o2" | ||||
|                               MemberName 23($Global) 6  "o3" | ||||
|                               MemberName 23($Global) 7  "o4" | ||||
|                               Name 25  "" | ||||
|                               Name 34  "r01" | ||||
|                               Name 38  "g_tTexbis" | ||||
|                               Name 47  "r02" | ||||
|                               Name 51  "g_tTexbus" | ||||
|                               Name 60  "psout" | ||||
|                               Name 70  "flattenTemp" | ||||
|                               Name 73  "Color" | ||||
|                               Name 77  "Depth" | ||||
|                               Name 80  "g_tTexbfs_test" | ||||
|                               Decorate 17(g_tTexbfs) DescriptorSet 0 | ||||
|                               MemberDecorate 23($Global) 0 Offset 0 | ||||
|                               MemberDecorate 23($Global) 1 Offset 8 | ||||
|                               MemberDecorate 23($Global) 2 Offset 16 | ||||
|                               MemberDecorate 23($Global) 3 Offset 32 | ||||
|                               MemberDecorate 23($Global) 4 Offset 48 | ||||
|                               MemberDecorate 23($Global) 5 Offset 56 | ||||
|                               MemberDecorate 23($Global) 6 Offset 64 | ||||
|                               MemberDecorate 23($Global) 7 Offset 80 | ||||
|                               Decorate 23($Global) Block | ||||
|                               Decorate 25 DescriptorSet 0 | ||||
|                               Decorate 38(g_tTexbis) DescriptorSet 0 | ||||
|                               Decorate 51(g_tTexbus) DescriptorSet 0 | ||||
|                               Decorate 73(Color) Location 0 | ||||
|                               Decorate 77(Depth) BuiltIn FragDepth | ||||
|                               Decorate 80(g_tTexbfs_test) DescriptorSet 0 | ||||
|                               Decorate 80(g_tTexbfs_test) Binding 0 | ||||
|                               Name 16  "g_tTexbfs" | ||||
|                               Name 22  "$Global" | ||||
|                               MemberName 22($Global) 0  "c1" | ||||
|                               MemberName 22($Global) 1  "c2" | ||||
|                               MemberName 22($Global) 2  "c3" | ||||
|                               MemberName 22($Global) 3  "c4" | ||||
|                               MemberName 22($Global) 4  "o1" | ||||
|                               MemberName 22($Global) 5  "o2" | ||||
|                               MemberName 22($Global) 6  "o3" | ||||
|                               MemberName 22($Global) 7  "o4" | ||||
|                               Name 24  "" | ||||
|                               Name 32  "r01" | ||||
|                               Name 35  "g_tTexbis" | ||||
|                               Name 43  "r02" | ||||
|                               Name 46  "g_tTexbus" | ||||
|                               Name 54  "psout" | ||||
|                               Name 64  "flattenTemp" | ||||
|                               Name 67  "Color" | ||||
|                               Name 71  "Depth" | ||||
|                               Name 74  "g_tTexbfs_test" | ||||
|                               Decorate 16(g_tTexbfs) DescriptorSet 0 | ||||
|                               MemberDecorate 22($Global) 0 Offset 0 | ||||
|                               MemberDecorate 22($Global) 1 Offset 8 | ||||
|                               MemberDecorate 22($Global) 2 Offset 16 | ||||
|                               MemberDecorate 22($Global) 3 Offset 32 | ||||
|                               MemberDecorate 22($Global) 4 Offset 48 | ||||
|                               MemberDecorate 22($Global) 5 Offset 56 | ||||
|                               MemberDecorate 22($Global) 6 Offset 64 | ||||
|                               MemberDecorate 22($Global) 7 Offset 80 | ||||
|                               Decorate 22($Global) Block | ||||
|                               Decorate 24 DescriptorSet 0 | ||||
|                               Decorate 35(g_tTexbis) DescriptorSet 0 | ||||
|                               Decorate 46(g_tTexbus) DescriptorSet 0 | ||||
|                               Decorate 67(Color) Location 0 | ||||
|                               Decorate 71(Depth) BuiltIn FragDepth | ||||
|                               Decorate 74(g_tTexbfs_test) DescriptorSet 0 | ||||
|                               Decorate 74(g_tTexbfs_test) Binding 0 | ||||
|                2:             TypeVoid | ||||
|                3:             TypeFunction 2 | ||||
|                6:             TypeFloat 32 | ||||
| @ -229,85 +229,79 @@ gl_FragCoord origin is upper left | ||||
|     8(PS_OUTPUT):             TypeStruct 7(fvec4) 6(float) | ||||
|                9:             TypeFunction 8(PS_OUTPUT) | ||||
|               12:             TypePointer Function 6(float) | ||||
|               14:             TypeImage 6(float) Buffer sampled format:R32f | ||||
|               15:             TypeSampledImage 14 | ||||
|               16:             TypePointer UniformConstant 15 | ||||
|    17(g_tTexbfs):     16(ptr) Variable UniformConstant | ||||
|               19:             TypeInt 32 1 | ||||
|               20:             TypeVector 19(int) 2 | ||||
|               21:             TypeVector 19(int) 3 | ||||
|               22:             TypeVector 19(int) 4 | ||||
|      23($Global):             TypeStruct 19(int) 20(ivec2) 21(ivec3) 22(ivec4) 19(int) 20(ivec2) 21(ivec3) 22(ivec4) | ||||
|               24:             TypePointer Uniform 23($Global) | ||||
|               25:     24(ptr) Variable Uniform | ||||
|               26:     19(int) Constant 0 | ||||
|               27:             TypePointer Uniform 19(int) | ||||
|               33:             TypePointer Function 19(int) | ||||
|               35:             TypeImage 19(int) Buffer sampled format:R32i | ||||
|               36:             TypeSampledImage 35 | ||||
|               37:             TypePointer UniformConstant 36 | ||||
|    38(g_tTexbis):     37(ptr) Variable UniformConstant | ||||
|               45:             TypeInt 32 0 | ||||
|               46:             TypePointer Function 45(int) | ||||
|               48:             TypeImage 45(int) Buffer sampled format:R32ui | ||||
|               49:             TypeSampledImage 48 | ||||
|               50:             TypePointer UniformConstant 49 | ||||
|    51(g_tTexbus):     50(ptr) Variable UniformConstant | ||||
|               56:             TypeVector 45(int) 4 | ||||
|               59:             TypePointer Function 8(PS_OUTPUT) | ||||
|               61:    6(float) Constant 1065353216 | ||||
|               62:    7(fvec4) ConstantComposite 61 61 61 61 | ||||
|               63:             TypePointer Function 7(fvec4) | ||||
|               65:     19(int) Constant 1 | ||||
|               72:             TypePointer Output 7(fvec4) | ||||
|        73(Color):     72(ptr) Variable Output | ||||
|               76:             TypePointer Output 6(float) | ||||
|        77(Depth):     76(ptr) Variable Output | ||||
| 80(g_tTexbfs_test):     16(ptr) Variable UniformConstant | ||||
|               14:             TypeImage 6(float) Buffer nonsampled format:R32f | ||||
|               15:             TypePointer UniformConstant 14 | ||||
|    16(g_tTexbfs):     15(ptr) Variable UniformConstant | ||||
|               18:             TypeInt 32 1 | ||||
|               19:             TypeVector 18(int) 2 | ||||
|               20:             TypeVector 18(int) 3 | ||||
|               21:             TypeVector 18(int) 4 | ||||
|      22($Global):             TypeStruct 18(int) 19(ivec2) 20(ivec3) 21(ivec4) 18(int) 19(ivec2) 20(ivec3) 21(ivec4) | ||||
|               23:             TypePointer Uniform 22($Global) | ||||
|               24:     23(ptr) Variable Uniform | ||||
|               25:     18(int) Constant 0 | ||||
|               26:             TypePointer Uniform 18(int) | ||||
|               31:             TypePointer Function 18(int) | ||||
|               33:             TypeImage 18(int) Buffer nonsampled format:R32i | ||||
|               34:             TypePointer UniformConstant 33 | ||||
|    35(g_tTexbis):     34(ptr) Variable UniformConstant | ||||
|               41:             TypeInt 32 0 | ||||
|               42:             TypePointer Function 41(int) | ||||
|               44:             TypeImage 41(int) Buffer nonsampled format:R32ui | ||||
|               45:             TypePointer UniformConstant 44 | ||||
|    46(g_tTexbus):     45(ptr) Variable UniformConstant | ||||
|               50:             TypeVector 41(int) 4 | ||||
|               53:             TypePointer Function 8(PS_OUTPUT) | ||||
|               55:    6(float) Constant 1065353216 | ||||
|               56:    7(fvec4) ConstantComposite 55 55 55 55 | ||||
|               57:             TypePointer Function 7(fvec4) | ||||
|               59:     18(int) Constant 1 | ||||
|               66:             TypePointer Output 7(fvec4) | ||||
|        67(Color):     66(ptr) Variable Output | ||||
|               70:             TypePointer Output 6(float) | ||||
|        71(Depth):     70(ptr) Variable Output | ||||
| 74(g_tTexbfs_test):     15(ptr) Variable UniformConstant | ||||
|          4(main):           2 Function None 3 | ||||
|                5:             Label | ||||
|  70(flattenTemp):     59(ptr) Variable Function | ||||
|               71:8(PS_OUTPUT) FunctionCall 10(@main() | ||||
|                               Store 70(flattenTemp) 71 | ||||
|               74:     63(ptr) AccessChain 70(flattenTemp) 26 | ||||
|               75:    7(fvec4) Load 74 | ||||
|                               Store 73(Color) 75 | ||||
|               78:     12(ptr) AccessChain 70(flattenTemp) 65 | ||||
|               79:    6(float) Load 78 | ||||
|                               Store 77(Depth) 79 | ||||
|  64(flattenTemp):     53(ptr) Variable Function | ||||
|               65:8(PS_OUTPUT) FunctionCall 10(@main() | ||||
|                               Store 64(flattenTemp) 65 | ||||
|               68:     57(ptr) AccessChain 64(flattenTemp) 25 | ||||
|               69:    7(fvec4) Load 68 | ||||
|                               Store 67(Color) 69 | ||||
|               72:     12(ptr) AccessChain 64(flattenTemp) 59 | ||||
|               73:    6(float) Load 72 | ||||
|                               Store 71(Depth) 73 | ||||
|                               Return | ||||
|                               FunctionEnd | ||||
|       10(@main():8(PS_OUTPUT) Function None 9 | ||||
|               11:             Label | ||||
|          13(r00):     12(ptr) Variable Function | ||||
|          34(r01):     33(ptr) Variable Function | ||||
|          47(r02):     46(ptr) Variable Function | ||||
|        60(psout):     59(ptr) Variable Function | ||||
|               18:          15 Load 17(g_tTexbfs) | ||||
|               28:     27(ptr) AccessChain 25 26 | ||||
|               29:     19(int) Load 28 | ||||
|               30:          14 Image 18 | ||||
|               31:    7(fvec4) ImageFetch 30 29 | ||||
|               32:    6(float) CompositeExtract 31 0 | ||||
|                               Store 13(r00) 32 | ||||
|               39:          36 Load 38(g_tTexbis) | ||||
|               40:     27(ptr) AccessChain 25 26 | ||||
|               41:     19(int) Load 40 | ||||
|               42:          35 Image 39 | ||||
|               43:   22(ivec4) ImageFetch 42 41 | ||||
|               44:     19(int) CompositeExtract 43 0 | ||||
|                               Store 34(r01) 44 | ||||
|               52:          49 Load 51(g_tTexbus) | ||||
|               53:     27(ptr) AccessChain 25 26 | ||||
|               54:     19(int) Load 53 | ||||
|               55:          48 Image 52 | ||||
|               57:   56(ivec4) ImageFetch 55 54 | ||||
|               58:     45(int) CompositeExtract 57 0 | ||||
|                               Store 47(r02) 58 | ||||
|               64:     63(ptr) AccessChain 60(psout) 26 | ||||
|                               Store 64 62 | ||||
|               66:     12(ptr) AccessChain 60(psout) 65 | ||||
|                               Store 66 61 | ||||
|               67:8(PS_OUTPUT) Load 60(psout) | ||||
|                               ReturnValue 67 | ||||
|          32(r01):     31(ptr) Variable Function | ||||
|          43(r02):     42(ptr) Variable Function | ||||
|        54(psout):     53(ptr) Variable Function | ||||
|               17:          14 Load 16(g_tTexbfs) | ||||
|               27:     26(ptr) AccessChain 24 25 | ||||
|               28:     18(int) Load 27 | ||||
|               29:    7(fvec4) ImageRead 17 28 | ||||
|               30:    6(float) CompositeExtract 29 0 | ||||
|                               Store 13(r00) 30 | ||||
|               36:          33 Load 35(g_tTexbis) | ||||
|               37:     26(ptr) AccessChain 24 25 | ||||
|               38:     18(int) Load 37 | ||||
|               39:   21(ivec4) ImageRead 36 38 | ||||
|               40:     18(int) CompositeExtract 39 0 | ||||
|                               Store 32(r01) 40 | ||||
|               47:          44 Load 46(g_tTexbus) | ||||
|               48:     26(ptr) AccessChain 24 25 | ||||
|               49:     18(int) Load 48 | ||||
|               51:   50(ivec4) ImageRead 47 49 | ||||
|               52:     41(int) CompositeExtract 51 0 | ||||
|                               Store 43(r02) 52 | ||||
|               58:     57(ptr) AccessChain 54(psout) 25 | ||||
|                               Store 58 56 | ||||
|               60:     12(ptr) AccessChain 54(psout) 59 | ||||
|                               Store 60 55 | ||||
|               61:8(PS_OUTPUT) Load 54(psout) | ||||
|                               ReturnValue 61 | ||||
|                               FunctionEnd | ||||
|  | ||||
| @ -6,8 +6,8 @@ Shader version: 450 | ||||
| 0:4      'Index' ( in uint) | ||||
| 0:?     Sequence | ||||
| 0:5      Branch: Return with expression | ||||
| 0:5        textureFetch ( temp 4-component vector of float) | ||||
| 0:5          'Position' (layout( rgba32f) uniform samplerBuffer) | ||||
| 0:5        imageLoad ( temp 4-component vector of float) | ||||
| 0:5          'Position' (layout( rgba32f) uniform imageBuffer) | ||||
| 0:5          Convert uint to int ( temp int) | ||||
| 0:5            'Index' ( in uint) | ||||
| 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:?           'Index' ( temp uint) | ||||
| 0:?   Linker Objects | ||||
| 0:?     'Position' (layout( rgba32f) uniform samplerBuffer) | ||||
| 0:?     'Position' (layout( rgba32f) uniform imageBuffer) | ||||
| 0:?     '@entryPointOutput' ( out 4-component vector of float Position) | ||||
| 0:?     'Index' ( in uint VertexIndex) | ||||
| 
 | ||||
| @ -43,8 +43,8 @@ Shader version: 450 | ||||
| 0:4      'Index' ( in uint) | ||||
| 0:?     Sequence | ||||
| 0:5      Branch: Return with expression | ||||
| 0:5        textureFetch ( temp 4-component vector of float) | ||||
| 0:5          'Position' (layout( rgba32f) uniform samplerBuffer) | ||||
| 0:5        imageLoad ( temp 4-component vector of float) | ||||
| 0:5          'Position' (layout( rgba32f) uniform imageBuffer) | ||||
| 0:5          Convert uint to int ( temp int) | ||||
| 0:5            'Index' ( in uint) | ||||
| 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:?           'Index' ( temp uint) | ||||
| 0:?   Linker Objects | ||||
| 0:?     'Position' (layout( rgba32f) uniform samplerBuffer) | ||||
| 0:?     'Position' (layout( rgba32f) uniform imageBuffer) | ||||
| 0:?     '@entryPointOutput' ( out 4-component vector of float Position) | ||||
| 0:?     'Index' ( in uint VertexIndex) | ||||
| 
 | ||||
| // Module Version 10000 | ||||
| // Generated by (magic number): 80001 | ||||
| // Id's are bound by 43 | ||||
| // Id's are bound by 41 | ||||
| 
 | ||||
|                               Capability Shader | ||||
|                               Capability SampledBuffer | ||||
|                1:             ExtInstImport  "GLSL.std.450" | ||||
|                               MemoryModel Logical GLSL450 | ||||
|                               EntryPoint Vertex 4  "RealEntrypoint" 36 39 | ||||
|                               EntryPoint Vertex 4  "RealEntrypoint" 34 37 | ||||
|                               Name 4  "RealEntrypoint" | ||||
|                               Name 12  "FakeEntrypoint(u1;" | ||||
|                               Name 11  "Index" | ||||
|                               Name 15  "@RealEntrypoint(u1;" | ||||
|                               Name 14  "Index" | ||||
|                               Name 20  "Position" | ||||
|                               Name 29  "param" | ||||
|                               Name 19  "Position" | ||||
|                               Name 27  "param" | ||||
|                               Name 32  "Index" | ||||
|                               Name 34  "Index" | ||||
|                               Name 36  "Index" | ||||
|                               Name 39  "@entryPointOutput" | ||||
|                               Name 40  "param" | ||||
|                               Decorate 20(Position) DescriptorSet 0 | ||||
|                               Decorate 36(Index) BuiltIn VertexIndex | ||||
|                               Decorate 39(@entryPointOutput) BuiltIn Position | ||||
|                               Name 37  "@entryPointOutput" | ||||
|                               Name 38  "param" | ||||
|                               Decorate 19(Position) DescriptorSet 0 | ||||
|                               Decorate 34(Index) BuiltIn VertexIndex | ||||
|                               Decorate 37(@entryPointOutput) BuiltIn Position | ||||
|                2:             TypeVoid | ||||
|                3:             TypeFunction 2 | ||||
|                6:             TypeInt 32 0 | ||||
| @ -99,43 +99,41 @@ Shader version: 450 | ||||
|                8:             TypeFloat 32 | ||||
|                9:             TypeVector 8(float) 4 | ||||
|               10:             TypeFunction 9(fvec4) 7(ptr) | ||||
|               17:             TypeImage 8(float) Buffer sampled format:Rgba32f | ||||
|               18:             TypeSampledImage 17 | ||||
|               19:             TypePointer UniformConstant 18 | ||||
|     20(Position):     19(ptr) Variable UniformConstant | ||||
|               23:             TypeInt 32 1 | ||||
|               35:             TypePointer Input 6(int) | ||||
|        36(Index):     35(ptr) Variable Input | ||||
|               38:             TypePointer Output 9(fvec4) | ||||
| 39(@entryPointOutput):     38(ptr) Variable Output | ||||
|               17:             TypeImage 8(float) Buffer nonsampled format:Rgba32f | ||||
|               18:             TypePointer UniformConstant 17 | ||||
|     19(Position):     18(ptr) Variable UniformConstant | ||||
|               22:             TypeInt 32 1 | ||||
|               33:             TypePointer Input 6(int) | ||||
|        34(Index):     33(ptr) Variable Input | ||||
|               36:             TypePointer Output 9(fvec4) | ||||
| 37(@entryPointOutput):     36(ptr) Variable Output | ||||
| 4(RealEntrypoint):           2 Function None 3 | ||||
|                5:             Label | ||||
|        34(Index):      7(ptr) Variable Function | ||||
|        40(param):      7(ptr) Variable Function | ||||
|               37:      6(int) Load 36(Index) | ||||
|                               Store 34(Index) 37 | ||||
|               41:      6(int) Load 34(Index) | ||||
|                               Store 40(param) 41 | ||||
|               42:    9(fvec4) FunctionCall 15(@RealEntrypoint(u1;) 40(param) | ||||
|                               Store 39(@entryPointOutput) 42 | ||||
|        32(Index):      7(ptr) Variable Function | ||||
|        38(param):      7(ptr) Variable Function | ||||
|               35:      6(int) Load 34(Index) | ||||
|                               Store 32(Index) 35 | ||||
|               39:      6(int) Load 32(Index) | ||||
|                               Store 38(param) 39 | ||||
|               40:    9(fvec4) FunctionCall 15(@RealEntrypoint(u1;) 38(param) | ||||
|                               Store 37(@entryPointOutput) 40 | ||||
|                               Return | ||||
|                               FunctionEnd | ||||
| 12(FakeEntrypoint(u1;):    9(fvec4) Function None 10 | ||||
|        11(Index):      7(ptr) FunctionParameter | ||||
|               13:             Label | ||||
|               21:          18 Load 20(Position) | ||||
|               22:      6(int) Load 11(Index) | ||||
|               24:     23(int) Bitcast 22 | ||||
|               25:          17 Image 21 | ||||
|               26:    9(fvec4) ImageFetch 25 24 | ||||
|                               ReturnValue 26 | ||||
|               20:          17 Load 19(Position) | ||||
|               21:      6(int) Load 11(Index) | ||||
|               23:     22(int) Bitcast 21 | ||||
|               24:    9(fvec4) ImageRead 20 23 | ||||
|                               ReturnValue 24 | ||||
|                               FunctionEnd | ||||
| 15(@RealEntrypoint(u1;):    9(fvec4) Function None 10 | ||||
|        14(Index):      7(ptr) FunctionParameter | ||||
|               16:             Label | ||||
|        29(param):      7(ptr) Variable Function | ||||
|               30:      6(int) Load 14(Index) | ||||
|                               Store 29(param) 30 | ||||
|               31:    9(fvec4) FunctionCall 12(FakeEntrypoint(u1;) 29(param) | ||||
|                               ReturnValue 31 | ||||
|        27(param):      7(ptr) Variable Function | ||||
|               28:      6(int) Load 14(Index) | ||||
|                               Store 27(param) 28 | ||||
|               29:    9(fvec4) FunctionCall 12(FakeEntrypoint(u1;) 27(param) | ||||
|                               ReturnValue 29 | ||||
|                               FunctionEnd | ||||
|  | ||||
| @ -1079,9 +1079,9 @@ bool HlslGrammar::acceptTextureType(TType& type) | ||||
|     bool array = false; | ||||
|     bool ms    = false; | ||||
|     bool image = false; | ||||
|     bool readonly = false; | ||||
| 
 | ||||
|     switch (textureType) { | ||||
|     case EHTokBuffer:            dim = EsdBuffer;                      break; | ||||
|     case EHTokTexture1d:         dim = Esd1D;                                break; | ||||
|     case EHTokTexture1darray:    dim = Esd1D; array = true;                  break; | ||||
|     case EHTokTexture2d:         dim = Esd2D;                                break; | ||||
| @ -1091,6 +1091,7 @@ bool HlslGrammar::acceptTextureType(TType& type) | ||||
|     case EHTokTextureCubearray:  dim = EsdCube; array = true;                break; | ||||
|     case EHTokTexture2DMS:       dim = Esd2D; ms = true;                     break; | ||||
|     case EHTokTexture2DMSarray:  dim = Esd2D; array = true; ms = true;       break; | ||||
|     case EHTokBuffer:            dim = EsdBuffer; readonly=true; image=true; break; | ||||
|     case EHTokRWBuffer:          dim = EsdBuffer; image=true;                break; | ||||
|     case EHTokRWTexture1d:       dim = Esd1D; array=false; image=true;       break; | ||||
|     case EHTokRWTexture1darray:  dim = Esd1D; array=true;  image=true;       break; | ||||
| @ -1156,7 +1157,7 @@ bool HlslGrammar::acceptTextureType(TType& type) | ||||
|     } else if (ms) { | ||||
|         expected("texture type for multisample"); | ||||
|         return false; | ||||
|     } else if (image) { | ||||
|     } else if (image && !readonly) { | ||||
|         expected("type for RWTexture/RWBuffer"); | ||||
|         return false; | ||||
|     } | ||||
| @ -1189,6 +1190,9 @@ bool HlslGrammar::acceptTextureType(TType& type) | ||||
|     type.shallowCopy(TType(sampler, EvqUniform, arraySizes)); | ||||
|     type.getQualifier().layoutFormat = format; | ||||
| 
 | ||||
|     // TODO: this is not being passed through to the SPIR-V OpTypeImage access qualifier.
 | ||||
|     type.getQualifier().readonly = readonly; | ||||
| 
 | ||||
|     return true; | ||||
| } | ||||
| 
 | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 steve-lunarg
						steve-lunarg