310 lines
		
	
	
		
			14 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			310 lines
		
	
	
		
			14 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
hlsl.basic.geom
 | 
						|
Shader version: 500
 | 
						|
invocations = -1
 | 
						|
max_vertices = 4
 | 
						|
input primitive = triangles
 | 
						|
output primitive = line_strip
 | 
						|
0:? Sequence
 | 
						|
0:16  Function Definition: @main(u1[3];u1[3];struct-PSInput-f1-i11; ( temp void)
 | 
						|
0:16    Function Parameters: 
 | 
						|
0:16      'VertexID' ( in 3-element array of uint)
 | 
						|
0:16      'test' ( in 3-element array of uint)
 | 
						|
0:16      'OutputStream' ( out structure{ temp float myfloat,  temp int something})
 | 
						|
0:?     Sequence
 | 
						|
0:19      move second child to first child ( temp float)
 | 
						|
0:19        myfloat: direct index for structure ( temp float)
 | 
						|
0:19          'Vert' ( temp structure{ temp float myfloat,  temp int something})
 | 
						|
0:19          Constant:
 | 
						|
0:19            0 (const int)
 | 
						|
0:19        Convert uint to float ( temp float)
 | 
						|
0:19          add ( temp uint)
 | 
						|
0:19            add ( temp uint)
 | 
						|
0:19              direct index ( temp uint)
 | 
						|
0:19                'test' ( in 3-element array of uint)
 | 
						|
0:19                Constant:
 | 
						|
0:19                  0 (const int)
 | 
						|
0:19              direct index ( temp uint)
 | 
						|
0:19                'test' ( in 3-element array of uint)
 | 
						|
0:19                Constant:
 | 
						|
0:19                  1 (const int)
 | 
						|
0:19            direct index ( temp uint)
 | 
						|
0:19              'test' ( in 3-element array of uint)
 | 
						|
0:19              Constant:
 | 
						|
0:19                2 (const int)
 | 
						|
0:20      move second child to first child ( temp int)
 | 
						|
0:20        something: direct index for structure ( temp int)
 | 
						|
0:20          'Vert' ( temp structure{ temp float myfloat,  temp int something})
 | 
						|
0:20          Constant:
 | 
						|
0:20            1 (const int)
 | 
						|
0:20        Convert uint to int ( temp int)
 | 
						|
0:20          direct index ( temp uint)
 | 
						|
0:20            'VertexID' ( in 3-element array of uint)
 | 
						|
0:20            Constant:
 | 
						|
0:20              0 (const int)
 | 
						|
0:22      Sequence
 | 
						|
0:22        Sequence
 | 
						|
0:22          move second child to first child ( temp float)
 | 
						|
0:?             'OutputStream.myfloat' (layout( location=0) out float)
 | 
						|
0:22            myfloat: direct index for structure ( temp float)
 | 
						|
0:22              'Vert' ( temp structure{ temp float myfloat,  temp int something})
 | 
						|
0:22              Constant:
 | 
						|
0:22                0 (const int)
 | 
						|
0:22          move second child to first child ( temp int)
 | 
						|
0:?             'OutputStream.something' (layout( location=1) out int)
 | 
						|
0:22            something: direct index for structure ( temp int)
 | 
						|
0:22              'Vert' ( temp structure{ temp float myfloat,  temp int something})
 | 
						|
0:22              Constant:
 | 
						|
0:22                1 (const int)
 | 
						|
0:22        EmitVertex ( temp void)
 | 
						|
0:23      Sequence
 | 
						|
0:23        Sequence
 | 
						|
0:23          move second child to first child ( temp float)
 | 
						|
0:?             'OutputStream.myfloat' (layout( location=0) out float)
 | 
						|
0:23            myfloat: direct index for structure ( temp float)
 | 
						|
0:23              'Vert' ( temp structure{ temp float myfloat,  temp int something})
 | 
						|
0:23              Constant:
 | 
						|
0:23                0 (const int)
 | 
						|
0:23          move second child to first child ( temp int)
 | 
						|
0:?             'OutputStream.something' (layout( location=1) out int)
 | 
						|
0:23            something: direct index for structure ( temp int)
 | 
						|
0:23              'Vert' ( temp structure{ temp float myfloat,  temp int something})
 | 
						|
0:23              Constant:
 | 
						|
0:23                1 (const int)
 | 
						|
0:23        EmitVertex ( temp void)
 | 
						|
0:24      EndPrimitive ( temp void)
 | 
						|
0:16  Function Definition: main( ( temp void)
 | 
						|
0:16    Function Parameters: 
 | 
						|
0:?     Sequence
 | 
						|
0:16      move second child to first child ( temp 3-element array of uint)
 | 
						|
0:?         'VertexID' ( temp 3-element array of uint)
 | 
						|
0:?         'VertexID' (layout( location=0) in 3-element array of uint)
 | 
						|
0:16      move second child to first child ( temp 3-element array of uint)
 | 
						|
0:?         'test' ( temp 3-element array of uint)
 | 
						|
0:?         'test' (layout( location=1) in 3-element array of uint)
 | 
						|
0:16      Function Call: @main(u1[3];u1[3];struct-PSInput-f1-i11; ( temp void)
 | 
						|
0:?         'VertexID' ( temp 3-element array of uint)
 | 
						|
0:?         'test' ( temp 3-element array of uint)
 | 
						|
0:?         'OutputStream' ( temp structure{ temp float myfloat,  temp int something})
 | 
						|
0:?   Linker Objects
 | 
						|
0:?     'VertexID' (layout( location=0) in 3-element array of uint)
 | 
						|
0:?     'test' (layout( location=1) in 3-element array of uint)
 | 
						|
0:?     'OutputStream.myfloat' (layout( location=0) out float)
 | 
						|
0:?     'OutputStream.something' (layout( location=1) out int)
 | 
						|
 | 
						|
 | 
						|
Linked geometry stage:
 | 
						|
 | 
						|
 | 
						|
Shader version: 500
 | 
						|
invocations = 1
 | 
						|
max_vertices = 4
 | 
						|
input primitive = triangles
 | 
						|
output primitive = line_strip
 | 
						|
0:? Sequence
 | 
						|
0:16  Function Definition: @main(u1[3];u1[3];struct-PSInput-f1-i11; ( temp void)
 | 
						|
0:16    Function Parameters: 
 | 
						|
0:16      'VertexID' ( in 3-element array of uint)
 | 
						|
0:16      'test' ( in 3-element array of uint)
 | 
						|
0:16      'OutputStream' ( out structure{ temp float myfloat,  temp int something})
 | 
						|
0:?     Sequence
 | 
						|
0:19      move second child to first child ( temp float)
 | 
						|
0:19        myfloat: direct index for structure ( temp float)
 | 
						|
0:19          'Vert' ( temp structure{ temp float myfloat,  temp int something})
 | 
						|
0:19          Constant:
 | 
						|
0:19            0 (const int)
 | 
						|
0:19        Convert uint to float ( temp float)
 | 
						|
0:19          add ( temp uint)
 | 
						|
0:19            add ( temp uint)
 | 
						|
0:19              direct index ( temp uint)
 | 
						|
0:19                'test' ( in 3-element array of uint)
 | 
						|
0:19                Constant:
 | 
						|
0:19                  0 (const int)
 | 
						|
0:19              direct index ( temp uint)
 | 
						|
0:19                'test' ( in 3-element array of uint)
 | 
						|
0:19                Constant:
 | 
						|
0:19                  1 (const int)
 | 
						|
0:19            direct index ( temp uint)
 | 
						|
0:19              'test' ( in 3-element array of uint)
 | 
						|
0:19              Constant:
 | 
						|
0:19                2 (const int)
 | 
						|
0:20      move second child to first child ( temp int)
 | 
						|
0:20        something: direct index for structure ( temp int)
 | 
						|
0:20          'Vert' ( temp structure{ temp float myfloat,  temp int something})
 | 
						|
0:20          Constant:
 | 
						|
0:20            1 (const int)
 | 
						|
0:20        Convert uint to int ( temp int)
 | 
						|
0:20          direct index ( temp uint)
 | 
						|
0:20            'VertexID' ( in 3-element array of uint)
 | 
						|
0:20            Constant:
 | 
						|
0:20              0 (const int)
 | 
						|
0:22      Sequence
 | 
						|
0:22        Sequence
 | 
						|
0:22          move second child to first child ( temp float)
 | 
						|
0:?             'OutputStream.myfloat' (layout( location=0) out float)
 | 
						|
0:22            myfloat: direct index for structure ( temp float)
 | 
						|
0:22              'Vert' ( temp structure{ temp float myfloat,  temp int something})
 | 
						|
0:22              Constant:
 | 
						|
0:22                0 (const int)
 | 
						|
0:22          move second child to first child ( temp int)
 | 
						|
0:?             'OutputStream.something' (layout( location=1) out int)
 | 
						|
0:22            something: direct index for structure ( temp int)
 | 
						|
0:22              'Vert' ( temp structure{ temp float myfloat,  temp int something})
 | 
						|
0:22              Constant:
 | 
						|
0:22                1 (const int)
 | 
						|
0:22        EmitVertex ( temp void)
 | 
						|
0:23      Sequence
 | 
						|
0:23        Sequence
 | 
						|
0:23          move second child to first child ( temp float)
 | 
						|
0:?             'OutputStream.myfloat' (layout( location=0) out float)
 | 
						|
0:23            myfloat: direct index for structure ( temp float)
 | 
						|
0:23              'Vert' ( temp structure{ temp float myfloat,  temp int something})
 | 
						|
0:23              Constant:
 | 
						|
0:23                0 (const int)
 | 
						|
0:23          move second child to first child ( temp int)
 | 
						|
0:?             'OutputStream.something' (layout( location=1) out int)
 | 
						|
0:23            something: direct index for structure ( temp int)
 | 
						|
0:23              'Vert' ( temp structure{ temp float myfloat,  temp int something})
 | 
						|
0:23              Constant:
 | 
						|
0:23                1 (const int)
 | 
						|
0:23        EmitVertex ( temp void)
 | 
						|
0:24      EndPrimitive ( temp void)
 | 
						|
0:16  Function Definition: main( ( temp void)
 | 
						|
0:16    Function Parameters: 
 | 
						|
0:?     Sequence
 | 
						|
0:16      move second child to first child ( temp 3-element array of uint)
 | 
						|
0:?         'VertexID' ( temp 3-element array of uint)
 | 
						|
0:?         'VertexID' (layout( location=0) in 3-element array of uint)
 | 
						|
0:16      move second child to first child ( temp 3-element array of uint)
 | 
						|
0:?         'test' ( temp 3-element array of uint)
 | 
						|
0:?         'test' (layout( location=1) in 3-element array of uint)
 | 
						|
0:16      Function Call: @main(u1[3];u1[3];struct-PSInput-f1-i11; ( temp void)
 | 
						|
0:?         'VertexID' ( temp 3-element array of uint)
 | 
						|
0:?         'test' ( temp 3-element array of uint)
 | 
						|
0:?         'OutputStream' ( temp structure{ temp float myfloat,  temp int something})
 | 
						|
0:?   Linker Objects
 | 
						|
0:?     'VertexID' (layout( location=0) in 3-element array of uint)
 | 
						|
0:?     'test' (layout( location=1) in 3-element array of uint)
 | 
						|
0:?     'OutputStream.myfloat' (layout( location=0) out float)
 | 
						|
0:?     'OutputStream.something' (layout( location=1) out int)
 | 
						|
 | 
						|
// Module Version 10000
 | 
						|
// Generated by (magic number): 8000a
 | 
						|
// Id's are bound by 68
 | 
						|
 | 
						|
                              Capability Geometry
 | 
						|
               1:             ExtInstImport  "GLSL.std.450"
 | 
						|
                              MemoryModel Logical GLSL450
 | 
						|
                              EntryPoint Geometry 4  "main" 42 46 55 58
 | 
						|
                              ExecutionMode 4 Triangles
 | 
						|
                              ExecutionMode 4 Invocations 1
 | 
						|
                              ExecutionMode 4 OutputLineStrip
 | 
						|
                              ExecutionMode 4 OutputVertices 4
 | 
						|
                              Source HLSL 500
 | 
						|
                              Name 4  "main"
 | 
						|
                              Name 12  "PSInput"
 | 
						|
                              MemberName 12(PSInput) 0  "myfloat"
 | 
						|
                              MemberName 12(PSInput) 1  "something"
 | 
						|
                              Name 18  "@main(u1[3];u1[3];struct-PSInput-f1-i11;"
 | 
						|
                              Name 15  "VertexID"
 | 
						|
                              Name 16  "test"
 | 
						|
                              Name 17  "OutputStream"
 | 
						|
                              Name 20  "Vert"
 | 
						|
                              Name 42  "OutputStream.myfloat"
 | 
						|
                              Name 46  "OutputStream.something"
 | 
						|
                              Name 53  "VertexID"
 | 
						|
                              Name 55  "VertexID"
 | 
						|
                              Name 57  "test"
 | 
						|
                              Name 58  "test"
 | 
						|
                              Name 60  "OutputStream"
 | 
						|
                              Name 61  "param"
 | 
						|
                              Name 63  "param"
 | 
						|
                              Name 65  "param"
 | 
						|
                              Decorate 42(OutputStream.myfloat) Location 0
 | 
						|
                              Decorate 46(OutputStream.something) Location 1
 | 
						|
                              Decorate 55(VertexID) Location 0
 | 
						|
                              Decorate 58(test) Location 1
 | 
						|
               2:             TypeVoid
 | 
						|
               3:             TypeFunction 2
 | 
						|
               6:             TypeInt 32 0
 | 
						|
               7:      6(int) Constant 3
 | 
						|
               8:             TypeArray 6(int) 7
 | 
						|
               9:             TypePointer Function 8
 | 
						|
              10:             TypeFloat 32
 | 
						|
              11:             TypeInt 32 1
 | 
						|
     12(PSInput):             TypeStruct 10(float) 11(int)
 | 
						|
              13:             TypePointer Function 12(PSInput)
 | 
						|
              14:             TypeFunction 2 9(ptr) 9(ptr) 13(ptr)
 | 
						|
              21:     11(int) Constant 0
 | 
						|
              22:             TypePointer Function 6(int)
 | 
						|
              25:     11(int) Constant 1
 | 
						|
              29:     11(int) Constant 2
 | 
						|
              34:             TypePointer Function 10(float)
 | 
						|
              39:             TypePointer Function 11(int)
 | 
						|
              41:             TypePointer Output 10(float)
 | 
						|
42(OutputStream.myfloat):     41(ptr) Variable Output
 | 
						|
              45:             TypePointer Output 11(int)
 | 
						|
46(OutputStream.something):     45(ptr) Variable Output
 | 
						|
              54:             TypePointer Input 8
 | 
						|
    55(VertexID):     54(ptr) Variable Input
 | 
						|
        58(test):     54(ptr) Variable Input
 | 
						|
         4(main):           2 Function None 3
 | 
						|
               5:             Label
 | 
						|
    53(VertexID):      9(ptr) Variable Function
 | 
						|
        57(test):      9(ptr) Variable Function
 | 
						|
60(OutputStream):     13(ptr) Variable Function
 | 
						|
       61(param):      9(ptr) Variable Function
 | 
						|
       63(param):      9(ptr) Variable Function
 | 
						|
       65(param):     13(ptr) Variable Function
 | 
						|
              56:           8 Load 55(VertexID)
 | 
						|
                              Store 53(VertexID) 56
 | 
						|
              59:           8 Load 58(test)
 | 
						|
                              Store 57(test) 59
 | 
						|
              62:           8 Load 53(VertexID)
 | 
						|
                              Store 61(param) 62
 | 
						|
              64:           8 Load 57(test)
 | 
						|
                              Store 63(param) 64
 | 
						|
              66:           2 FunctionCall 18(@main(u1[3];u1[3];struct-PSInput-f1-i11;) 61(param) 63(param) 65(param)
 | 
						|
              67: 12(PSInput) Load 65(param)
 | 
						|
                              Store 60(OutputStream) 67
 | 
						|
                              Return
 | 
						|
                              FunctionEnd
 | 
						|
18(@main(u1[3];u1[3];struct-PSInput-f1-i11;):           2 Function None 14
 | 
						|
    15(VertexID):      9(ptr) FunctionParameter
 | 
						|
        16(test):      9(ptr) FunctionParameter
 | 
						|
17(OutputStream):     13(ptr) FunctionParameter
 | 
						|
              19:             Label
 | 
						|
        20(Vert):     13(ptr) Variable Function
 | 
						|
              23:     22(ptr) AccessChain 16(test) 21
 | 
						|
              24:      6(int) Load 23
 | 
						|
              26:     22(ptr) AccessChain 16(test) 25
 | 
						|
              27:      6(int) Load 26
 | 
						|
              28:      6(int) IAdd 24 27
 | 
						|
              30:     22(ptr) AccessChain 16(test) 29
 | 
						|
              31:      6(int) Load 30
 | 
						|
              32:      6(int) IAdd 28 31
 | 
						|
              33:   10(float) ConvertUToF 32
 | 
						|
              35:     34(ptr) AccessChain 20(Vert) 21
 | 
						|
                              Store 35 33
 | 
						|
              36:     22(ptr) AccessChain 15(VertexID) 21
 | 
						|
              37:      6(int) Load 36
 | 
						|
              38:     11(int) Bitcast 37
 | 
						|
              40:     39(ptr) AccessChain 20(Vert) 25
 | 
						|
                              Store 40 38
 | 
						|
              43:     34(ptr) AccessChain 20(Vert) 21
 | 
						|
              44:   10(float) Load 43
 | 
						|
                              Store 42(OutputStream.myfloat) 44
 | 
						|
              47:     39(ptr) AccessChain 20(Vert) 25
 | 
						|
              48:     11(int) Load 47
 | 
						|
                              Store 46(OutputStream.something) 48
 | 
						|
                              EmitVertex
 | 
						|
              49:     34(ptr) AccessChain 20(Vert) 21
 | 
						|
              50:   10(float) Load 49
 | 
						|
                              Store 42(OutputStream.myfloat) 50
 | 
						|
              51:     39(ptr) AccessChain 20(Vert) 25
 | 
						|
              52:     11(int) Load 51
 | 
						|
                              Store 46(OutputStream.something) 52
 | 
						|
                              EmitVertex
 | 
						|
                              EndPrimitive
 | 
						|
                              Return
 | 
						|
                              FunctionEnd
 |