 ac3707921e
			
		
	
	
		ac3707921e
		
	
	
	
	
		
			
			Now, version 5.* is all connected to making the uint type, which doesn't quite work. Generator versions 4 and 6 do not do this.
		
			
				
	
	
		
			154 lines
		
	
	
		
			8.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			154 lines
		
	
	
		
			8.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| hlsl.texturebuffer.frag
 | |
| Shader version: 500
 | |
| gl_FragCoord origin is upper left
 | |
| 0:? Sequence
 | |
| 0:15  Function Definition: @main(vf4; ( temp 4-component vector of float)
 | |
| 0:15    Function Parameters: 
 | |
| 0:15      'pos' ( in 4-component vector of float)
 | |
| 0:?     Sequence
 | |
| 0:16      Branch: Return with expression
 | |
| 0:16        add ( temp 4-component vector of float)
 | |
| 0:16          f: direct index for structure (layout( row_major std430) buffer 4-component vector of float)
 | |
| 0:16            'TextureBuffer_var' (layout( binding=0 row_major std430) readonly buffer block{layout( row_major std430) buffer 4-component vector of float f, layout( row_major std430) buffer 4-component vector of int i})
 | |
| 0:16            Constant:
 | |
| 0:16              0 (const int)
 | |
| 0:16          f2: direct index for structure (layout( row_major std430) buffer 4-component vector of float)
 | |
| 0:16            'anon@0' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer 4-component vector of float f2, layout( row_major std430) buffer 4-component vector of int i2})
 | |
| 0:16            Constant:
 | |
| 0:16              0 (const uint)
 | |
| 0:15  Function Definition: main( ( temp void)
 | |
| 0:15    Function Parameters: 
 | |
| 0:?     Sequence
 | |
| 0:15      move second child to first child ( temp 4-component vector of float)
 | |
| 0:?         'pos' ( temp 4-component vector of float)
 | |
| 0:?         'pos' ( in 4-component vector of float FragCoord)
 | |
| 0:15      move second child to first child ( temp 4-component vector of float)
 | |
| 0:?         '@entryPointOutput' (layout( location=0) out 4-component vector of float)
 | |
| 0:15        Function Call: @main(vf4; ( temp 4-component vector of float)
 | |
| 0:?           'pos' ( temp 4-component vector of float)
 | |
| 0:?   Linker Objects
 | |
| 0:?     'TextureBuffer_var' (layout( binding=0 row_major std430) readonly buffer block{layout( row_major std430) buffer 4-component vector of float f, layout( row_major std430) buffer 4-component vector of int i})
 | |
| 0:?     'anon@0' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer 4-component vector of float f2, layout( row_major std430) buffer 4-component vector of int i2})
 | |
| 0:?     '@entryPointOutput' (layout( location=0) out 4-component vector of float)
 | |
| 0:?     'pos' ( in 4-component vector of float FragCoord)
 | |
| 
 | |
| 
 | |
| Linked fragment stage:
 | |
| 
 | |
| 
 | |
| Shader version: 500
 | |
| gl_FragCoord origin is upper left
 | |
| 0:? Sequence
 | |
| 0:15  Function Definition: @main(vf4; ( temp 4-component vector of float)
 | |
| 0:15    Function Parameters: 
 | |
| 0:15      'pos' ( in 4-component vector of float)
 | |
| 0:?     Sequence
 | |
| 0:16      Branch: Return with expression
 | |
| 0:16        add ( temp 4-component vector of float)
 | |
| 0:16          f: direct index for structure (layout( row_major std430) buffer 4-component vector of float)
 | |
| 0:16            'TextureBuffer_var' (layout( binding=0 row_major std430) readonly buffer block{layout( row_major std430) buffer 4-component vector of float f, layout( row_major std430) buffer 4-component vector of int i})
 | |
| 0:16            Constant:
 | |
| 0:16              0 (const int)
 | |
| 0:16          f2: direct index for structure (layout( row_major std430) buffer 4-component vector of float)
 | |
| 0:16            'anon@0' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer 4-component vector of float f2, layout( row_major std430) buffer 4-component vector of int i2})
 | |
| 0:16            Constant:
 | |
| 0:16              0 (const uint)
 | |
| 0:15  Function Definition: main( ( temp void)
 | |
| 0:15    Function Parameters: 
 | |
| 0:?     Sequence
 | |
| 0:15      move second child to first child ( temp 4-component vector of float)
 | |
| 0:?         'pos' ( temp 4-component vector of float)
 | |
| 0:?         'pos' ( in 4-component vector of float FragCoord)
 | |
| 0:15      move second child to first child ( temp 4-component vector of float)
 | |
| 0:?         '@entryPointOutput' (layout( location=0) out 4-component vector of float)
 | |
| 0:15        Function Call: @main(vf4; ( temp 4-component vector of float)
 | |
| 0:?           'pos' ( temp 4-component vector of float)
 | |
| 0:?   Linker Objects
 | |
| 0:?     'TextureBuffer_var' (layout( binding=0 row_major std430) readonly buffer block{layout( row_major std430) buffer 4-component vector of float f, layout( row_major std430) buffer 4-component vector of int i})
 | |
| 0:?     'anon@0' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer 4-component vector of float f2, layout( row_major std430) buffer 4-component vector of int i2})
 | |
