377 lines
		
	
	
		
			20 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			377 lines
		
	
	
		
			20 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| hlsl.partialFlattenLocal.vert
 | |
| WARNING: AST will form illegal SPIR-V; need to transform to legalize
 | |
| Shader version: 500
 | |
| 0:? Sequence
 | |
| 0:12  Function Definition: @main(vf4; ( temp 4-component vector of float)
 | |
| 0:12    Function Parameters: 
 | |
| 0:12      'pos' ( in 4-component vector of float)
 | |
| 0:?     Sequence
 | |
| 0:14      move second child to first child ( temp texture2D)
 | |
| 0:14        tex: direct index for structure ( temp texture2D)
 | |
| 0:14          'packed' ( temp structure{ temp texture2D tex,  temp 3-element array of 3-component vector of float pos,  temp 2-element array of 2-component vector of float uv,  temp float x,  temp int n})
 | |
| 0:14          Constant:
 | |
| 0:14            0 (const int)
 | |
| 0:14        'tex' ( uniform texture2D)
 | |
| 0:15      move second child to first child ( temp 3-component vector of float)
 | |
| 0:15        direct index ( temp 3-component vector of float)
 | |
| 0:15          pos: direct index for structure ( temp 3-element array of 3-component vector of float)
 | |
| 0:15            'packed' ( temp structure{ temp texture2D tex,  temp 3-element array of 3-component vector of float pos,  temp 2-element array of 2-component vector of float uv,  temp float x,  temp int n})
 | |
| 0:15            Constant:
 | |
| 0:15              1 (const int)
 | |
| 0:15          Constant:
 | |
| 0:15            0 (const int)
 | |
| 0:?         Constant:
 | |
| 0:?           0.000000
 | |
| 0:?           0.000000
 | |
| 0:?           0.000000
 | |
| 0:16      move second child to first child ( temp 2-component vector of float)
 | |
| 0:16        direct index ( temp 2-component vector of float)
 | |
| 0:16          uv: direct index for structure ( temp 2-element array of 2-component vector of float)
 | |
| 0:16            'packed' ( temp structure{ temp texture2D tex,  temp 3-element array of 3-component vector of float pos,  temp 2-element array of 2-component vector of float uv,  temp float x,  temp int n})
 | |
| 0:16            Constant:
 | |
| 0:16              2 (const int)
 | |
| 0:16          Constant:
 | |
| 0:16            0 (const int)
 | |
| 0:?         Constant:
 | |
| 0:?           0.000000
 | |
| 0:?           1.000000
 | |
| 0:17      move second child to first child ( temp float)
 | |
| 0:17        x: direct index for structure ( temp float)
 | |
| 0:17          'packed' ( temp structure{ temp texture2D tex,  temp 3-element array of 3-component vector of float pos,  temp 2-element array of 2-component vector of float uv,  temp float x,  temp int n})
 | |
| 0:17          Constant:
 | |
| 0:17            3 (const int)
 | |
| 0:17        Constant:
 | |
| 0:17          1.000000
 | |
| 0:18      move second child to first child ( temp int)
 | |
| 0:18        n: direct index for structure ( temp int)
 | |
| 0:18          'packed' ( temp structure{ temp texture2D tex,  temp 3-element array of 3-component vector of float pos,  temp 2-element array of 2-component vector of float uv,  temp float x,  temp int n})
 | |
| 0:18          Constant:
 | |
| 0:18            4 (const int)
 | |
| 0:18        Constant:
 | |
| 0:18          3 (const int)
 | |
| 0:20      Sequence
 | |
| 0:20        move second child to first child ( temp int)
 | |
| 0:20          'i' ( temp int)
 | |
| 0:20          Constant:
 | |
| 0:20            0 (const int)
 | |
| 0:20        Loop with condition tested first
 | |
| 0:20          Loop Condition
 | |
| 0:20          Compare Less Than ( temp bool)
 | |
| 0:20            'i' ( temp int)
 | |
| 0:20            Constant:
 | |
| 0:20              1 (const int)
 | |
| 0:20          Loop Body
 | |
| 0:?           Sequence
 | |
| 0:21            add second child into first child ( temp 2-component vector of float)
 | |
| 0:21              vector swizzle ( temp 2-component vector of float)
 | |
| 0:21                indirect index ( temp 3-component vector of float)
 | |
| 0:21                  pos: direct index for structure ( temp 3-element array of 3-component vector of float)
 | |
| 0:21                    'packed' ( temp structure{ temp texture2D tex,  temp 3-element array of 3-component vector of float pos,  temp 2-element array of 2-component vector of float uv,  temp float x,  temp int n})
 | |
| 0:21                    Constant:
 | |
| 0:21                      1 (const int)
 | |
| 0:21                  'i' ( temp int)
 | |
| 0:21                Sequence
 | |
| 0:21                  Constant:
 | |
| 0:21                    0 (const int)
 | |
| 0:21                  Constant:
 | |
| 0:21                    1 (const int)
 | |
| 0:21              indirect index ( temp 2-component vector of float)
 | |
| 0:21                uv: direct index for structure ( temp 2-element array of 2-component vector of float)
 | |
| 0:21                  'packed' ( temp structure{ temp texture2D tex,  temp 3-element array of 3-component vector of float pos,  temp 2-element array of 2-component vector of float uv,  temp float x,  temp int n})
 | |
| 0:21                  Constant:
 | |
| 0:21                    2 (const int)
 | |
| 0:21                'i' ( temp int)
 | |
| 0:20          Loop Terminal Expression
 | |
| 0:20          Pre-Increment ( temp int)
 | |
| 0:20            'i' ( temp int)
 | |
| 0:24      Sequence
 | |
| 0:24        move second child to first child ( temp structure{ temp texture2D tex,  temp 3-element array of 3-component vector of float pos,  temp 2-element array of 2-component vector of float uv,  temp float x,  temp int n})
 | |
| 0:24          'packed2' ( temp structure{ temp texture2D tex,  temp 3-element array of 3-component vector of float pos,  temp 2-element array of 2-component vector of float uv,  temp float x,  temp int n})
 | |
| 0:24          'packed' ( temp structure{ temp texture2D tex,  temp 3-element array of 3-component vector of float pos,  temp 2-element array of 2-component vector of float uv,  temp float x,  temp int n})
 | |
| 0:26      Branch: Return with expression
 | |
| 0:26        add ( temp 4-component vector of float)
 | |
| 0:26          'pos' ( in 4-component vector of float)
 | |
| 0:?           Construct vec4 ( temp 4-component vector of float)
 | |
| 0:26            direct index ( temp 3-component vector of float)
 | |
| 0:26              pos: direct index for structure ( temp 3-element array of 3-component vector of float)
 | |
| 0:26                'packed2' ( temp structure{ temp texture2D tex,  temp 3-element array of 3-component vector of float pos,  temp 2-element array of 2-component vector of float uv,  temp float x,  temp int n})
 | |
| 0:26                Constant:
 | |
| 0:26                  1 (const int)
 | |
| 0:26              Constant:
 | |
| 0:26                0 (const int)
 | |
| 0:26            Constant:
 | |
| 0:26              0.000000
 | |
| 0:12  Function Definition: main( ( temp void)
 | |
| 0:12    Function Parameters: 
 | |
| 0:?     Sequence
 | |
| 0:12      move second child to first child ( temp 4-component vector of float)
 | |
| 0:?         'pos' ( temp 4-component vector of float)
 | |
| 0:?         'pos' (layout( location=0) in 4-component vector of float)
 | |
| 0:12      move second child to first child ( temp 4-component vector of float)
 | |
| 0:?         '@entryPointOutput' ( out 4-component vector of float Position)
 | |
| 0:12        Function Call: @main(vf4; ( temp 4-component vector of float)
 | |
| 0:?           'pos' ( temp 4-component vector of float)
 | |
| 0:?   Linker Objects
 | |
| 0:?     'tex' ( uniform texture2D)
 | |
| 0:?     '@entryPointOutput' ( out 4-component vector of float Position)
 | |
| 0:?     'pos' (layout( location=0) in 4-component vector of float)
 | |
| 
 | |
| 
 | |
| Linked vertex stage:
 | |
| 
 | |
| 
 | |
| Shader version: 500
 | |
| 0:? Sequence
 | |
| 0:12  Function Definition: @main(vf4; ( temp 4-component vector of float)
 | |
| 0:12    Function Parameters: 
 | |
| 0:12      'pos' ( in 4-component vector of float)
 | |
| 0:?     Sequence
 | |
| 0:14      move second child to first child ( temp texture2D)
 | |
| 0:14        tex: direct index for structure ( temp texture2D)
 | |
| 0:14          'packed' ( temp structure{ temp texture2D tex,  temp 3-element array of 3-component vector of float pos,  temp 2-element array of 2-component vector of float uv,  temp float x,  temp int n})
 | |
| 0:14          Constant:
 | |
| 0:14            0 (const int)
 | |
| 0:14        'tex' ( uniform texture2D)
 | |
| 0:15      move second child to first child ( temp 3-component vector of float)
 | |
| 0:15        direct index ( temp 3-component vector of float)
 | |
| 0:15          pos: direct index for structure ( temp 3-element array of 3-component vector of float)
 | |
| 0:15            'packed' ( temp structure{ temp texture2D tex,  temp 3-element array of 3-component vector of float pos,  temp 2-element array of 2-component vector of float uv,  temp float x,  temp int n})
 | |
| 0:15            Constant:
 | |
| 0:15              1 (const int)
 | |
| 0:15          Constant:
 | |
| 0:15            0 (const int)
 | |
| 0:?         Constant:
 | |
| 0:?           0.000000
 | |
| 0:?           0.000000
 | |
| 0:?           0.000000
 | |
| 0:16      move second child to first child ( temp 2-component vector of float)
 | |
| 0:16        direct index ( temp 2-component vector of float)
 | |
| 0:16          uv: direct index for structure ( temp 2-element array of 2-component vector of float)
 | |
| 0:16            'packed' ( temp structure{ temp texture2D tex,  temp 3-element array of 3-component vector of float pos,  temp 2-element array of 2-component vector of float uv,  temp float x,  temp int n})
 | |
| 0:16            Constant:
 | |
| 0:16              2 (const int)
 | |
| 0:16          Constant:
 | |
| 0:16            0 (const int)
 | |
| 0:?         Constant:
 | |
| 0:?           0.000000
 | |
| 0:?           1.000000
 | |
| 0:17      move second child to first child ( temp float)
 | |
| 0:17        x: direct index for structure ( temp float)
 | |
| 0:17          'packed' ( temp structure{ temp texture2D tex,  temp 3-element array of 3-component vector of float pos,  temp 2-element array of 2-component vector of float uv,  temp float x,  temp int n})
 | |
| 0:17          Constant:
 | |
| 0:17            3 (const int)
 | |
| 0:17        Constant:
 | |
| 0:17          1.000000
 | |
| 0:18      move second child to first child ( temp int)
 | |
| 0:18        n: direct index for structure ( temp int)
 | |
| 0:18          'packed' ( temp structure{ temp texture2D tex,  temp 3-element array of 3-component vector of float pos,  temp 2-element array of 2-component vector of float uv,  temp float x,  temp int n})
 | |
| 0:18          Constant:
 | |
| 0:18            4 (const int)
 | |
| 0:18        Constant:
 | |
| 0:18          3 (const int)
 | |
| 0:20      Sequence
 | |
| 0:20        move second child to first child ( temp int)
 | |
| 0:20          'i' ( temp int)
 | |
| 0:20          Constant:
 | |
| 0:20            0 (const int)
 | |
| 0:20        Loop with condition tested first
 | |
| 0:20          Loop Condition
 | |
| 0:20          Compare Less Than ( temp bool)
 | |
| 0:20            'i' ( temp int)
 | |
| 0:20            Constant:
 | |
| 0:20              1 (const int)
 | |
| 0:20          Loop Body
 | |
| 0:?           Sequence
 | |
| 0:21            add second child into first child ( temp 2-component vector of float)
 | |
| 0:21              vector swizzle ( temp 2-component vector of float)
 | |
| 0:21                indirect index ( temp 3-component vector of float)
 | |
| 0:21                  pos: direct index for structure ( temp 3-element array of 3-component vector of float)
 | |
| 0:21                    'packed' ( temp structure{ temp texture2D tex,  temp 3-element array of 3-component vector of float pos,  temp 2-element array of 2-component vector of float uv,  temp float x,  temp int n})
 | |
| 0:21                    Constant:
 | |
| 0:21                      1 (const int)
 | |
| 0:21                  'i' ( temp int)
 | |
| 0:21                Sequence
 | |
| 0:21                  Constant:
 | |
| 0:21                    0 (const int)
 | |
| 0:21                  Constant:
 | |
| 0:21                    1 (const int)
 | |
| 0:21              indirect index ( temp 2-component vector of float)
 | |
| 0:21                uv: direct index for structure ( temp 2-element array of 2-component vector of float)
 | |
| 0:21                  'packed' ( temp structure{ temp texture2D tex,  temp 3-element array of 3-component vector of float pos,  temp 2-element array of 2-component vector of float uv,  temp float x,  temp int n})
 | |
| 0:21                  Constant:
 | |
| 0:21                    2 (const int)
 | |
| 0:21                'i' ( temp int)
 | |
| 0:20          Loop Terminal Expression
 | |
| 0:20          Pre-Increment ( temp int)
 | |
| 0:20            'i' ( temp int)
 | |
| 0:24      Sequence
 | |
| 0:24        move second child to first child ( temp structure{ temp texture2D tex,  temp 3-element array of 3-component vector of float pos,  temp 2-element array of 2-component vector of float uv,  temp float x,  temp int n})
 | |
| 0:24          'packed2' ( temp structure{ temp texture2D tex,  temp 3-element array of 3-component vector of float pos,  temp 2-element array of 2-component vector of float uv,  temp float x,  temp int n})
 | |
| 0:24          'packed' ( temp structure{ temp texture2D tex,  temp 3-element array of 3-component vector of float pos,  temp 2-element array of 2-component vector of float uv,  temp float x,  temp int n})
 | |
| 0:26      Branch: Return with expression
 | |
| 0:26        add ( temp 4-component vector of float)
 | |
| 0:26          'pos' ( in 4-component vector of float)
 | |
| 0:?           Construct vec4 ( temp 4-component vector of float)
 | |
| 0:26            direct index ( temp 3-component vector of float)
 | |
| 0:26              pos: direct index for structure ( temp 3-element array of 3-component vector of float)
 | |
| 0:26                'packed2' ( temp structure{ temp texture2D tex,  temp 3-element array of 3-component vector of float pos,  temp 2-element array of 2-component vector of float uv,  temp float x,  temp int n})
 | |
| 0:26                Constant:
 | |
| 0:26                  1 (const int)
 | |
| 0:26              Constant:
 | |
| 0:26                0 (const int)
 | |
| 0:26            Constant:
 | |
| 0:26              0.000000
 | |
| 0:12  Function Definition: main( ( temp void)
 | |
| 0:12    Function Parameters: 
 | |
| 0:?     Sequence
 | |
| 0:12      move second child to first child ( temp 4-component vector of float)
 | |
| 0:?         'pos' ( temp 4-component vector of float)
 | |
| 0:?         'pos' (layout( location=0) in 4-component vector of float)
 | |
| 0:12      move second child to first child ( temp 4-component vector of float)
 | |
| 0:?         '@entryPointOutput' ( out 4-component vector of float Position)
 | |
| 0:12        Function Call: @main(vf4; ( temp 4-component vector of float)
 | |
| 0:?           'pos' ( temp 4-component vector of float)
 | |
| 0:?   Linker Objects
 | |
| 0:?     'tex' ( uniform texture2D)
 | |
| 0:?     '@entryPointOutput' ( out 4-component vector of float Position)
 | |
| 0:?     'pos' (layout( location=0) in 4-component vector of float)
 | |
| 
 | |
| // Module Version 10000
 | |
| // Generated by (magic number): 80007
 | |
| // Id's are bound by 90
 | |
| 
 | |
|                               Capability Shader
 | |
|                1:             ExtInstImport  "GLSL.std.450"
 | |
|                               MemoryModel Logical GLSL450
 | |
|                               EntryPoint Vertex 4  "main" 83 86
 | |
|                               Source HLSL 500
 | |
|                               Name 4  "main"
 | |
|                               Name 11  "@main(vf4;"
 | |
|                               Name 10  "pos"
 | |
|                               Name 22  "Packed"
 | |
|                               MemberName 22(Packed) 0  "tex"
 | |
|                               MemberName 22(Packed) 1  "pos"
 | |
|                               MemberName 22(Packed) 2  "uv"
 | |
|                               MemberName 22(Packed) 3  "x"
 | |
|                               MemberName 22(Packed) 4  "n"
 | |
|                               Name 24  "packed"
 | |
|                               Name 27  "tex"
 | |
|                               Name 47  "i"
 | |
|                               Name 69  "packed2"
 | |
|                               Name 81  "pos"
 | |
|                               Name 83  "pos"
 | |
|                               Name 86  "@entryPointOutput"
 | |
|                               Name 87  "param"
 | |
|                               Decorate 27(tex) DescriptorSet 0
 | |
|                               Decorate 27(tex) Binding 0
 | |
|                               Decorate 83(pos) Location 0
 | |
|                               Decorate 86(@entryPointOutput) BuiltIn Position
 | |
|                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:             TypeImage 6(float) 2D sampled format:Unknown
 | |
|               14:             TypeVector 6(float) 3
 | |
|               15:             TypeInt 32 0
 | |
|               16:     15(int) Constant 3
 | |
|               17:             TypeArray 14(fvec3) 16
 | |
|               18:             TypeVector 6(float) 2
 | |
|               19:     15(int) Constant 2
 | |
|               20:             TypeArray 18(fvec2) 19
 | |
|               21:             TypeInt 32 1
 | |
|       22(Packed):             TypeStruct 13 17 20 6(float) 21(int)
 | |
|               23:             TypePointer Function 22(Packed)
 | |
|               25:     21(int) Constant 0
 | |
|               26:             TypePointer UniformConstant 13
 | |
|          27(tex):     26(ptr) Variable UniformConstant
 | |
|               29:             TypePointer Function 13
 | |
|               31:     21(int) Constant 1
 | |
|               32:    6(float) Constant 0
 | |
|               33:   14(fvec3) ConstantComposite 32 32 32
 | |
|               34:             TypePointer Function 14(fvec3)
 | |
|               36:     21(int) Constant 2
 | |
|               37:    6(float) Constant 1065353216
 | |
|               38:   18(fvec2) ConstantComposite 32 37
 | |
|               39:             TypePointer Function 18(fvec2)
 | |
|               41:     21(int) Constant 3
 | |
|               42:             TypePointer Function 6(float)
 | |
|               44:     21(int) Constant 4
 | |
|               45:             TypePointer Function 21(int)
 | |
|               54:             TypeBool
 | |
|               82:             TypePointer Input 7(fvec4)
 | |
|          83(pos):     82(ptr) Variable Input
 | |
|               85:             TypePointer Output 7(fvec4)
 | |
| 86(@entryPointOutput):     85(ptr) Variable Output
 | |
|          4(main):           2 Function None 3
 | |
|                5:             Label
 | |
|          81(pos):      8(ptr) Variable Function
 | |
|        87(param):      8(ptr) Variable Function
 | |
|               84:    7(fvec4) Load 83(pos)
 | |
|                               Store 81(pos) 84
 | |
|               88:    7(fvec4) Load 81(pos)
 | |
|                               Store 87(param) 88
 | |
|               89:    7(fvec4) FunctionCall 11(@main(vf4;) 87(param)
 | |
|                               Store 86(@entryPointOutput) 89
 | |
|                               Return
 | |
|                               FunctionEnd
 | |
|   11(@main(vf4;):    7(fvec4) Function None 9
 | |
|          10(pos):      8(ptr) FunctionParameter
 | |
|               12:             Label
 | |
|       24(packed):     23(ptr) Variable Function
 | |
|            47(i):     45(ptr) Variable Function
 | |
|      69(packed2):     23(ptr) Variable Function
 | |
|               28:          13 Load 27(tex)
 | |
|               30:     29(ptr) AccessChain 24(packed) 25
 | |
|                               Store 30 28
 | |
|               35:     34(ptr) AccessChain 24(packed) 31 25
 | |
|                               Store 35 33
 | |
|               40:     39(ptr) AccessChain 24(packed) 36 25
 | |
|                               Store 40 38
 | |
|               43:     42(ptr) AccessChain 24(packed) 41
 | |
|                               Store 43 37
 | |
|               46:     45(ptr) AccessChain 24(packed) 44
 | |
|                               Store 46 41
 | |
|                               Store 47(i) 25
 | |
|                               Branch 48
 | |
|               48:             Label
 | |
|                               LoopMerge 50 51 None
 | |
|                               Branch 52
 | |
|               52:             Label
 | |
|               53:     21(int) Load 47(i)
 | |
|               55:    54(bool) SLessThan 53 31
 | |
|                               BranchConditional 55 49 50
 | |
|               49:               Label
 | |
|               56:     21(int)   Load 47(i)
 | |
|               57:     21(int)   Load 47(i)
 | |
|               58:     39(ptr)   AccessChain 24(packed) 36 57
 | |
|               59:   18(fvec2)   Load 58
 | |
|               60:     34(ptr)   AccessChain 24(packed) 31 56
 | |
|               61:   14(fvec3)   Load 60
 | |
|               62:   18(fvec2)   VectorShuffle 61 61 0 1
 | |
|               63:   18(fvec2)   FAdd 62 59
 | |
|               64:     34(ptr)   AccessChain 24(packed) 31 56
 | |
|               65:   14(fvec3)   Load 64
 | |
|               66:   14(fvec3)   VectorShuffle 65 63 3 4 2
 | |
|                                 Store 64 66
 | |
|                                 Branch 51
 | |
|               51:               Label
 | |
|               67:     21(int)   Load 47(i)
 | |
|               68:     21(int)   IAdd 67 31
 | |
|                                 Store 47(i) 68
 | |
|                                 Branch 48
 | |
|               50:             Label
 | |
|               70:  22(Packed) Load 24(packed)
 | |
|                               Store 69(packed2) 70
 | |
|               71:    7(fvec4) Load 10(pos)
 | |
|               72:     34(ptr) AccessChain 69(packed2) 31 25
 | |
|               73:   14(fvec3) Load 72
 | |
|               74:    6(float) CompositeExtract 73 0
 | |
|               75:    6(float) CompositeExtract 73 1
 | |
|               76:    6(float) CompositeExtract 73 2
 | |
|               77:    7(fvec4) CompositeConstruct 74 75 76 32
 | |
|               78:    7(fvec4) FAdd 71 77
 | |
|                               ReturnValue 78
 | |
|                               FunctionEnd
 | 
