527 lines
		
	
	
		
			26 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			527 lines
		
	
	
		
			26 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| hlsl.array.flatten.frag
 | |
| Shader version: 450
 | |
| gl_FragCoord origin is upper left
 | |
| 0:? Sequence
 | |
| 0:17  Function Definition: TestFn1( (temp 4-component vector of float)
 | |
| 0:17    Function Parameters: 
 | |
| 0:?     Sequence
 | |
| 0:18      Branch: Return with expression
 | |
| 0:18        texture (global 4-component vector of float)
 | |
| 0:18          Construct combined texture-sampler (temp sampler1D)
 | |
| 0:?             'g_tex[1]' (uniform texture1D)
 | |
| 0:?             'g_samp[1]' (uniform sampler)
 | |
| 0:18          Constant:
 | |
| 0:18            0.200000
 | |
| 0:22  Function Definition: TestFn2(t11[3];p1[3]; (temp 4-component vector of float)
 | |
| 0:22    Function Parameters: 
 | |
| 0:22      'l_tex' (in 3-element array of texture1D)
 | |
| 0:22      'l_samp' (in 3-element array of sampler)
 | |
| 0:?     Sequence
 | |
| 0:23      Branch: Return with expression
 | |
| 0:23        texture (global 4-component vector of float)
 | |
| 0:23          Construct combined texture-sampler (temp sampler1D)
 | |
| 0:23            direct index (temp texture1D)
 | |
| 0:23              'l_tex' (in 3-element array of texture1D)
 | |
| 0:23              Constant:
 | |
| 0:23                2 (const int)
 | |
| 0:23            direct index (temp sampler)
 | |
| 0:23              'l_samp' (in 3-element array of sampler)
 | |
| 0:23              Constant:
 | |
| 0:23                2 (const int)
 | |
| 0:23          Constant:
 | |
| 0:23            0.200000
 | |
| 0:26  Sequence
 | |
| 0:26    move second child to first child (temp 5-element array of int)
 | |
| 0:26      'not_flattened_a' (global 5-element array of int)
 | |
| 0:26      Constant:
 | |
| 0:26        1 (const int)
 | |
| 0:26        2 (const int)
 | |
| 0:26        3 (const int)
 | |
| 0:26        4 (const int)
 | |
| 0:26        5 (const int)
 | |
| 0:31  Function Definition: main(struct-PS_OUTPUT-vf41; (temp void)
 | |
| 0:31    Function Parameters: 
 | |
| 0:31      'ps_output' (out structure{temp 4-component vector of float color})
 | |
| 0:?     Sequence
 | |
| 0:33      Sequence
 | |
| 0:33        Sequence
 | |
| 0:33          move second child to first child (temp sampler)
 | |
| 0:33            direct index (temp sampler)
 | |
| 0:33              'local_sampler_array' (temp 3-element array of sampler)
 | |
| 0:33              Constant:
 | |
| 0:33                0 (const int)
 | |
| 0:?             'g_samp[0]' (uniform sampler)
 | |
| 0:33          move second child to first child (temp sampler)
 | |
| 0:33            direct index (temp sampler)
 | |
| 0:33              'local_sampler_array' (temp 3-element array of sampler)
 | |
| 0:33              Constant:
 | |
| 0:33                1 (const int)
 | |
| 0:?             'g_samp[1]' (uniform sampler)
 | |
| 0:33          move second child to first child (temp sampler)
 | |
| 0:33            direct index (temp sampler)
 | |
| 0:33              'local_sampler_array' (temp 3-element array of sampler)
 | |
| 0:33              Constant:
 | |
| 0:33                2 (const int)
 | |
| 0:?             'g_samp[2]' (uniform sampler)
 | |
| 0:34      Sequence
 | |
| 0:34        Sequence
 | |
| 0:34          move second child to first child (temp texture1D)
 | |
| 0:34            direct index (temp texture1D)
 | |
| 0:34              'local_texture_array' (temp 3-element array of texture1D)
 | |
| 0:34              Constant:
 | |
| 0:34                0 (const int)
 | |
| 0:?             'g_tex[0]' (uniform texture1D)
 | |
| 0:34          move second child to first child (temp texture1D)
 | |
| 0:34            direct index (temp texture1D)
 | |
| 0:34              'local_texture_array' (temp 3-element array of texture1D)
 | |
| 0:34              Constant:
 | |
| 0:34                1 (const int)
 | |
| 0:?             'g_tex[1]' (uniform texture1D)
 | |
| 0:34          move second child to first child (temp texture1D)
 | |
| 0:34            direct index (temp texture1D)
 | |
| 0:34              'local_texture_array' (temp 3-element array of texture1D)
 | |
| 0:34              Constant:
 | |
| 0:34                2 (const int)
 | |
| 0:?             'g_tex[2]' (uniform texture1D)
 | |
| 0:35      Sequence
 | |
| 0:35        move second child to first child (temp 4-element array of float)
 | |
| 0:35          'local_float_array' (temp 4-element array of float)
 | |
| 0:35          g_floats: direct index for structure (layout(offset=384 ) uniform 4-element array of float)
 | |
| 0:35            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform 4-element array of 3X3 matrix of float g_mats, layout(binding=10 offset=192 ) uniform 4-element array of 3X3 matrix of float g_mats_explicit, layout(offset=384 ) uniform 4-element array of float g_floats})
 | |
| 0:35            Constant:
 | |
| 0:35              2 (const uint)
 | |
| 0:37      move second child to first child (temp 4-component vector of float)
 | |
| 0:?         'color' (layout(location=0 ) out 4-component vector of float)
 | |
| 0:37        add (temp 4-component vector of float)
 | |
| 0:37          Function Call: TestFn1( (temp 4-component vector of float)
 | |
| 0:37          Function Call: TestFn2(t11[3];p1[3]; (temp 4-component vector of float)
 | |
| 0:37            Comma (temp 3-element array of texture1D)
 | |
| 0:37              Sequence
 | |
| 0:37                move second child to first child (temp texture1D)
 | |
| 0:37                  direct index (temp texture1D)
 | |
| 0:37                    'aggShadow' (temp 3-element array of texture1D)
 | |
| 0:37                    Constant:
 | |
| 0:37                      0 (const int)
 | |
| 0:?                   'g_tex[0]' (uniform texture1D)
 | |
| 0:37                move second child to first child (temp texture1D)
 | |
| 0:37                  direct index (temp texture1D)
 | |
| 0:37                    'aggShadow' (temp 3-element array of texture1D)
 | |
| 0:37                    Constant:
 | |
| 0:37                      1 (const int)
 | |
| 0:?                   'g_tex[1]' (uniform texture1D)
 | |
| 0:37                move second child to first child (temp texture1D)
 | |
| 0:37                  direct index (temp texture1D)
 | |
| 0:37                    'aggShadow' (temp 3-element array of texture1D)
 | |
| 0:37                    Constant:
 | |
| 0:37                      2 (const int)
 | |
| 0:?                   'g_tex[2]' (uniform texture1D)
 | |
| 0:37              'aggShadow' (temp 3-element array of texture1D)
 | |
| 0:37            Comma (temp 3-element array of sampler)
 | |
| 0:37              Sequence
 | |
| 0:37                move second child to first child (temp sampler)
 | |
| 0:37                  direct index (temp sampler)
 | |
| 0:37                    'aggShadow' (temp 3-element array of sampler)
 | |
| 0:37                    Constant:
 | |
| 0:37                      0 (const int)
 | |
| 0:?                   'g_samp[0]' (uniform sampler)
 | |
| 0:37                move second child to first child (temp sampler)
 | |
| 0:37                  direct index (temp sampler)
 | |
| 0:37                    'aggShadow' (temp 3-element array of sampler)
 | |
| 0:37                    Constant:
 | |
| 0:37                      1 (const int)
 | |
| 0:?                   'g_samp[1]' (uniform sampler)
 | |
| 0:37                move second child to first child (temp sampler)
 | |
| 0:37                  direct index (temp sampler)
 | |
| 0:37                    'aggShadow' (temp 3-element array of sampler)
 | |
| 0:37                    Constant:
 | |
| 0:37                      2 (const int)
 | |
| 0:?                   'g_samp[2]' (uniform sampler)
 | |
| 0:37              'aggShadow' (temp 3-element array of sampler)
 | |
| 0:?   Linker Objects
 | |
| 0:?     'g_tex[0]' (uniform texture1D)
 | |
| 0:?     'g_tex[1]' (uniform texture1D)
 | |
| 0:?     'g_tex[2]' (uniform texture1D)
 | |
| 0:?     'g_tex_explicit[0]' (layout(binding=1 ) uniform texture1D)
 | |
| 0:?     'g_tex_explicit[1]' (layout(binding=2 ) uniform texture1D)
 | |
| 0:?     'g_tex_explicit[2]' (layout(binding=3 ) uniform texture1D)
 | |
| 0:?     'g_samp[0]' (uniform sampler)
 | |
| 0:?     'g_samp[1]' (uniform sampler)
 | |
| 0:?     'g_samp[2]' (uniform sampler)
 | |
| 0:?     'g_samp_explicit[0]' (layout(binding=5 ) uniform sampler)
 | |
| 0:?     'g_samp_explicit[1]' (layout(binding=6 ) uniform sampler)
 | |
| 0:?     'g_samp_explicit[2]' (layout(binding=7 ) uniform sampler)
 | |
| 0:?     'anon@0' (uniform block{layout(offset=0 ) uniform 4-element array of 3X3 matrix of float g_mats, layout(binding=10 offset=192 ) uniform 4-element array of 3X3 matrix of float g_mats_explicit, layout(offset=384 ) uniform 4-element array of float g_floats})
 | |
| 0:?     'not_flattened_a' (global 5-element array of int)
 | |
| 0:?     'color' (layout(location=0 ) out 4-component vector of float)
 | |
| 
 | |
| 
 | |
| Linked fragment stage:
 | |
| 
 | |
| 
 | |
| Shader version: 450
 | |
| gl_FragCoord origin is upper left
 | |
| 0:? Sequence
 | |
| 0:17  Function Definition: TestFn1( (temp 4-component vector of float)
 | |
| 0:17    Function Parameters: 
 | |
| 0:?     Sequence
 | |
| 0:18      Branch: Return with expression
 | |
| 0:18        texture (global 4-component vector of float)
 | |
| 0:18          Construct combined texture-sampler (temp sampler1D)
 | |
| 0:?             'g_tex[1]' (uniform texture1D)
 | |
| 0:?             'g_samp[1]' (uniform sampler)
 | |
| 0:18          Constant:
 | |
| 0:18            0.200000
 | |
| 0:22  Function Definition: TestFn2(t11[3];p1[3]; (temp 4-component vector of float)
 | |
| 0:22    Function Parameters: 
 | |
| 0:22      'l_tex' (in 3-element array of texture1D)
 | |
| 0:22      'l_samp' (in 3-element array of sampler)
 | |
| 0:?     Sequence
 | |
| 0:23      Branch: Return with expression
 | |
| 0:23        texture (global 4-component vector of float)
 | |
| 0:23          Construct combined texture-sampler (temp sampler1D)
 | |
| 0:23            direct index (temp texture1D)
 | |
| 0:23              'l_tex' (in 3-element array of texture1D)
 | |
| 0:23              Constant:
 | |
| 0:23                2 (const int)
 | |
| 0:23            direct index (temp sampler)
 | |
| 0:23              'l_samp' (in 3-element array of sampler)
 | |
| 0:23              Constant:
 | |
| 0:23                2 (const int)
 | |
| 0:23          Constant:
 | |
| 0:23            0.200000
 | |
| 0:26  Sequence
 | |
| 0:26    move second child to first child (temp 5-element array of int)
 | |
| 0:26      'not_flattened_a' (global 5-element array of int)
 | |
| 0:26      Constant:
 | |
| 0:26        1 (const int)
 | |
| 0:26        2 (const int)
 | |
| 0:26        3 (const int)
 | |
| 0:26        4 (const int)
 | |
| 0:26        5 (const int)
 | |
| 0:31  Function Definition: main(struct-PS_OUTPUT-vf41; (temp void)
 | |
| 0:31    Function Parameters: 
 | |
| 0:31      'ps_output' (out structure{temp 4-component vector of float color})
 | |
| 0:?     Sequence
 | |
| 0:33      Sequence
 | |
| 0:33        Sequence
 | |
| 0:33          move second child to first child (temp sampler)
 | |
| 0:33            direct index (temp sampler)
 | |
| 0:33              'local_sampler_array' (temp 3-element array of sampler)
 | |
| 0:33              Constant:
 | |
| 0:33                0 (const int)
 | |
| 0:?             'g_samp[0]' (uniform sampler)
 | |
| 0:33          move second child to first child (temp sampler)
 | |
| 0:33            direct index (temp sampler)
 | |
| 0:33              'local_sampler_array' (temp 3-element array of sampler)
 | |
| 0:33              Constant:
 | |
| 0:33                1 (const int)
 | |
| 0:?             'g_samp[1]' (uniform sampler)
 | |
| 0:33          move second child to first child (temp sampler)
 | |
| 0:33            direct index (temp sampler)
 | |
| 0:33              'local_sampler_array' (temp 3-element array of sampler)
 | |
| 0:33              Constant:
 | |
| 0:33                2 (const int)
 | |
| 0:?             'g_samp[2]' (uniform sampler)
 | |
| 0:34      Sequence
 | |
| 0:34        Sequence
 | |
| 0:34          move second child to first child (temp texture1D)
 | |
| 0:34            direct index (temp texture1D)
 | |
| 0:34              'local_texture_array' (temp 3-element array of texture1D)
 | |
| 0:34              Constant:
 | |
| 0:34                0 (const int)
 | |
| 0:?             'g_tex[0]' (uniform texture1D)
 | |
| 0:34          move second child to first child (temp texture1D)
 | |
| 0:34            direct index (temp texture1D)
 | |
| 0:34              'local_texture_array' (temp 3-element array of texture1D)
 | |
| 0:34              Constant:
 | |
| 0:34                1 (const int)
 | |
| 0:?             'g_tex[1]' (uniform texture1D)
 | |
| 0:34          move second child to first child (temp texture1D)
 | |
| 0:34            direct index (temp texture1D)
 | |
| 0:34              'local_texture_array' (temp 3-element array of texture1D)
 | |
| 0:34              Constant:
 | |
| 0:34                2 (const int)
 | |
| 0:?             'g_tex[2]' (uniform texture1D)
 | |
| 0:35      Sequence
 | |
| 0:35        move second child to first child (temp 4-element array of float)
 | |
| 0:35          'local_float_array' (temp 4-element array of float)
 | |
| 0:35          g_floats: direct index for structure (layout(offset=384 ) uniform 4-element array of float)
 | |
| 0:35            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform 4-element array of 3X3 matrix of float g_mats, layout(binding=10 offset=192 ) uniform 4-element array of 3X3 matrix of float g_mats_explicit, layout(offset=384 ) uniform 4-element array of float g_floats})
 | |
| 0:35            Constant:
 | |
| 0:35              2 (const uint)
 | |
| 0:37      move second child to first child (temp 4-component vector of float)
 | |
| 0:?         'color' (layout(location=0 ) out 4-component vector of float)
 | |
| 0:37        add (temp 4-component vector of float)
 | |
| 0:37          Function Call: TestFn1( (temp 4-component vector of float)
 | |
| 0:37          Function Call: TestFn2(t11[3];p1[3]; (temp 4-component vector of float)
 | |
| 0:37            Comma (temp 3-element array of texture1D)
 | |
| 0:37              Sequence
 | |
| 0:37                move second child to first child (temp texture1D)
 | |
| 0:37                  direct index (temp texture1D)
 | |
| 0:37                    'aggShadow' (temp 3-element array of texture1D)
 | |
| 0:37                    Constant:
 | |
| 0:37                      0 (const int)
 | |
| 0:?                   'g_tex[0]' (uniform texture1D)
 | |
| 0:37                move second child to first child (temp texture1D)
 | |
| 0:37                  direct index (temp texture1D)
 | |
| 0:37                    'aggShadow' (temp 3-element array of texture1D)
 | |
| 0:37                    Constant:
 | |
| 0:37                      1 (const int)
 | |
| 0:?                   'g_tex[1]' (uniform texture1D)
 | |
| 0:37                move second child to first child (temp texture1D)
 | |
| 0:37                  direct index (temp texture1D)
 | |
| 0:37                    'aggShadow' (temp 3-element array of texture1D)
 | |
| 0:37                    Constant:
 | |
| 0:37                      2 (const int)
 | |
| 0:?                   'g_tex[2]' (uniform texture1D)
 | |
| 0:37              'aggShadow' (temp 3-element array of texture1D)
 | |
| 0:37            Comma (temp 3-element array of sampler)
 | |
| 0:37              Sequence
 | |
| 0:37                move second child to first child (temp sampler)
 | |
| 0:37                  direct index (temp sampler)
 | |
| 0:37                    'aggShadow' (temp 3-element array of sampler)
 | |
| 0:37                    Constant:
 | |
| 0:37                      0 (const int)
 | |
| 0:?                   'g_samp[0]' (uniform sampler)
 | |
| 0:37                move second child to first child (temp sampler)
 | |
| 0:37                  direct index (temp sampler)
 | |
| 0:37                    'aggShadow' (temp 3-element array of sampler)
 | |
| 0:37                    Constant:
 | |
| 0:37                      1 (const int)
 | |
| 0:?                   'g_samp[1]' (uniform sampler)
 | |
| 0:37                move second child to first child (temp sampler)
 | |
| 0:37                  direct index (temp sampler)
 | |
| 0:37                    'aggShadow' (temp 3-element array of sampler)
 | |
| 0:37                    Constant:
 | |
| 0:37                      2 (const int)
 | |
| 0:?                   'g_samp[2]' (uniform sampler)
 | |
| 0:37              'aggShadow' (temp 3-element array of sampler)
 | |
| 0:?   Linker Objects
 | |
| 0:?     'g_tex[0]' (uniform texture1D)
 | |
| 0:?     'g_tex[1]' (uniform texture1D)
 | |
| 0:?     'g_tex[2]' (uniform texture1D)
 | |
| 0:?     'g_tex_explicit[0]' (layout(binding=1 ) uniform texture1D)
 | |
| 0:?     'g_tex_explicit[1]' (layout(binding=2 ) uniform texture1D)
 | |
| 0:?     'g_tex_explicit[2]' (layout(binding=3 ) uniform texture1D)
 | |
| 0:?     'g_samp[0]' (uniform sampler)
 | |
| 0:?     'g_samp[1]' (uniform sampler)
 | |
| 0:?     'g_samp[2]' (uniform sampler)
 | |
| 0:?     'g_samp_explicit[0]' (layout(binding=5 ) uniform sampler)
 | |
| 0:?     'g_samp_explicit[1]' (layout(binding=6 ) uniform sampler)
 | |
| 0:?     'g_samp_explicit[2]' (layout(binding=7 ) uniform sampler)
 | |
| 0:?     'anon@0' (uniform block{layout(offset=0 ) uniform 4-element array of 3X3 matrix of float g_mats, layout(binding=10 offset=192 ) uniform 4-element array of 3X3 matrix of float g_mats_explicit, layout(offset=384 ) uniform 4-element array of float g_floats})
 | |
| 0:?     'not_flattened_a' (global 5-element array of int)
 | |
| 0:?     'color' (layout(location=0 ) out 4-component vector of float)
 | |
| 
 | |
| // Module Version 10000
 | |
| // Generated by (magic number): 80001
 | |
| // Id's are bound by 123
 | |
| 
 | |
|                               Capability Shader
 | |
|                               Capability Sampled1D
 | |
|                1:             ExtInstImport  "GLSL.std.450"
 | |
|                               MemoryModel Logical GLSL450
 | |
|                               EntryPoint Fragment 4  "main" 99
 | |
|                               ExecutionMode 4 OriginUpperLeft
 | |
|                               Name 4  "main"
 | |
|                               Name 9  "TestFn1("
 | |
|                               Name 22  "TestFn2(t11[3];p1[3];"
 | |
|                               Name 20  "l_tex"
 | |
|                               Name 21  "l_samp"
 | |
|                               Name 28  "not_flattened_a"
 | |
|                               Name 36  "g_tex[1]"
 | |
|                               Name 39  "g_samp[1]"
 | |
|                               Name 55  "local_sampler_array"
 | |
|                               Name 57  "g_samp[0]"
 | |
|                               Name 62  "g_samp[2]"
 | |
|                               Name 65  "local_texture_array"
 | |
|                               Name 66  "g_tex[0]"
 | |
|                               Name 71  "g_tex[2]"
 | |
|                               Name 77  "local_float_array"
 | |
|                               Name 83  "$Global"
 | |
|                               MemberName 83($Global) 0  "g_mats"
 | |
|                               MemberName 83($Global) 1  "g_mats_explicit"
 | |
|                               MemberName 83($Global) 2  "g_floats"
 | |
|                               Name 85  ""
 | |
|                               Name 99  "color"
 | |
|                               Name 101  "aggShadow"
 | |
|                               Name 108  "aggShadow"
 | |
|                               Name 117  "g_tex_explicit[0]"
 | |
|                               Name 118  "g_tex_explicit[1]"
 | |
|                               Name 119  "g_tex_explicit[2]"
 | |
|                               Name 120  "g_samp_explicit[0]"
 | |
|                               Name 121  "g_samp_explicit[1]"
 | |
|                               Name 122  "g_samp_explicit[2]"
 | |
|                               Decorate 36(g_tex[1]) DescriptorSet 0
 | |
|                               Decorate 39(g_samp[1]) DescriptorSet 0
 | |
|                               Decorate 57(g_samp[0]) DescriptorSet 0
 | |
|                               Decorate 62(g_samp[2]) DescriptorSet 0
 | |
|                               Decorate 66(g_tex[0]) DescriptorSet 0
 | |
|                               Decorate 71(g_tex[2]) DescriptorSet 0
 | |
|                               Decorate 80 ArrayStride 48
 | |
|                               Decorate 81 ArrayStride 48
 | |
|                               Decorate 82 ArrayStride 16
 | |
|                               MemberDecorate 83($Global) 0 RowMajor
 | |
|                               MemberDecorate 83($Global) 0 Offset 0
 | |
|                               MemberDecorate 83($Global) 0 MatrixStride 16
 | |
|                               MemberDecorate 83($Global) 1 RowMajor
 | |
|                               MemberDecorate 83($Global) 1 Offset 192
 | |
|                               MemberDecorate 83($Global) 1 MatrixStride 16
 | |
|                               MemberDecorate 83($Global) 2 Offset 384
 | |
|                               Decorate 83($Global) Block
 | |
|                               Decorate 85 DescriptorSet 0
 | |
|                               Decorate 99(color) Location 0
 | |
|                               Decorate 117(g_tex_explicit[0]) DescriptorSet 0
 | |
|                               Decorate 117(g_tex_explicit[0]) Binding 1
 | |
|                               Decorate 118(g_tex_explicit[1]) DescriptorSet 0
 | |
|                               Decorate 118(g_tex_explicit[1]) Binding 2
 | |
|                               Decorate 119(g_tex_explicit[2]) DescriptorSet 0
 | |
|                               Decorate 119(g_tex_explicit[2]) Binding 3
 | |
|                               Decorate 120(g_samp_explicit[0]) DescriptorSet 0
 | |
|                               Decorate 120(g_samp_explicit[0]) Binding 5
 | |
|                               Decorate 121(g_samp_explicit[1]) DescriptorSet 0
 | |
|                               Decorate 121(g_samp_explicit[1]) Binding 6
 | |
|                               Decorate 122(g_samp_explicit[2]) DescriptorSet 0
 | |
|                               Decorate 122(g_samp_explicit[2]) Binding 7
 | |
|                2:             TypeVoid
 | |
|                3:             TypeFunction 2
 | |
|                6:             TypeFloat 32
 | |
|                7:             TypeVector 6(float) 4
 | |
|                8:             TypeFunction 7(fvec4)
 | |
|               11:             TypeImage 6(float) 1D sampled format:Unknown
 | |
|               12:             TypeInt 32 0
 | |
|               13:     12(int) Constant 3
 | |
|               14:             TypeArray 11 13
 | |
|               15:             TypePointer UniformConstant 14
 | |
|               16:             TypeSampler
 | |
|               17:             TypeArray 16 13
 | |
|               18:             TypePointer UniformConstant 17
 | |
|               19:             TypeFunction 7(fvec4) 15(ptr) 18(ptr)
 | |
|               24:             TypeInt 32 1
 | |
|               25:     12(int) Constant 5
 | |
|               26:             TypeArray 24(int) 25
 | |
|               27:             TypePointer Private 26
 | |
| 28(not_flattened_a):     27(ptr) Variable Private
 | |
|               29:     24(int) Constant 1
 | |
|               30:     24(int) Constant 2
 | |
|               31:     24(int) Constant 3
 | |
|               32:     24(int) Constant 4
 | |
|               33:     24(int) Constant 5
 | |
|               34:          26 ConstantComposite 29 30 31 32 33
 | |
|               35:             TypePointer UniformConstant 11
 | |
|     36(g_tex[1]):     35(ptr) Variable UniformConstant
 | |
|               38:             TypePointer UniformConstant 16
 | |
|    39(g_samp[1]):     38(ptr) Variable UniformConstant
 | |
|               41:             TypeSampledImage 11
 | |
|               43:    6(float) Constant 1045220557
 | |
| 55(local_sampler_array):     18(ptr) Variable UniformConstant
 | |
|               56:     24(int) Constant 0
 | |
|    57(g_samp[0]):     38(ptr) Variable UniformConstant
 | |
|    62(g_samp[2]):     38(ptr) Variable UniformConstant
 | |
| 65(local_texture_array):     15(ptr) Variable UniformConstant
 | |
|     66(g_tex[0]):     35(ptr) Variable UniformConstant
 | |
|     71(g_tex[2]):     35(ptr) Variable UniformConstant
 | |
|               74:     12(int) Constant 4
 | |
|               75:             TypeArray 6(float) 74
 | |
|               76:             TypePointer Function 75
 | |
|               78:             TypeVector 6(float) 3
 | |
|               79:             TypeMatrix 78(fvec3) 3
 | |
|               80:             TypeArray 79 74
 | |
|               81:             TypeArray 79 74
 | |
|               82:             TypeArray 6(float) 74
 | |
|      83($Global):             TypeStruct 80 81 82
 | |
|               84:             TypePointer Uniform 83($Global)
 | |
|               85:     84(ptr) Variable Uniform
 | |
|               86:             TypePointer Uniform 82
 | |
|               90:             TypePointer Function 6(float)
 | |
|               98:             TypePointer Output 7(fvec4)
 | |
|        99(color):     98(ptr) Variable Output
 | |
|   101(aggShadow):     15(ptr) Variable UniformConstant
 | |
|   108(aggShadow):     18(ptr) Variable UniformConstant
 | |
| 117(g_tex_explicit[0]):     35(ptr) Variable UniformConstant
 | |
| 118(g_tex_explicit[1]):     35(ptr) Variable UniformConstant
 | |
| 119(g_tex_explicit[2]):     35(ptr) Variable UniformConstant
 | |
| 120(g_samp_explicit[0]):     38(ptr) Variable UniformConstant
 | |
| 121(g_samp_explicit[1]):     38(ptr) Variable UniformConstant
 | |
| 122(g_samp_explicit[2]):     38(ptr) Variable UniformConstant
 | |
|          4(main):           2 Function None 3
 | |
|                5:             Label
 | |
| 77(local_float_array):     76(ptr) Variable Function
 | |
|                               Store 28(not_flattened_a) 34
 | |
|               58:          16 Load 57(g_samp[0])
 | |
|               59:     38(ptr) AccessChain 55(local_sampler_array) 56
 | |
|                               Store 59 58
 | |
|               60:          16 Load 39(g_samp[1])
 | |
|               61:     38(ptr) AccessChain 55(local_sampler_array) 29
 | |
|                               Store 61 60
 | |
|               63:          16 Load 62(g_samp[2])
 | |
|               64:     38(ptr) AccessChain 55(local_sampler_array) 30
 | |
|                               Store 64 63
 | |
|               67:          11 Load 66(g_tex[0])
 | |
|               68:     35(ptr) AccessChain 65(local_texture_array) 56
 | |
|                               Store 68 67
 | |
|               69:          11 Load 36(g_tex[1])
 | |
|               70:     35(ptr) AccessChain 65(local_texture_array) 29
 | |
|                               Store 70 69
 | |
|               72:          11 Load 71(g_tex[2])
 | |
|               73:     35(ptr) AccessChain 65(local_texture_array) 30
 | |
|                               Store 73 72
 | |
|               87:     86(ptr) AccessChain 85 30
 | |
|               88:          82 Load 87
 | |
|               89:    6(float) CompositeExtract 88 0
 | |
|               91:     90(ptr) AccessChain 77(local_float_array) 56
 | |
|                               Store 91 89
 | |
|               92:    6(float) CompositeExtract 88 1
 | |
|               93:     90(ptr) AccessChain 77(local_float_array) 29
 | |
|                               Store 93 92
 | |
|               94:    6(float) CompositeExtract 88 2
 | |
|               95:     90(ptr) AccessChain 77(local_float_array) 30
 | |
|                               Store 95 94
 | |
|               96:    6(float) CompositeExtract 88 3
 | |
|               97:     90(ptr) AccessChain 77(local_float_array) 31
 | |
|                               Store 97 96
 | |
|              100:    7(fvec4) FunctionCall 9(TestFn1()
 | |
|              102:          11 Load 66(g_tex[0])
 | |
|              103:     35(ptr) AccessChain 101(aggShadow) 56
 | |
|                               Store 103 102
 | |
|              104:          11 Load 36(g_tex[1])
 | |
|              105:     35(ptr) AccessChain 101(aggShadow) 29
 | |
|                               Store 105 104
 | |
|              106:          11 Load 71(g_tex[2])
 | |
|              107:     35(ptr) AccessChain 101(aggShadow) 30
 | |
|                               Store 107 106
 | |
|              109:          16 Load 57(g_samp[0])
 | |
|              110:     38(ptr) AccessChain 108(aggShadow) 56
 | |
|                               Store 110 109
 | |
|              111:          16 Load 39(g_samp[1])
 | |
|              112:     38(ptr) AccessChain 108(aggShadow) 29
 | |
|                               Store 112 111
 | |
|              113:          16 Load 62(g_samp[2])
 | |
|              114:     38(ptr) AccessChain 108(aggShadow) 30
 | |
|                               Store 114 113
 | |
|              115:    7(fvec4) FunctionCall 22(TestFn2(t11[3];p1[3];) 101(aggShadow) 108(aggShadow)
 | |
|              116:    7(fvec4) FAdd 100 115
 | |
|                               Store 99(color) 116
 | |
|                               Return
 | |
|                               FunctionEnd
 | |
|      9(TestFn1():    7(fvec4) Function None 8
 | |
|               10:             Label
 | |
|               37:          11 Load 36(g_tex[1])
 | |
|               40:          16 Load 39(g_samp[1])
 | |
|               42:          41 SampledImage 37 40
 | |
|               44:    7(fvec4) ImageSampleImplicitLod 42 43
 | |
|                               ReturnValue 44
 | |
|                               FunctionEnd
 | |
| 22(TestFn2(t11[3];p1[3];):    7(fvec4) Function None 19
 | |
|        20(l_tex):     15(ptr) FunctionParameter
 | |
|       21(l_samp):     18(ptr) FunctionParameter
 | |
|               23:             Label
 | |
|               47:     35(ptr) AccessChain 20(l_tex) 30
 | |
|               48:          11 Load 47
 | |
|               49:     38(ptr) AccessChain 21(l_samp) 30
 | |
|               50:          16 Load 49
 | |
|               51:          41 SampledImage 48 50
 | |
|               52:    7(fvec4) ImageSampleImplicitLod 51 43
 | |
|                               ReturnValue 52
 | |
|                               FunctionEnd
 | 
