553 lines
		
	
	
		
			26 KiB
		
	
	
	
		
			Plaintext
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			553 lines
		
	
	
		
			26 KiB
		
	
	
	
		
			Plaintext
		
	
	
		
			Executable File
		
	
	
	
	
| hlsl.implicitBool.frag
 | |
| Shader version: 500
 | |
| gl_FragCoord origin is upper left
 | |
| 0:? Sequence
 | |
| 0:7  Function Definition: @main( ( temp 4-component vector of float)
 | |
| 0:7    Function Parameters: 
 | |
| 0:?     Sequence
 | |
| 0:8      Sequence
 | |
| 0:8        move second child to first child ( temp 4-component vector of float)
 | |
| 0:8          'a' ( temp 4-component vector of float)
 | |
| 0:?           Constant:
 | |
| 0:?             2.000000
 | |
| 0:?             2.000000
 | |
| 0:?             2.000000
 | |
| 0:?             2.000000
 | |
| 0:9      Test condition and select ( temp void)
 | |
| 0:9        Condition
 | |
| 0:9        Convert int to bool ( temp bool)
 | |
| 0:9          condi: direct index for structure ( uniform int)
 | |
| 0:9            'anon@0' (layout( row_major std140) uniform block{ uniform float condf,  uniform int condi,  uniform 1-component vector of float condf1,  uniform 1-component vector of int condi1})
 | |
| 0:9            Constant:
 | |
| 0:9              1 (const uint)
 | |
| 0:9        true case
 | |
| 0:10        Branch: Return with expression
 | |
| 0:10          add ( temp 4-component vector of float)
 | |
| 0:10            'a' ( temp 4-component vector of float)
 | |
| 0:10            Constant:
 | |
| 0:10              1.000000
 | |
| 0:11      Test condition and select ( temp void)
 | |
| 0:11        Condition
 | |
| 0:11        Convert float to bool ( temp bool)
 | |
| 0:11          condf: direct index for structure ( uniform float)
 | |
| 0:11            'anon@0' (layout( row_major std140) uniform block{ uniform float condf,  uniform int condi,  uniform 1-component vector of float condf1,  uniform 1-component vector of int condi1})
 | |
| 0:11            Constant:
 | |
| 0:11              0 (const uint)
 | |
| 0:11        true case
 | |
| 0:12        Branch: Return with expression
 | |
| 0:12          add ( temp 4-component vector of float)
 | |
| 0:12            'a' ( temp 4-component vector of float)
 | |
| 0:12            Constant:
 | |
| 0:12              2.000000
 | |
| 0:13      Test condition and select ( temp void)
 | |
| 0:13        Condition
 | |
| 0:13        Convert float to bool ( temp bool)
 | |
| 0:13          condf1: direct index for structure ( uniform 1-component vector of float)
 | |
| 0:13            'anon@0' (layout( row_major std140) uniform block{ uniform float condf,  uniform int condi,  uniform 1-component vector of float condf1,  uniform 1-component vector of int condi1})
 | |
| 0:13            Constant:
 | |
| 0:13              2 (const uint)
 | |
| 0:13        true case
 | |
| 0:14        Branch: Return with expression
 | |
| 0:14          add ( temp 4-component vector of float)
 | |
| 0:14            'a' ( temp 4-component vector of float)
 | |
| 0:14            Constant:
 | |
| 0:14              3.000000
 | |
| 0:15      Test condition and select ( temp void)
 | |
| 0:15        Condition
 | |
| 0:15        Convert int to bool ( temp bool)
 | |
| 0:15          condi1: direct index for structure ( uniform 1-component vector of int)
 | |
| 0:15            'anon@0' (layout( row_major std140) uniform block{ uniform float condf,  uniform int condi,  uniform 1-component vector of float condf1,  uniform 1-component vector of int condi1})
 | |
| 0:15            Constant:
 | |
| 0:15              3 (const uint)
 | |
| 0:15        true case
 | |
| 0:16        Branch: Return with expression
 | |
| 0:16          add ( temp 4-component vector of float)
 | |
| 0:16            'a' ( temp 4-component vector of float)
 | |
| 0:16            Constant:
 | |
| 0:16              4.000000
 | |
| 0:17      Test condition and select ( temp void)
 | |
| 0:17        Condition
 | |
| 0:17        logical-or ( temp bool)
 | |
| 0:17          logical-and ( temp bool)
 | |
| 0:17            Convert int to bool ( temp bool)
 | |
| 0:17              condi: direct index for structure ( uniform int)
 | |
| 0:17                'anon@0' (layout( row_major std140) uniform block{ uniform float condf,  uniform int condi,  uniform 1-component vector of float condf1,  uniform 1-component vector of int condi1})
 | |
| 0:17                Constant:
 | |
| 0:17                  1 (const uint)
 | |
| 0:17            Convert int to bool ( temp bool)
 | |
| 0:17              Convert float to int ( temp int)
 | |
| 0:17                condf: direct index for structure ( uniform float)
 | |
| 0:17                  'anon@0' (layout( row_major std140) uniform block{ uniform float condf,  uniform int condi,  uniform 1-component vector of float condf1,  uniform 1-component vector of int condi1})
 | |
| 0:17                  Constant:
 | |
| 0:17                    0 (const uint)
 | |
| 0:17          Convert float to bool ( temp bool)
 | |
| 0:17            condf1: direct index for structure ( uniform 1-component vector of float)
 | |
| 0:17              'anon@0' (layout( row_major std140) uniform block{ uniform float condf,  uniform int condi,  uniform 1-component vector of float condf1,  uniform 1-component vector of int condi1})
 | |
| 0:17              Constant:
 | |
| 0:17                2 (const uint)
 | |
| 0:17        true case
 | |
| 0:18        Branch: Return with expression
 | |
| 0:18          add ( temp 4-component vector of float)
 | |
| 0:18            'a' ( temp 4-component vector of float)
 | |
| 0:18            Constant:
 | |
| 0:18              5.000000
 | |
| 0:20      Sequence
 | |
| 0:20        move second child to first child ( temp float)
 | |
| 0:20          'f' ( temp float)
 | |
| 0:20          condf: direct index for structure ( uniform float)
 | |
| 0:20            'anon@0' (layout( row_major std140) uniform block{ uniform float condf,  uniform int condi,  uniform 1-component vector of float condf1,  uniform 1-component vector of int condi1})
 | |
| 0:20            Constant:
 | |
| 0:20              0 (const uint)
 | |
| 0:21      Loop with condition tested first
 | |
| 0:21        Loop Condition
 | |
| 0:21        Convert float to bool ( temp bool)
 | |
| 0:21          'f' ( temp float)
 | |
| 0:21        Loop Body
 | |
| 0:?         Sequence
 | |
| 0:21          Pre-Decrement ( temp float)
 | |
| 0:21            'f' ( temp float)
 | |
| 0:23      Sequence
 | |
| 0:23        move second child to first child ( temp int)
 | |
| 0:23          'i' ( temp int)
 | |
| 0:23          condi: direct index for structure ( uniform int)
 | |
| 0:23            'anon@0' (layout( row_major std140) uniform block{ uniform float condf,  uniform int condi,  uniform 1-component vector of float condf1,  uniform 1-component vector of int condi1})
 | |
| 0:23            Constant:
 | |
| 0:23              1 (const uint)
 | |
| 0:24      Loop with condition not tested first
 | |
| 0:24        Loop Condition
 | |
| 0:24        Convert int to bool ( temp bool)
 | |
| 0:24          'i' ( temp int)
 | |
| 0:24        Loop Body
 | |
| 0:?         Sequence
 | |
| 0:24          Pre-Decrement ( temp int)
 | |
| 0:24            'i' ( temp int)
 | |
| 0:?       Sequence
 | |
| 0:26        Loop with condition tested first
 | |
| 0:26          Loop Condition
 | |
| 0:26          Convert int to bool ( temp bool)
 | |
| 0:26            'i' ( temp int)
 | |
| 0:26          Loop Body
 | |
| 0:?           Sequence
 | |
| 0:26            Pre-Decrement ( temp int)
 | |
| 0:26              'i' ( temp int)
 | |
| 0:28      Sequence
 | |
| 0:28        move second child to first child ( temp float)
 | |
| 0:28          'g' ( temp float)
 | |
| 0:28          Test condition and select ( temp float)
 | |
| 0:28            Condition
 | |
| 0:28            Convert float to bool ( temp bool)
 | |
| 0:28              condf: direct index for structure ( uniform float)
 | |
| 0:28                'anon@0' (layout( row_major std140) uniform block{ uniform float condf,  uniform int condi,  uniform 1-component vector of float condf1,  uniform 1-component vector of int condi1})
 | |
| 0:28                Constant:
 | |
| 0:28                  0 (const uint)
 | |
| 0:28            true case
 | |
| 0:28            Constant:
 | |
| 0:28              7.000000
 | |
| 0:28            false case
 | |
| 0:28            Constant:
 | |
| 0:28              8.000000
 | |
| 0:29      add second child into first child ( temp 4-component vector of float)
 | |
| 0:29        'a' ( temp 4-component vector of float)
 | |
| 0:29        'g' ( temp float)
 | |
| 0:31      Branch: Return with expression
 | |
| 0:31        subtract ( temp 4-component vector of float)
 | |
| 0:31          'a' ( temp 4-component vector of float)
 | |
| 0:31          Constant:
 | |
| 0:31            1.000000
 | |
| 0:7  Function Definition: main( ( temp void)
 | |
| 0:7    Function Parameters: 
 | |
| 0:?     Sequence
 | |
| 0:7      move second child to first child ( temp 4-component vector of float)
 | |
| 0:?         '@entryPointOutput' (layout( location=0) out 4-component vector of float)
 | |
| 0:7        Function Call: @main( ( temp 4-component vector of float)
 | |
| 0:?   Linker Objects
 | |
| 0:?     'anon@0' (layout( row_major std140) uniform block{ uniform float condf,  uniform int condi,  uniform 1-component vector of float condf1,  uniform 1-component vector of int condi1})
 | |
| 0:?     '@entryPointOutput' (layout( location=0) out 4-component vector of float)
 | |
| 
 | |
| 
 | |
| Linked fragment stage:
 | |
| 
 | |
| 
 | |
| Shader version: 500
 | |
| gl_FragCoord origin is upper left
 | |
| 0:? Sequence
 | |
| 0:7  Function Definition: @main( ( temp 4-component vector of float)
 | |
| 0:7    Function Parameters: 
 | |
| 0:?     Sequence
 | |
| 0:8      Sequence
 | |
| 0:8        move second child to first child ( temp 4-component vector of float)
 | |
| 0:8          'a' ( temp 4-component vector of float)
 | |
| 0:?           Constant:
 | |
| 0:?             2.000000
 | |
| 0:?             2.000000
 | |
| 0:?             2.000000
 | |
| 0:?             2.000000
 | |
| 0:9      Test condition and select ( temp void)
 | |
| 0:9        Condition
 | |
| 0:9        Convert int to bool ( temp bool)
 | |
| 0:9          condi: direct index for structure ( uniform int)
 | |
| 0:9            'anon@0' (layout( row_major std140) uniform block{ uniform float condf,  uniform int condi,  uniform 1-component vector of float condf1,  uniform 1-component vector of int condi1})
 | |
| 0:9            Constant:
 | |
| 0:9              1 (const uint)
 | |
| 0:9        true case
 | |
| 0:10        Branch: Return with expression
 | |
| 0:10          add ( temp 4-component vector of float)
 | |
| 0:10            'a' ( temp 4-component vector of float)
 | |
| 0:10            Constant:
 | |
| 0:10              1.000000
 | |
| 0:11      Test condition and select ( temp void)
 | |
| 0:11        Condition
 | |
| 0:11        Convert float to bool ( temp bool)
 | |
| 0:11          condf: direct index for structure ( uniform float)
 | |
| 0:11            'anon@0' (layout( row_major std140) uniform block{ uniform float condf,  uniform int condi,  uniform 1-component vector of float condf1,  uniform 1-component vector of int condi1})
 | |
| 0:11            Constant:
 | |
| 0:11              0 (const uint)
 | |
| 0:11        true case
 | |
| 0:12        Branch: Return with expression
 | |
| 0:12          add ( temp 4-component vector of float)
 | |
| 0:12            'a' ( temp 4-component vector of float)
 | |
| 0:12            Constant:
 | |
| 0:12              2.000000
 | |
| 0:13      Test condition and select ( temp void)
 | |
| 0:13        Condition
 | |
| 0:13        Convert float to bool ( temp bool)
 | |
| 0:13          condf1: direct index for structure ( uniform 1-component vector of float)
 | |
| 0:13            'anon@0' (layout( row_major std140) uniform block{ uniform float condf,  uniform int condi,  uniform 1-component vector of float condf1,  uniform 1-component vector of int condi1})
 | |
| 0:13            Constant:
 | |
| 0:13              2 (const uint)
 | |
| 0:13        true case
 | |
| 0:14        Branch: Return with expression
 | |
| 0:14          add ( temp 4-component vector of float)
 | |
| 0:14            'a' ( temp 4-component vector of float)
 | |
| 0:14            Constant:
 | |
| 0:14              3.000000
 | |
| 0:15      Test condition and select ( temp void)
 | |
| 0:15        Condition
 | |
| 0:15        Convert int to bool ( temp bool)
 | |
| 0:15          condi1: direct index for structure ( uniform 1-component vector of int)
 | |
| 0:15            'anon@0' (layout( row_major std140) uniform block{ uniform float condf,  uniform int condi,  uniform 1-component vector of float condf1,  uniform 1-component vector of int condi1})
 | |
| 0:15            Constant:
 | |
| 0:15              3 (const uint)
 | |
| 0:15        true case
 | |
| 0:16        Branch: Return with expression
 | |
| 0:16          add ( temp 4-component vector of float)
 | |
| 0:16            'a' ( temp 4-component vector of float)
 | |
| 0:16            Constant:
 | |
| 0:16              4.000000
 | |
| 0:17      Test condition and select ( temp void)
 | |
| 0:17        Condition
 | |
| 0:17        logical-or ( temp bool)
 | |
| 0:17          logical-and ( temp bool)
 | |
| 0:17            Convert int to bool ( temp bool)
 | |
| 0:17              condi: direct index for structure ( uniform int)
 | |
| 0:17                'anon@0' (layout( row_major std140) uniform block{ uniform float condf,  uniform int condi,  uniform 1-component vector of float condf1,  uniform 1-component vector of int condi1})
 | |
| 0:17                Constant:
 | |
| 0:17                  1 (const uint)
 | |
| 0:17            Convert int to bool ( temp bool)
 | |
| 0:17              Convert float to int ( temp int)
 | |
| 0:17                condf: direct index for structure ( uniform float)
 | |
| 0:17                  'anon@0' (layout( row_major std140) uniform block{ uniform float condf,  uniform int condi,  uniform 1-component vector of float condf1,  uniform 1-component vector of int condi1})
 | |
| 0:17                  Constant:
 | |
| 0:17                    0 (const uint)
 | |
| 0:17          Convert float to bool ( temp bool)
 | |
| 0:17            condf1: direct index for structure ( uniform 1-component vector of float)
 | |
| 0:17              'anon@0' (layout( row_major std140) uniform block{ uniform float condf,  uniform int condi,  uniform 1-component vector of float condf1,  uniform 1-component vector of int condi1})
 | |
| 0:17              Constant:
 | |
| 0:17                2 (const uint)
 | |
| 0:17        true case
 | |
| 0:18        Branch: Return with expression
 | |
| 0:18          add ( temp 4-component vector of float)
 | |
| 0:18            'a' ( temp 4-component vector of float)
 | |
| 0:18            Constant:
 | |
| 0:18              5.000000
 | |
| 0:20      Sequence
 | |
| 0:20        move second child to first child ( temp float)
 | |
| 0:20          'f' ( temp float)
 | |
| 0:20          condf: direct index for structure ( uniform float)
 | |
| 0:20            'anon@0' (layout( row_major std140) uniform block{ uniform float condf,  uniform int condi,  uniform 1-component vector of float condf1,  uniform 1-component vector of int condi1})
 | |
| 0:20            Constant:
 | |
| 0:20              0 (const uint)
 | |
| 0:21      Loop with condition tested first
 | |
| 0:21        Loop Condition
 | |
| 0:21        Convert float to bool ( temp bool)
 | |
| 0:21          'f' ( temp float)
 | |
| 0:21        Loop Body
 | |
| 0:?         Sequence
 | |
| 0:21          Pre-Decrement ( temp float)
 | |
| 0:21            'f' ( temp float)
 | |
| 0:23      Sequence
 | |
| 0:23        move second child to first child ( temp int)
 | |
| 0:23          'i' ( temp int)
 | |
| 0:23          condi: direct index for structure ( uniform int)
 | |
| 0:23            'anon@0' (layout( row_major std140) uniform block{ uniform float condf,  uniform int condi,  uniform 1-component vector of float condf1,  uniform 1-component vector of int condi1})
 | |
| 0:23            Constant:
 | |
| 0:23              1 (const uint)
 | |
| 0:24      Loop with condition not tested first
 | |
| 0:24        Loop Condition
 | |
| 0:24        Convert int to bool ( temp bool)
 | |
| 0:24          'i' ( temp int)
 | |
| 0:24        Loop Body
 | |
| 0:?         Sequence
 | |
| 0:24          Pre-Decrement ( temp int)
 | |
| 0:24            'i' ( temp int)
 | |
| 0:?       Sequence
 | |
| 0:26        Loop with condition tested first
 | |
| 0:26          Loop Condition
 | |
| 0:26          Convert int to bool ( temp bool)
 | |
| 0:26            'i' ( temp int)
 | |
| 0:26          Loop Body
 | |
| 0:?           Sequence
 | |
| 0:26            Pre-Decrement ( temp int)
 | |
| 0:26              'i' ( temp int)
 | |
| 0:28      Sequence
 | |
| 0:28        move second child to first child ( temp float)
 | |
| 0:28          'g' ( temp float)
 | |
| 0:28          Test condition and select ( temp float)
 | |
| 0:28            Condition
 | |
| 0:28            Convert float to bool ( temp bool)
 | |
| 0:28              condf: direct index for structure ( uniform float)
 | |
| 0:28                'anon@0' (layout( row_major std140) uniform block{ uniform float condf,  uniform int condi,  uniform 1-component vector of float condf1,  uniform 1-component vector of int condi1})
 | |
| 0:28                Constant:
 | |
| 0:28                  0 (const uint)
 | |
| 0:28            true case
 | |
| 0:28            Constant:
 | |
| 0:28              7.000000
 | |
| 0:28            false case
 | |
| 0:28            Constant:
 | |
| 0:28              8.000000
 | |
| 0:29      add second child into first child ( temp 4-component vector of float)
 | |
| 0:29        'a' ( temp 4-component vector of float)
 | |
| 0:29        'g' ( temp float)
 | |
| 0:31      Branch: Return with expression
 | |
| 0:31        subtract ( temp 4-component vector of float)
 | |
| 0:31          'a' ( temp 4-component vector of float)
 | |
| 0:31          Constant:
 | |
| 0:31            1.000000
 | |
| 0:7  Function Definition: main( ( temp void)
 | |
| 0:7    Function Parameters: 
 | |
| 0:?     Sequence
 | |
| 0:7      move second child to first child ( temp 4-component vector of float)
 | |
| 0:?         '@entryPointOutput' (layout( location=0) out 4-component vector of float)
 | |
| 0:7        Function Call: @main( ( temp 4-component vector of float)
 | |
| 0:?   Linker Objects
 | |
| 0:?     'anon@0' (layout( row_major std140) uniform block{ uniform float condf,  uniform int condi,  uniform 1-component vector of float condf1,  uniform 1-component vector of int condi1})
 | |
| 0:?     '@entryPointOutput' (layout( location=0) out 4-component vector of float)
 | |
| 
 | |
| // Module Version 10000
 | |
| // Generated by (magic number): 80001
 | |
| // Id's are bound by 145
 | |
| 
 | |
|                               Capability Shader
 | |
|                1:             ExtInstImport  "GLSL.std.450"
 | |
|                               MemoryModel Logical GLSL450
 | |
|                               EntryPoint Fragment 4  "main" 143
 | |
|                               ExecutionMode 4 OriginUpperLeft
 | |
|                               Source HLSL 500
 | |
|                               Name 4  "main"
 | |
|                               Name 9  "@main("
 | |
|                               Name 12  "a"
 | |
|                               Name 16  "$Global"
 | |
|                               MemberName 16($Global) 0  "condf"
 | |
|                               MemberName 16($Global) 1  "condi"
 | |
|                               MemberName 16($Global) 2  "condf1"
 | |
|                               MemberName 16($Global) 3  "condi1"
 | |
|                               Name 18  ""
 | |
|                               Name 93  "f"
 | |
|                               Name 106  "i"
 | |
|                               Name 126  "g"
 | |
|                               Name 143  "@entryPointOutput"
 | |
|                               MemberDecorate 16($Global) 0 Offset 0
 | |
|                               MemberDecorate 16($Global) 1 Offset 4
 | |
|                               MemberDecorate 16($Global) 2 Offset 8
 | |
|                               MemberDecorate 16($Global) 3 Offset 12
 | |
|                               Decorate 16($Global) Block
 | |
|                               Decorate 18 DescriptorSet 0
 | |
|                               Decorate 143(@entryPointOutput) Location 0
 | |
|                2:             TypeVoid
 | |
|                3:             TypeFunction 2
 | |
|                6:             TypeFloat 32
 | |
|                7:             TypeVector 6(float) 4
 | |
|                8:             TypeFunction 7(fvec4)
 | |
|               11:             TypePointer Function 7(fvec4)
 | |
|               13:    6(float) Constant 1073741824
 | |
|               14:    7(fvec4) ConstantComposite 13 13 13 13
 | |
|               15:             TypeInt 32 1
 | |
|      16($Global):             TypeStruct 6(float) 15(int) 6(float) 15(int)
 | |
|               17:             TypePointer Uniform 16($Global)
 | |
|               18:     17(ptr) Variable Uniform
 | |
|               19:     15(int) Constant 1
 | |
|               20:             TypePointer Uniform 15(int)
 | |
|               23:             TypeBool
 | |
|               24:             TypeInt 32 0
 | |
|               25:     24(int) Constant 0
 | |
|               30:    6(float) Constant 1065353216
 | |
|               34:     15(int) Constant 0
 | |
|               35:             TypePointer Uniform 6(float)
 | |
|               38:    6(float) Constant 0
 | |
|               46:     15(int) Constant 2
 | |
|               53:    6(float) Constant 1077936128
 | |
|               57:     15(int) Constant 3
 | |
|               64:    6(float) Constant 1082130432
 | |
|               88:    6(float) Constant 1084227584
 | |
|               92:             TypePointer Function 6(float)
 | |
|              105:             TypePointer Function 15(int)
 | |
|              130:    6(float) Constant 1088421888
 | |
|              131:    6(float) Constant 1090519040
 | |
|              142:             TypePointer Output 7(fvec4)
 | |
| 143(@entryPointOutput):    142(ptr) Variable Output
 | |
|          4(main):           2 Function None 3
 | |
|                5:             Label
 | |
|              144:    7(fvec4) FunctionCall 9(@main()
 | |
|                               Store 143(@entryPointOutput) 144
 | |
|                               Return
 | |
|                               FunctionEnd
 | |
|        9(@main():    7(fvec4) Function None 8
 | |
|               10:             Label
 | |
|            12(a):     11(ptr) Variable Function
 | |
|            93(f):     92(ptr) Variable Function
 | |
|           106(i):    105(ptr) Variable Function
 | |
|           126(g):     92(ptr) Variable Function
 | |
|                               Store 12(a) 14
 | |
|               21:     20(ptr) AccessChain 18 19
 | |
|               22:     15(int) Load 21
 | |
|               26:    23(bool) INotEqual 22 25
 | |
|                               SelectionMerge 28 None
 | |
|                               BranchConditional 26 27 28
 | |
|               27:               Label
 | |
|               29:    7(fvec4)   Load 12(a)
 | |
|               31:    7(fvec4)   CompositeConstruct 30 30 30 30
 | |
|               32:    7(fvec4)   FAdd 29 31
 | |
|                                 ReturnValue 32
 | |
|               28:             Label
 | |
|               36:     35(ptr) AccessChain 18 34
 | |
|               37:    6(float) Load 36
 | |
|               39:    23(bool) FOrdNotEqual 37 38
 | |
|                               SelectionMerge 41 None
 | |
|                               BranchConditional 39 40 41
 | |
|               40:               Label
 | |
|               42:    7(fvec4)   Load 12(a)
 | |
|               43:    7(fvec4)   CompositeConstruct 13 13 13 13
 | |
|               44:    7(fvec4)   FAdd 42 43
 | |
|                                 ReturnValue 44
 | |
|               41:             Label
 | |
|               47:     35(ptr) AccessChain 18 46
 | |
|               48:    6(float) Load 47
 | |
|               49:    23(bool) FOrdNotEqual 48 38
 | |
|                               SelectionMerge 51 None
 | |
|                               BranchConditional 49 50 51
 | |
|               50:               Label
 | |
|               52:    7(fvec4)   Load 12(a)
 | |
|               54:    7(fvec4)   CompositeConstruct 53 53 53 53
 | |
|               55:    7(fvec4)   FAdd 52 54
 | |
|                                 ReturnValue 55
 | |
|               51:             Label
 | |
|               58:     20(ptr) AccessChain 18 57
 | |
|               59:     15(int) Load 58
 | |
|               60:    23(bool) INotEqual 59 25
 | |
|                               SelectionMerge 62 None
 | |
|                               BranchConditional 60 61 62
 | |
|               61:               Label
 | |
|               63:    7(fvec4)   Load 12(a)
 | |
|               65:    7(fvec4)   CompositeConstruct 64 64 64 64
 | |
|               66:    7(fvec4)   FAdd 63 65
 | |
|                                 ReturnValue 66
 | |
|               62:             Label
 | |
|               68:     20(ptr) AccessChain 18 19
 | |
|               69:     15(int) Load 68
 | |
|               70:    23(bool) INotEqual 69 25
 | |
|                               SelectionMerge 72 None
 | |
|                               BranchConditional 70 71 72
 | |
|               71:               Label
 | |
|               73:     35(ptr)   AccessChain 18 34
 | |
|               74:    6(float)   Load 73
 | |
|               75:     15(int)   ConvertFToS 74
 | |
|               76:    23(bool)   INotEqual 75 25
 | |
|                                 Branch 72
 | |
|               72:             Label
 | |
|               77:    23(bool) Phi 70 62 76 71
 | |
|               78:    23(bool) LogicalNot 77
 | |
|                               SelectionMerge 80 None
 | |
|                               BranchConditional 78 79 80
 | |
|               79:               Label
 | |
|               81:     35(ptr)   AccessChain 18 46
 | |
|               82:    6(float)   Load 81
 | |
|               83:    23(bool)   FOrdNotEqual 82 38
 | |
|                                 Branch 80
 | |
|               80:             Label
 | |
|               84:    23(bool) Phi 77 72 83 79
 | |
|                               SelectionMerge 86 None
 | |
|                               BranchConditional 84 85 86
 | |
|               85:               Label
 | |
|               87:    7(fvec4)   Load 12(a)
 | |
|               89:    7(fvec4)   CompositeConstruct 88 88 88 88
 | |
|               90:    7(fvec4)   FAdd 87 89
 | |
|                                 ReturnValue 90
 | |
|               86:             Label
 | |
|               94:     35(ptr) AccessChain 18 34
 | |
|               95:    6(float) Load 94
 | |
|                               Store 93(f) 95
 | |
|                               Branch 96
 | |
|               96:             Label
 | |
|                               LoopMerge 98 99 None
 | |
|                               Branch 100
 | |
|              100:             Label
 | |
|              101:    6(float) Load 93(f)
 | |
|              102:    23(bool) FOrdNotEqual 101 38
 | |
|                               BranchConditional 102 97 98
 | |
|               97:               Label
 | |
|              103:    6(float)   Load 93(f)
 | |
|              104:    6(float)   FSub 103 30
 | |
|                                 Store 93(f) 104
 | |
|                                 Branch 99
 | |
|               99:               Label
 | |
|                                 Branch 96
 | |
|               98:             Label
 | |
|              107:     20(ptr) AccessChain 18 19
 | |
|              108:     15(int) Load 107
 | |
|                               Store 106(i) 108
 | |
|                               Branch 109
 | |
|              109:             Label
 | |
|                               LoopMerge 111 112 None
 | |
|                               Branch 110
 | |
|              110:             Label
 | |
|              113:     15(int) Load 106(i)
 | |
|              114:     15(int) ISub 113 19
 | |
|                               Store 106(i) 114
 | |
|                               Branch 112
 | |
|              112:             Label
 | |
|              115:     15(int) Load 106(i)
 | |
|              116:    23(bool) INotEqual 115 25
 | |
|                               BranchConditional 116 109 111
 | |
|              111:             Label
 | |
|                               Branch 117
 | |
|              117:             Label
 | |
|                               LoopMerge 119 120 None
 | |
|                               Branch 121
 | |
|              121:             Label
 | |
|              122:     15(int) Load 106(i)
 | |
|              123:    23(bool) INotEqual 122 25
 | |
|                               BranchConditional 123 118 119
 | |
|              118:               Label
 | |
|              124:     15(int)   Load 106(i)
 | |
|              125:     15(int)   ISub 124 19
 | |
|                                 Store 106(i) 125
 | |
|                                 Branch 120
 | |
|              120:               Label
 | |
|                                 Branch 117
 | |
|              119:             Label
 | |
|              127:     35(ptr) AccessChain 18 34
 | |
|              128:    6(float) Load 127
 | |
|              129:    23(bool) FOrdNotEqual 128 38
 | |
|              132:    6(float) Select 129 130 131
 | |
|                               Store 126(g) 132
 | |
|              133:    6(float) Load 126(g)
 | |
|              134:    7(fvec4) Load 12(a)
 | |
|              135:    7(fvec4) CompositeConstruct 133 133 133 133
 | |
|              136:    7(fvec4) FAdd 134 135
 | |
|                               Store 12(a) 136
 | |
|              137:    7(fvec4) Load 12(a)
 | |
|              138:    7(fvec4) CompositeConstruct 30 30 30 30
 | |
|              139:    7(fvec4) FSub 137 138
 | |
|                               ReturnValue 139
 | |
|                               FunctionEnd
 | 