| 0:?     '@entryPointOutput' (layout( location=0) out 4-component vector of float)
 | |
| 0:?     'pos' ( in 4-component vector of float FragCoord)
 | |
| 
 | |
| // Module Version 10000
 | |
| // Generated by (magic number): 80006
 | |
| // Id's are bound by 39
 | |
| 
 | |
|                               Capability Shader
 | |
|                1:             ExtInstImport  "GLSL.std.450"
 | |
|                               MemoryModel Logical GLSL450
 | |
|                               EntryPoint Fragment 4  "main" 32 35
 | |
|                               ExecutionMode 4 OriginUpperLeft
 | |
|                               Source HLSL 500
 | |
|                               Name 4  "main"
 | |
|                               Name 11  "@main(vf4;"
 | |
|                               Name 10  "pos"
 | |
|                               Name 15  "TextureBuffer_var"
 | |
|                               MemberName 15(TextureBuffer_var) 0  "f"
 | |
|                               MemberName 15(TextureBuffer_var) 1  "i"
 | |
|                               Name 17  "TextureBuffer_var"
 | |
|                               Name 22  "tbuf2"
 | |
|                               MemberName 22(tbuf2) 0  "f2"
 | |
|                               MemberName 22(tbuf2) 1  "i2"
 | |
|                               Name 24  ""
 | |
|                               Name 30  "pos"
 | |
|                               Name 32  "pos"
 | |
|                               Name 35  "@entryPointOutput"
 | |
|                               Name 36  "param"
 | |
|                               MemberDecorate 15(TextureBuffer_var) 0 NonWritable
 | |
|                               MemberDecorate 15(TextureBuffer_var) 0 Offset 0
 | |
|                               MemberDecorate 15(TextureBuffer_var) 1 NonWritable
 | |
|                               MemberDecorate 15(TextureBuffer_var) 1 Offset 16
 | |
|                               Decorate 15(TextureBuffer_var) BufferBlock
 | |
|                               Decorate 17(TextureBuffer_var) DescriptorSet 0
 | |
|                               Decorate 17(TextureBuffer_var) Binding 0
 | |
|                               MemberDecorate 22(tbuf2) 0 NonWritable
 | |
|                               MemberDecorate 22(tbuf2) 0 Offset 0
 | |
|                               MemberDecorate 22(tbuf2) 1 NonWritable
 | |
|                               MemberDecorate 22(tbuf2) 1 Offset 16
 | |
|                               Decorate 22(tbuf2) BufferBlock
 | |
|                               Decorate 24 DescriptorSet 0
 | |
|                               Decorate 32(pos) BuiltIn FragCoord
 | |
|                               Decorate 35(@entryPointOutput) Location 0
 | |
|                2:             TypeVoid
 | |
|                3:             TypeFunction 2
 | |
|                6:             TypeFloat 32
 | |
|                7:             TypeVector 6(float) 4
 | |
|                8:             TypePointer Function 7(fvec4)
 | |
|                9:             TypeFunction 7(fvec4) 8(ptr)
 | |
|               13:             TypeInt 32 1
 | |
|               14:             TypeVector 13(int) 4
 | |
| 15(TextureBuffer_var):             TypeStruct 7(fvec4) 14(ivec4)
 | |
|               16:             TypePointer Uniform 15(TextureBuffer_var)
 | |
| 17(TextureBuffer_var):     16(ptr) Variable Uniform
 | |
|               18:     13(int) Constant 0
 | |
|               19:             TypePointer Uniform 7(fvec4)
 | |
|        22(tbuf2):             TypeStruct 7(fvec4) 14(ivec4)
 | |
|               23:             TypePointer Uniform 22(tbuf2)
 | |
|               24:     23(ptr) Variable Uniform
 | |
|               31:             TypePointer Input 7(fvec4)
 | |
|          32(pos):     31(ptr) Variable Input
 | |
|               34:             TypePointer Output 7(fvec4)
 | |
| 35(@entryPointOutput):     34(ptr) Variable Output
 | |
|          4(main):           2 Function None 3
 | |
|                5:             Label
 | |
|          30(pos):      8(ptr) Variable Function
 | |
|        36(param):      8(ptr) Variable Function
 | |
|               33:    7(fvec4) Load 32(pos)
 | |
|                               Store 30(pos) 33
 | |
|               37:    7(fvec4) Load 30(pos)
 | |
|                               Store 36(param) 37
 | |
|               38:    7(fvec4) FunctionCall 11(@main(vf4;) 36(param)
 | |
|                               Store 35(@entryPointOutput) 38
 | |
|                               Return
 | |
|                               FunctionEnd
 | |
|   11(@main(vf4;):    7(fvec4) Function None 9
 | |
|          10(pos):      8(ptr) FunctionParameter
 | |
|               12:             Label
 | |
|               20:     19(ptr) AccessChain 17(TextureBuffer_var) 18
 | |
|               21:    7(fvec4) Load 20
 | |
|               25:     19(ptr) AccessChain 24 18
 | |
|               26:    7(fvec4) Load 25
 | |
|               27:    7(fvec4) FAdd 21 26
 | |
|                               ReturnValue 27
 | |
|                               FunctionEnd
 |