470 lines
		
	
	
		
			18 KiB
		
	
	
	
		
			Plaintext
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			470 lines
		
	
	
		
			18 KiB
		
	
	
	
		
			Plaintext
		
	
	
		
			Executable File
		
	
	
	
	
| hlsl.switch.frag
 | |
| Shader version: 500
 | |
| gl_FragCoord origin is upper left
 | |
| 0:? Sequence
 | |
| 0:2  Function Definition: @PixelShaderFunction(vf4;i1;i1; ( temp 4-component vector of float)
 | |
| 0:2    Function Parameters: 
 | |
| 0:2      'input' ( in 4-component vector of float)
 | |
| 0:2      'c' ( in int)
 | |
| 0:2      'd' ( in int)
 | |
| 0:?     Sequence
 | |
| 0:3      'c' ( in int)
 | |
| 0:7      switch
 | |
| 0:7      condition
 | |
| 0:7        'c' ( in int)
 | |
| 0:7      body
 | |
| 0:7        Sequence
 | |
| 0:9          default: 
 | |
| 0:7          Sequence
 | |
| 0:7            Branch: Break
 | |
| 0:12      switch
 | |
| 0:12      condition
 | |
| 0:12        'c' ( in int)
 | |
| 0:12      body
 | |
| 0:12        Sequence
 | |
| 0:13          case:  with expression
 | |
| 0:13            Constant:
 | |
| 0:13              1 (const int)
 | |
| 0:?           Sequence
 | |
| 0:14            Pre-Increment ( temp 4-component vector of float)
 | |
| 0:14              'input' ( in 4-component vector of float)
 | |
| 0:15            Branch: Break
 | |
| 0:16          case:  with expression
 | |
| 0:16            Constant:
 | |
| 0:16              2 (const int)
 | |
| 0:?           Sequence
 | |
| 0:17            Pre-Decrement ( temp 4-component vector of float)
 | |
| 0:17              'input' ( in 4-component vector of float)
 | |
| 0:18            Branch: Break
 | |
| 0:21      switch
 | |
| 0:21      condition
 | |
| 0:21        'c' ( in int)
 | |
| 0:21      body
 | |
| 0:21        Sequence
 | |
| 0:22          case:  with expression
 | |
| 0:22            Constant:
 | |
| 0:22              1 (const int)
 | |
| 0:?           Sequence
 | |
| 0:23            Pre-Increment ( temp 4-component vector of float)
 | |
| 0:23              'input' ( in 4-component vector of float)
 | |
| 0:24            Branch: Break
 | |
| 0:25          case:  with expression
 | |
| 0:25            Constant:
 | |
| 0:25              2 (const int)
 | |
| 0:?           Sequence
 | |
| 0:26            switch
 | |
| 0:26            condition
 | |
| 0:26              'd' ( in int)
 | |
| 0:26            body
 | |
| 0:26              Sequence
 | |
| 0:27                case:  with expression
 | |
| 0:27                  Constant:
 | |
| 0:27                    2 (const int)
 | |
| 0:?                 Sequence
 | |
| 0:28                  add second child into first child ( temp 4-component vector of float)
 | |
| 0:28                    'input' ( in 4-component vector of float)
 | |
| 0:28                    Constant:
 | |
| 0:28                      2.000000
 | |
| 0:29                  Branch: Break
 | |
| 0:30                case:  with expression
 | |
| 0:30                  Constant:
 | |
| 0:30                    3 (const int)
 | |
| 0:?                 Sequence
 | |
| 0:31                  add second child into first child ( temp 4-component vector of float)
 | |
| 0:31                    'input' ( in 4-component vector of float)
 | |
| 0:31                    Constant:
 | |
| 0:31                      3.000000
 | |
| 0:32                  Branch: Break
 | |
| 0:34            Branch: Break
 | |
| 0:35          default: 
 | |
| 0:?           Sequence
 | |
| 0:36            add second child into first child ( temp 4-component vector of float)
 | |
| 0:36              'input' ( in 4-component vector of float)
 | |
| 0:36              Constant:
 | |
| 0:36                4.000000
 | |
| 0:39      switch
 | |
| 0:39      condition
 | |
| 0:39        'c' ( in int)
 | |
| 0:39      body
 | |
| 0:39        Sequence
 | |
| 0:40          case:  with expression
 | |
| 0:40            Constant:
 | |
| 0:40              1 (const int)
 | |
| 0:39          Sequence
 | |
| 0:39            Branch: Break
 | |
| 0:43      switch
 | |
| 0:43      condition
 | |
| 0:43        'c' ( in int)
 | |
| 0:43      body
 | |
| 0:43        Sequence
 | |
| 0:44          case:  with expression
 | |
| 0:44            Constant:
 | |
| 0:44              1 (const int)
 | |
| 0:45          case:  with expression
 | |
| 0:45            Constant:
 | |
| 0:45              2 (const int)
 | |
| 0:46          case:  with expression
 | |
| 0:46            Constant:
 | |
| 0:46              3 (const int)
 | |
| 0:?           Sequence
 | |
| 0:47            Pre-Increment ( temp 4-component vector of float)
 | |
| 0:47              'input' ( in 4-component vector of float)
 | |
| 0:48            Branch: Break
 | |
| 0:49          case:  with expression
 | |
| 0:49            Constant:
 | |
| 0:49              4 (const int)
 | |
| 0:50          case:  with expression
 | |
| 0:50            Constant:
 | |
| 0:50              5 (const int)
 | |
| 0:?           Sequence
 | |
| 0:51            Pre-Decrement ( temp 4-component vector of float)
 | |
| 0:51              'input' ( in 4-component vector of float)
 | |
| 0:54      Branch: Return with expression
 | |
| 0:54        'input' ( in 4-component vector of float)
 | |
| 0:2  Function Definition: PixelShaderFunction( ( temp void)
 | |
| 0:2    Function Parameters: 
 | |
| 0:?     Sequence
 | |
| 0:2      move second child to first child ( temp 4-component vector of float)
 | |
| 0:?         'input' ( temp 4-component vector of float)
 | |
| 0:?         'input' (layout( location=0) in 4-component vector of float)
 | |
| 0:2      move second child to first child ( temp int)
 | |
| 0:?         'c' ( temp int)
 | |
| 0:?         'c' (layout( location=1) flat in int)
 | |
| 0:2      move second child to first child ( temp int)
 | |
| 0:?         'd' ( temp int)
 | |
| 0:?         'd' (layout( location=2) flat in int)
 | |
| 0:2      move second child to first child ( temp 4-component vector of float)
 | |
| 0:?         '@entryPointOutput' (layout( location=0) out 4-component vector of float)
 | |
| 0:2        Function Call: @PixelShaderFunction(vf4;i1;i1; ( temp 4-component vector of float)
 | |
| 0:?           'input' ( temp 4-component vector of float)
 | |
| 0:?           'c' ( temp int)
 | |
| 0:?           'd' ( temp int)
 | |
| 0:?   Linker Objects
 | |
| 0:?     '@entryPointOutput' (layout( location=0) out 4-component vector of float)
 | |
| 0:?     'input' (layout( location=0) in 4-component vector of float)
 | |
| 0:?     'c' (layout( location=1) flat in int)
 | |
| 0:?     'd' (layout( location=2) flat in int)
 | |
| 
 | |
| 
 | |
| Linked fragment stage:
 | |
| 
 | |
| 
 | |
| Shader version: 500
 | |
| gl_FragCoord origin is upper left
 | |
| 0:? Sequence
 | |
| 0:2  Function Definition: @PixelShaderFunction(vf4;i1;i1; ( temp 4-component vector of float)
 | |
| 0:2    Function Parameters: 
 | |
| 0:2      'input' ( in 4-component vector of float)
 | |
| 0:2      'c' ( in int)
 | |
| 0:2      'd' ( in int)
 | |
| 0:?     Sequence
 | |
| 0:3      'c' ( in int)
 | |
| 0:7      switch
 | |
| 0:7      condition
 | |
| 0:7        'c' ( in int)
 | |
| 0:7      body
 | |
| 0:7        Sequence
 | |
| 0:9          default: 
 | |
| 0:7          Sequence
 | |
| 0:7            Branch: Break
 | |
| 0:12      switch
 | |
| 0:12      condition
 | |
| 0:12        'c' ( in int)
 | |
| 0:12      body
 | |
| 0:12        Sequence
 | |
| 0:13          case:  with expression
 | |
| 0:13            Constant:
 | |
| 0:13              1 (const int)
 | |
| 0:?           Sequence
 | |
| 0:14            Pre-Increment ( temp 4-component vector of float)
 | |
| 0:14              'input' ( in 4-component vector of float)
 | |
| 0:15            Branch: Break
 | |
| 0:16          case:  with expression
 | |
| 0:16            Constant:
 | |
| 0:16              2 (const int)
 | |
| 0:?           Sequence
 | |
| 0:17            Pre-Decrement ( temp 4-component vector of float)
 | |
| 0:17              'input' ( in 4-component vector of float)
 | |
| 0:18            Branch: Break
 | |
| 0:21      switch
 | |
| 0:21      condition
 | |
| 0:21        'c' ( in int)
 | |
| 0:21      body
 | |
| 0:21        Sequence
 | |
| 0:22          case:  with expression
 | |
| 0:22            Constant:
 | |
| 0:22              1 (const int)
 | |
| 0:?           Sequence
 | |
| 0:23            Pre-Increment ( temp 4-component vector of float)
 | |
| 0:23              'input' ( in 4-component vector of float)
 | |
| 0:24            Branch: Break
 | |
| 0:25          case:  with expression
 | |
| 0:25            Constant:
 | |
| 0:25              2 (const int)
 | |
| 0:?           Sequence
 | |
| 0:26            switch
 | |
| 0:26            condition
 | |
| 0:26              'd' ( in int)
 | |
| 0:26            body
 | |
| 0:26              Sequence
 | |
| 0:27                case:  with expression
 | |
| 0:27                  Constant:
 | |
| 0:27                    2 (const int)
 | |
| 0:?                 Sequence
 | |
| 0:28                  add second child into first child ( temp 4-component vector of float)
 | |
| 0:28                    'input' ( in 4-component vector of float)
 | |
| 0:28                    Constant:
 | |
| 0:28                      2.000000
 | |
| 0:29                  Branch: Break
 | |
| 0:30                case:  with expression
 | |
| 0:30                  Constant:
 | |
| 0:30                    3 (const int)
 | |
| 0:?                 Sequence
 | |
| 0:31                  add second child into first child ( temp 4-component vector of float)
 | |
| 0:31                    'input' ( in 4-component vector of float)
 | |
| 0:31                    Constant:
 | |
| 0:31                      3.000000
 | |
| 0:32                  Branch: Break
 | |
| 0:34            Branch: Break
 | |
| 0:35          default: 
 | |
| 0:?           Sequence
 | |
| 0:36            add second child into first child ( temp 4-component vector of float)
 | |
| 0:36              'input' ( in 4-component vector of float)
 | |
| 0:36              Constant:
 | |
| 0:36                4.000000
 | |
| 0:39      switch
 | |
| 0:39      condition
 | |
| 0:39        'c' ( in int)
 | |
| 0:39      body
 | |
| 0:39        Sequence
 | |
| 0:40          case:  with expression
 | |
| 0:40            Constant:
 | |
| 0:40              1 (const int)
 | |
| 0:39          Sequence
 | |
| 0:39            Branch: Break
 | |
| 0:43      switch
 | |
| 0:43      condition
 | |
| 0:43        'c' ( in int)
 | |
| 0:43      body
 | |
| 0:43        Sequence
 | |
| 0:44          case:  with expression
 | |
| 0:44            Constant:
 | |
| 0:44              1 (const int)
 | |
| 0:45          case:  with expression
 | |
| 0:45            Constant:
 | |
| 0:45              2 (const int)
 | |
| 0:46          case:  with expression
 | |
| 0:46            Constant:
 | |
| 0:46              3 (const int)
 | |
| 0:?           Sequence
 | |
| 0:47            Pre-Increment ( temp 4-component vector of float)
 | |
| 0:47              'input' ( in 4-component vector of float)
 | |
| 0:48            Branch: Break
 | |
| 0:49          case:  with expression
 | |
| 0:49            Constant:
 | |
| 0:49              4 (const int)
 | |
| 0:50          case:  with expression
 | |
| 0:50            Constant:
 | |
| 0:50              5 (const int)
 | |
| 0:?           Sequence
 | |
| 0:51            Pre-Decrement ( temp 4-component vector of float)
 | |
| 0:51              'input' ( in 4-component vector of float)
 | |
| 0:54      Branch: Return with expression
 | |
| 0:54        'input' ( in 4-component vector of float)
 | |
| 0:2  Function Definition: PixelShaderFunction( ( temp void)
 | |
| 0:2    Function Parameters: 
 | |
| 0:?     Sequence
 | |
| 0:2      move second child to first child ( temp 4-component vector of float)
 | |
| 0:?         'input' ( temp 4-component vector of float)
 | |
| 0:?         'input' (layout( location=0) in 4-component vector of float)
 | |
| 0:2      move second child to first child ( temp int)
 | |
| 0:?         'c' ( temp int)
 | |
| 0:?         'c' (layout( location=1) flat in int)
 | |
| 0:2      move second child to first child ( temp int)
 | |
| 0:?         'd' ( temp int)
 | |
| 0:?         'd' (layout( location=2) flat in int)
 | |
| 0:2      move second child to first child ( temp 4-component vector of float)
 | |
| 0:?         '@entryPointOutput' (layout( location=0) out 4-component vector of float)
 | |
| 0:2        Function Call: @PixelShaderFunction(vf4;i1;i1; ( temp 4-component vector of float)
 | |
| 0:?           'input' ( temp 4-component vector of float)
 | |
| 0:?           'c' ( temp int)
 | |
| 0:?           'd' ( temp int)
 | |
| 0:?   Linker Objects
 | |
| 0:?     '@entryPointOutput' (layout( location=0) out 4-component vector of float)
 | |
| 0:?     'input' (layout( location=0) in 4-component vector of float)
 | |
| 0:?     'c' (layout( location=1) flat in int)
 | |
| 0:?     'd' (layout( location=2) flat in int)
 | |
| 
 | |
| // Module Version 10000
 | |
| // Generated by (magic number): 80002
 | |
| // Id's are bound by 106
 | |
| 
 | |
|                               Capability Shader
 | |
|                1:             ExtInstImport  "GLSL.std.450"
 | |
|                               MemoryModel Logical GLSL450
 | |
|                               EntryPoint Fragment 4  "PixelShaderFunction" 88 92 95 98
 | |
|                               ExecutionMode 4 OriginUpperLeft
 | |
|                               Source HLSL 500
 | |
|                               Name 4  "PixelShaderFunction"
 | |
|                               Name 15  "@PixelShaderFunction(vf4;i1;i1;"
 | |
|                               Name 12  "input"
 | |
|                               Name 13  "c"
 | |
|                               Name 14  "d"
 | |
|                               Name 86  "input"
 | |
|                               Name 88  "input"
 | |
|                               Name 90  "c"
 | |
|                               Name 92  "c"
 | |
|                               Name 94  "d"
 | |
|                               Name 95  "d"
 | |
|                               Name 98  "@entryPointOutput"
 | |
|                               Name 99  "param"
 | |
|                               Name 101  "param"
 | |
|                               Name 103  "param"
 | |
|                               Decorate 88(input) Location 0
 | |
|                               Decorate 92(c) Flat
 | |
|                               Decorate 92(c) Location 1
 | |
|                               Decorate 95(d) Flat
 | |
|                               Decorate 95(d) Location 2
 | |
|                               Decorate 98(@entryPointOutput) Location 0
 | |
|                2:             TypeVoid
 | |
|                3:             TypeFunction 2
 | |
|                6:             TypeFloat 32
 | |
|                7:             TypeVector 6(float) 4
 | |
|                8:             TypePointer Function 7(fvec4)
 | |
|                9:             TypeInt 32 1
 | |
|               10:             TypePointer Function 9(int)
 | |
|               11:             TypeFunction 7(fvec4) 8(ptr) 10(ptr) 10(ptr)
 | |
|               27:    6(float) Constant 1065353216
 | |
|               49:    6(float) Constant 1073741824
 | |
|               54:    6(float) Constant 1077936128
 | |
|               61:    6(float) Constant 1082130432
 | |
|               87:             TypePointer Input 7(fvec4)
 | |
|        88(input):     87(ptr) Variable Input
 | |
|               91:             TypePointer Input 9(int)
 | |
|            92(c):     91(ptr) Variable Input
 | |
|            95(d):     91(ptr) Variable Input
 | |
|               97:             TypePointer Output 7(fvec4)
 | |
| 98(@entryPointOutput):     97(ptr) Variable Output
 | |
| 4(PixelShaderFunction):           2 Function None 3
 | |
|                5:             Label
 | |
|        86(input):      8(ptr) Variable Function
 | |
|            90(c):     10(ptr) Variable Function
 | |
|            94(d):     10(ptr) Variable Function
 | |
|        99(param):      8(ptr) Variable Function
 | |
|       101(param):     10(ptr) Variable Function
 | |
|       103(param):     10(ptr) Variable Function
 | |
|               89:    7(fvec4) Load 88(input)
 | |
|                               Store 86(input) 89
 | |
|               93:      9(int) Load 92(c)
 | |
|                               Store 90(c) 93
 | |
|               96:      9(int) Load 95(d)
 | |
|                               Store 94(d) 96
 | |
|              100:    7(fvec4) Load 86(input)
 | |
|                               Store 99(param) 100
 | |
|              102:      9(int) Load 90(c)
 | |
|                               Store 101(param) 102
 | |
|              104:      9(int) Load 94(d)
 | |
|                               Store 103(param) 104
 | |
|              105:    7(fvec4) FunctionCall 15(@PixelShaderFunction(vf4;i1;i1;) 99(param) 101(param) 103(param)
 | |
|                               Store 98(@entryPointOutput) 105
 | |
|                               Return
 | |
|                               FunctionEnd
 | |
| 15(@PixelShaderFunction(vf4;i1;i1;):    7(fvec4) Function None 11
 | |
|        12(input):      8(ptr) FunctionParameter
 | |
|            13(c):     10(ptr) FunctionParameter
 | |
|            14(d):     10(ptr) FunctionParameter
 | |
|               16:             Label
 | |
|               17:      9(int) Load 13(c)
 | |
|                               SelectionMerge 19 None
 | |
|                               Switch 17 18
 | |
|               18:               Label
 | |
|                                 Branch 19
 | |
|               19:             Label
 | |
|               22:      9(int) Load 13(c)
 | |
|                               SelectionMerge 25 None
 | |
|                               Switch 22 25 
 | |
|                                      case 1: 23
 | |
|                                      case 2: 24
 | |
|               23:               Label
 | |
|               26:    7(fvec4)   Load 12(input)
 | |
|               28:    7(fvec4)   CompositeConstruct 27 27 27 27
 | |
|               29:    7(fvec4)   FAdd 26 28
 | |
|                                 Store 12(input) 29
 | |
|                                 Branch 25
 | |
|               24:               Label
 | |
|               31:    7(fvec4)   Load 12(input)
 | |
|               32:    7(fvec4)   CompositeConstruct 27 27 27 27
 | |
|               33:    7(fvec4)   FSub 31 32
 | |
|                                 Store 12(input) 33
 | |
|                                 Branch 25
 | |
|               25:             Label
 | |
|               36:      9(int) Load 13(c)
 | |
|                               SelectionMerge 40 DontFlatten 
 | |
|                               Switch 36 39 
 | |
|                                      case 1: 37
 | |
|                                      case 2: 38
 | |
|               39:               Label
 | |
|               62:    7(fvec4)   Load 12(input)
 | |
|               63:    7(fvec4)   CompositeConstruct 61 61 61 61
 | |
|               64:    7(fvec4)   FAdd 62 63
 | |
|                                 Store 12(input) 64
 | |
|                                 Branch 40
 | |
|               37:               Label
 | |
|               41:    7(fvec4)   Load 12(input)
 | |
|               42:    7(fvec4)   CompositeConstruct 27 27 27 27
 | |
|               43:    7(fvec4)   FAdd 41 42
 | |
|                                 Store 12(input) 43
 | |
|                                 Branch 40
 | |
|               38:               Label
 | |
|               45:      9(int)   Load 14(d)
 | |
|                                 SelectionMerge 48 None
 | |
|                                 Switch 45 48 
 | |
|                                        case 2: 46
 | |
|                                        case 3: 47
 | |
|               46:                 Label
 | |
|               50:    7(fvec4)     Load 12(input)
 | |
|               51:    7(fvec4)     CompositeConstruct 49 49 49 49
 | |
|               52:    7(fvec4)     FAdd 50 51
 | |
|                                   Store 12(input) 52
 | |
|                                   Branch 48
 | |
|               47:                 Label
 | |
|               55:    7(fvec4)     Load 12(input)
 | |
|               56:    7(fvec4)     CompositeConstruct 54 54 54 54
 | |
|               57:    7(fvec4)     FAdd 55 56
 | |
|                                   Store 12(input) 57
 | |
|                                   Branch 48
 | |
|               48:               Label
 | |
|                                 Branch 40
 | |
|               40:             Label
 | |
|               66:      9(int) Load 13(c)
 | |
|                               SelectionMerge 68 None
 | |
|                               Switch 66 68 
 | |
|                                      case 1: 67
 | |
|               67:               Label
 | |
|                                 Branch 68
 | |
|               68:             Label
 | |
|               71:      9(int) Load 13(c)
 | |
|                               SelectionMerge 74 None
 | |
|                               Switch 71 74 
 | |
|                                      case 1: 72
 | |
|                                      case 2: 72
 | |
|                                      case 3: 72
 | |
|                                      case 4: 73
 | |
|                                      case 5: 73
 | |
|               72:               Label
 | |
|               75:    7(fvec4)   Load 12(input)
 | |
|               76:    7(fvec4)   CompositeConstruct 27 27 27 27
 | |
|               77:    7(fvec4)   FAdd 75 76
 | |
|                                 Store 12(input) 77
 | |
|                                 Branch 74
 | |
|               73:               Label
 | |
|               79:    7(fvec4)   Load 12(input)
 | |
|               80:    7(fvec4)   CompositeConstruct 27 27 27 27
 | |
|               81:    7(fvec4)   FSub 79 80
 | |
|                                 Store 12(input) 81
 | |
|                                 Branch 74
 | |
|               74:             Label
 | |
|               83:    7(fvec4) Load 12(input)
 | |
|                               ReturnValue 83
 | |
|                               FunctionEnd
 | 
