| spv.switch.frag |
| WARNING: 0:121: 'switch' : last case/default label not followed by statements |
| WARNING: 0:134: 'switch' : last case/default label not followed by statements |
| WARNING: 0:139: 'switch' : last case/default label not followed by statements |
| |
| // Module Version 10000 |
| // Generated by (magic number): 8000a |
| // Id's are bound by 275 |
| |
| Capability Shader |
| 1: ExtInstImport "GLSL.std.450" |
| MemoryModel Logical GLSL450 |
| EntryPoint Fragment 4 "main" 68 81 135 233 239 |
| ExecutionMode 4 OriginUpperLeft |
| Source ESSL 310 |
| Name 4 "main" |
| Name 15 "foo1(vf4;vf4;i1;" |
| Name 12 "v1" |
| Name 13 "v2" |
| Name 14 "i1" |
| Name 20 "foo2(vf4;vf4;i1;" |
| Name 17 "v1" |
| Name 18 "v2" |
| Name 19 "i1" |
| Name 66 "local" |
| Name 68 "c" |
| Name 79 "f" |
| Name 81 "x" |
| Name 135 "d" |
| Name 161 "i" |
| Name 181 "j" |
| Name 233 "color" |
| Name 239 "v" |
| Name 240 "param" |
| Name 242 "param" |
| Name 244 "param" |
| Name 252 "param" |
| Name 254 "param" |
| Name 256 "param" |
| Decorate 15(foo1(vf4;vf4;i1;) RelaxedPrecision |
| Decorate 12(v1) RelaxedPrecision |
| Decorate 13(v2) RelaxedPrecision |
| Decorate 14(i1) RelaxedPrecision |
| Decorate 20(foo2(vf4;vf4;i1;) RelaxedPrecision |
| Decorate 17(v1) RelaxedPrecision |
| Decorate 18(v2) RelaxedPrecision |
| Decorate 19(i1) RelaxedPrecision |
| Decorate 22 RelaxedPrecision |
| Decorate 27 RelaxedPrecision |
| Decorate 29 RelaxedPrecision |
| Decorate 31 RelaxedPrecision |
| Decorate 32 RelaxedPrecision |
| Decorate 33 RelaxedPrecision |
| Decorate 38 RelaxedPrecision |
| Decorate 39 RelaxedPrecision |
| Decorate 42 RelaxedPrecision |
| Decorate 48 RelaxedPrecision |
| Decorate 52 RelaxedPrecision |
| Decorate 53 RelaxedPrecision |
| Decorate 55 RelaxedPrecision |
| Decorate 57 RelaxedPrecision |
| Decorate 58 RelaxedPrecision |
| Decorate 59 RelaxedPrecision |
| Decorate 62 RelaxedPrecision |
| Decorate 63 RelaxedPrecision |
| Decorate 66(local) RelaxedPrecision |
| Decorate 68(c) RelaxedPrecision |
| Decorate 68(c) Flat |
| Decorate 68(c) Location 0 |
| Decorate 69 RelaxedPrecision |
| Decorate 70 RelaxedPrecision |
| Decorate 72 RelaxedPrecision |
| Decorate 73 RelaxedPrecision |
| Decorate 79(f) RelaxedPrecision |
| Decorate 81(x) RelaxedPrecision |
| Decorate 81(x) Location 2 |
| Decorate 82 RelaxedPrecision |
| Decorate 83 RelaxedPrecision |
| Decorate 85 RelaxedPrecision |
| Decorate 86 RelaxedPrecision |
| Decorate 88 RelaxedPrecision |
| Decorate 89 RelaxedPrecision |
| Decorate 91 RelaxedPrecision |
| Decorate 96 RelaxedPrecision |
| Decorate 97 RelaxedPrecision |
| Decorate 98 RelaxedPrecision |
| Decorate 99 RelaxedPrecision |
| Decorate 100 RelaxedPrecision |
| Decorate 101 RelaxedPrecision |
| Decorate 102 RelaxedPrecision |
| Decorate 103 RelaxedPrecision |
| Decorate 105 RelaxedPrecision |
| Decorate 106 RelaxedPrecision |
| Decorate 107 RelaxedPrecision |
| Decorate 108 RelaxedPrecision |
| Decorate 110 RelaxedPrecision |
| Decorate 114 RelaxedPrecision |
| Decorate 115 RelaxedPrecision |
| Decorate 116 RelaxedPrecision |
| Decorate 117 RelaxedPrecision |
| Decorate 119 RelaxedPrecision |
| Decorate 120 RelaxedPrecision |
| Decorate 121 RelaxedPrecision |
| Decorate 122 RelaxedPrecision |
| Decorate 125 RelaxedPrecision |
| Decorate 130 RelaxedPrecision |
| Decorate 131 RelaxedPrecision |
| Decorate 132 RelaxedPrecision |
| Decorate 133 RelaxedPrecision |
| Decorate 135(d) RelaxedPrecision |
| Decorate 135(d) Flat |
| Decorate 135(d) Location 1 |
| Decorate 136 RelaxedPrecision |
| Decorate 140 RelaxedPrecision |
| Decorate 141 RelaxedPrecision |
| Decorate 142 RelaxedPrecision |
| Decorate 143 RelaxedPrecision |
| Decorate 144 RelaxedPrecision |
| Decorate 145 RelaxedPrecision |
| Decorate 146 RelaxedPrecision |
| Decorate 148 RelaxedPrecision |
| Decorate 149 RelaxedPrecision |
| Decorate 150 RelaxedPrecision |
| Decorate 151 RelaxedPrecision |
| Decorate 152 RelaxedPrecision |
| Decorate 156 RelaxedPrecision |
| Decorate 157 RelaxedPrecision |
| Decorate 158 RelaxedPrecision |
| Decorate 159 RelaxedPrecision |
| Decorate 161(i) RelaxedPrecision |
| Decorate 168 RelaxedPrecision |
| Decorate 172 RelaxedPrecision |
| Decorate 177 RelaxedPrecision |
| Decorate 178 RelaxedPrecision |
| Decorate 179 RelaxedPrecision |
| Decorate 180 RelaxedPrecision |
| Decorate 181(j) RelaxedPrecision |
| Decorate 188 RelaxedPrecision |
| Decorate 191 RelaxedPrecision |
| Decorate 192 RelaxedPrecision |
| Decorate 193 RelaxedPrecision |
| Decorate 199 RelaxedPrecision |
| Decorate 200 RelaxedPrecision |
| Decorate 202 RelaxedPrecision |
| Decorate 203 RelaxedPrecision |
| Decorate 204 RelaxedPrecision |
| Decorate 205 RelaxedPrecision |
| Decorate 208 RelaxedPrecision |
| Decorate 209 RelaxedPrecision |
| Decorate 210 RelaxedPrecision |
| Decorate 211 RelaxedPrecision |
| Decorate 213 RelaxedPrecision |
| Decorate 219 RelaxedPrecision |
| Decorate 220 RelaxedPrecision |
| Decorate 221 RelaxedPrecision |
| Decorate 225 RelaxedPrecision |
| Decorate 226 RelaxedPrecision |
| Decorate 227 RelaxedPrecision |
| Decorate 228 RelaxedPrecision |
| Decorate 233(color) RelaxedPrecision |
| Decorate 233(color) Location 0 |
| Decorate 234 RelaxedPrecision |
| Decorate 235 RelaxedPrecision |
| Decorate 236 RelaxedPrecision |
| Decorate 237 RelaxedPrecision |
| Decorate 239(v) RelaxedPrecision |
| Decorate 239(v) Location 3 |
| Decorate 240(param) RelaxedPrecision |
| Decorate 241 RelaxedPrecision |
| Decorate 242(param) RelaxedPrecision |
| Decorate 243 RelaxedPrecision |
| Decorate 244(param) RelaxedPrecision |
| Decorate 245 RelaxedPrecision |
| Decorate 246 RelaxedPrecision |
| Decorate 249 RelaxedPrecision |
| Decorate 250 RelaxedPrecision |
| Decorate 251 RelaxedPrecision |
| Decorate 252(param) RelaxedPrecision |
| Decorate 253 RelaxedPrecision |
| Decorate 254(param) RelaxedPrecision |
| Decorate 255 RelaxedPrecision |
| Decorate 256(param) RelaxedPrecision |
| Decorate 257 RelaxedPrecision |
| Decorate 258 RelaxedPrecision |
| Decorate 260 RelaxedPrecision |
| Decorate 261 RelaxedPrecision |
| Decorate 262 RelaxedPrecision |
| Decorate 263 RelaxedPrecision |
| Decorate 270 RelaxedPrecision |
| 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) 8(ptr) 10(ptr) |
| 36: 6(float) Constant 0 |
| 37: 7(fvec4) ConstantComposite 36 36 36 36 |
| 50: 6(float) Constant 1065353216 |
| 51: 7(fvec4) ConstantComposite 50 50 50 50 |
| 67: TypePointer Input 9(int) |
| 68(c): 67(ptr) Variable Input |
| 71: 9(int) Constant 1 |
| 78: TypePointer Function 6(float) |
| 80: TypePointer Input 6(float) |
| 81(x): 80(ptr) Variable Input |
| 135(d): 67(ptr) Variable Input |
| 162: 9(int) Constant 0 |
| 169: 9(int) Constant 10 |
| 170: TypeBool |
| 182: 9(int) Constant 20 |
| 189: 9(int) Constant 30 |
| 194: 6(float) Constant 1120429670 |
| 214: 6(float) Constant 1079739679 |
| 232: TypePointer Output 6(float) |
| 233(color): 232(ptr) Variable Output |
| 238: TypePointer Input 7(fvec4) |
| 239(v): 238(ptr) Variable Input |
| 247: TypeInt 32 0 |
| 248: 247(int) Constant 1 |
| 259: 247(int) Constant 2 |
| 4(main): 2 Function None 3 |
| 5: Label |
| 66(local): 10(ptr) Variable Function |
| 79(f): 78(ptr) Variable Function |
| 161(i): 10(ptr) Variable Function |
| 181(j): 10(ptr) Variable Function |
| 240(param): 8(ptr) Variable Function |
| 242(param): 8(ptr) Variable Function |
| 244(param): 10(ptr) Variable Function |
| 252(param): 8(ptr) Variable Function |
| 254(param): 8(ptr) Variable Function |
| 256(param): 10(ptr) Variable Function |
| 69: 9(int) Load 68(c) |
| Store 66(local) 69 |
| 70: 9(int) Load 66(local) |
| 72: 9(int) IAdd 70 71 |
| Store 66(local) 72 |
| 73: 9(int) Load 68(c) |
| SelectionMerge 77 None |
| Switch 73 76 |
| case 1: 74 |
| case 2: 75 |
| 76: Label |
| 88: 6(float) Load 81(x) |
| 89: 6(float) ExtInst 1(GLSL.std.450) 15(Tan) 88 |
| Store 79(f) 89 |
| Branch 77 |
| 74: Label |
| 82: 6(float) Load 81(x) |
| 83: 6(float) ExtInst 1(GLSL.std.450) 13(Sin) 82 |
| Store 79(f) 83 |
| Branch 77 |
| 75: Label |
| 85: 6(float) Load 81(x) |
| 86: 6(float) ExtInst 1(GLSL.std.450) 14(Cos) 85 |
| Store 79(f) 86 |
| Branch 77 |
| 77: Label |
| 91: 9(int) Load 68(c) |
| SelectionMerge 95 None |
| Switch 91 94 |
| case 1: 92 |
| case 2: 93 |
| 94: Label |
| 105: 6(float) Load 81(x) |
| 106: 6(float) ExtInst 1(GLSL.std.450) 15(Tan) 105 |
| 107: 6(float) Load 79(f) |
| 108: 6(float) FAdd 107 106 |
| Store 79(f) 108 |
| Branch 95 |
| 92: Label |
| 96: 6(float) Load 81(x) |
| 97: 6(float) ExtInst 1(GLSL.std.450) 13(Sin) 96 |
| 98: 6(float) Load 79(f) |
| 99: 6(float) FAdd 98 97 |
| Store 79(f) 99 |
| Branch 93 |
| 93: Label |
| 100: 6(float) Load 81(x) |
| 101: 6(float) ExtInst 1(GLSL.std.450) 14(Cos) 100 |
| 102: 6(float) Load 79(f) |
| 103: 6(float) FAdd 102 101 |
| Store 79(f) 103 |
| Branch 95 |
| 95: Label |
| 110: 9(int) Load 68(c) |
| SelectionMerge 113 None |
| Switch 110 113 |
| case 1: 111 |
| case 2: 112 |
| 111: Label |
| 114: 6(float) Load 81(x) |
| 115: 6(float) ExtInst 1(GLSL.std.450) 13(Sin) 114 |
| 116: 6(float) Load 79(f) |
| 117: 6(float) FAdd 116 115 |
| Store 79(f) 117 |
| Branch 113 |
| 112: Label |
| 119: 6(float) Load 81(x) |
| 120: 6(float) ExtInst 1(GLSL.std.450) 14(Cos) 119 |
| 121: 6(float) Load 79(f) |
| 122: 6(float) FAdd 121 120 |
| Store 79(f) 122 |
| Branch 113 |
| 113: Label |
| 125: 9(int) Load 68(c) |
| SelectionMerge 129 None |
| Switch 125 128 |
| case 1: 126 |
| case 2: 127 |
| 128: Label |
| 156: 6(float) Load 81(x) |
| 157: 6(float) ExtInst 1(GLSL.std.450) 15(Tan) 156 |
| 158: 6(float) Load 79(f) |
| 159: 6(float) FAdd 158 157 |
| Store 79(f) 159 |
| Branch 129 |
| 126: Label |
| 130: 6(float) Load 81(x) |
| 131: 6(float) ExtInst 1(GLSL.std.450) 13(Sin) 130 |
| 132: 6(float) Load 79(f) |
| 133: 6(float) FAdd 132 131 |
| Store 79(f) 133 |
| Branch 129 |
| 127: Label |
| 136: 9(int) Load 135(d) |
| SelectionMerge 139 None |
| Switch 136 139 |
| case 1: 137 |
| case 2: 138 |
| 137: Label |
| 140: 6(float) Load 81(x) |
| 141: 6(float) Load 81(x) |
| 142: 6(float) FMul 140 141 |
| 143: 6(float) Load 81(x) |
| 144: 6(float) FMul 142 143 |
| 145: 6(float) Load 79(f) |
| 146: 6(float) FAdd 145 144 |
| Store 79(f) 146 |
| Branch 139 |
| 138: Label |
| 148: 6(float) Load 81(x) |
| 149: 6(float) Load 81(x) |
| 150: 6(float) FMul 148 149 |
| 151: 6(float) Load 79(f) |
| 152: 6(float) FAdd 151 150 |
| Store 79(f) 152 |
| Branch 139 |
| 139: Label |
| Branch 129 |
| 129: Label |
| Store 161(i) 162 |
| Branch 163 |
| 163: Label |
| LoopMerge 165 166 None |
| Branch 167 |
| 167: Label |
| 168: 9(int) Load 161(i) |
| 171: 170(bool) SLessThan 168 169 |
| BranchConditional 171 164 165 |
| 164: Label |
| 172: 9(int) Load 68(c) |
| SelectionMerge 176 None |
| Switch 172 175 |
| case 1: 173 |
| case 2: 174 |
| 175: Label |
| 208: 6(float) Load 81(x) |
| 209: 6(float) ExtInst 1(GLSL.std.450) 15(Tan) 208 |
| 210: 6(float) Load 79(f) |
| 211: 6(float) FAdd 210 209 |
| Store 79(f) 211 |
| Branch 176 |
| 173: Label |
| 177: 6(float) Load 81(x) |
| 178: 6(float) ExtInst 1(GLSL.std.450) 13(Sin) 177 |
| 179: 6(float) Load 79(f) |
| 180: 6(float) FAdd 179 178 |
| Store 79(f) 180 |
| Store 181(j) 182 |
| Branch 183 |
| 183: Label |
| LoopMerge 185 186 None |
| Branch 187 |
| 187: Label |
| 188: 9(int) Load 181(j) |
| 190: 170(bool) SLessThan 188 189 |
| BranchConditional 190 184 185 |
| 184: Label |
| 191: 6(float) Load 79(f) |
| 192: 6(float) FAdd 191 50 |
| Store 79(f) 192 |
| 193: 6(float) Load 79(f) |
| 195: 170(bool) FOrdLessThan 193 194 |
| SelectionMerge 197 None |
| BranchConditional 195 196 197 |
| 196: Label |
| Branch 185 |
| 197: Label |
| Branch 186 |
| 186: Label |
| 199: 9(int) Load 181(j) |
| 200: 9(int) IAdd 199 71 |
| Store 181(j) 200 |
| Branch 183 |
| 185: Label |
| Branch 176 |
| 174: Label |
| 202: 6(float) Load 81(x) |
| 203: 6(float) ExtInst 1(GLSL.std.450) 14(Cos) 202 |
| 204: 6(float) Load 79(f) |
| 205: 6(float) FAdd 204 203 |
| Store 79(f) 205 |
| Branch 176 |
| 176: Label |
| 213: 6(float) Load 79(f) |
| 215: 170(bool) FOrdLessThan 213 214 |
| SelectionMerge 217 None |
| BranchConditional 215 216 217 |
| 216: Label |
| Branch 165 |
| 217: Label |
| Branch 166 |
| 166: Label |
| 219: 9(int) Load 161(i) |
| 220: 9(int) IAdd 219 71 |
| Store 161(i) 220 |
| Branch 163 |
| 165: Label |
| 221: 9(int) Load 68(c) |
| SelectionMerge 224 None |
| Switch 221 224 |
| case 1: 222 |
| case 2: 223 |
| 222: Label |
| 225: 6(float) Load 81(x) |
| 226: 6(float) ExtInst 1(GLSL.std.450) 13(Sin) 225 |
| 227: 6(float) Load 79(f) |
| 228: 6(float) FAdd 227 226 |
| Store 79(f) 228 |
| Branch 224 |
| 223: Label |
| Branch 224 |
| 224: Label |
| 234: 6(float) Load 79(f) |
| 235: 9(int) Load 66(local) |
| 236: 6(float) ConvertSToF 235 |
| 237: 6(float) FAdd 234 236 |
| Store 233(color) 237 |
| 241: 7(fvec4) Load 239(v) |
| Store 240(param) 241 |
| 243: 7(fvec4) Load 239(v) |
| Store 242(param) 243 |
| 245: 9(int) Load 68(c) |
| Store 244(param) 245 |
| 246: 7(fvec4) FunctionCall 15(foo1(vf4;vf4;i1;) 240(param) 242(param) 244(param) |
| 249: 6(float) CompositeExtract 246 1 |
| 250: 6(float) Load 233(color) |
| 251: 6(float) FAdd 250 249 |
| Store 233(color) 251 |
| 253: 7(fvec4) Load 239(v) |
| Store 252(param) 253 |
| 255: 7(fvec4) Load 239(v) |
| Store 254(param) 255 |
| 257: 9(int) Load 68(c) |
| Store 256(param) 257 |
| 258: 7(fvec4) FunctionCall 20(foo2(vf4;vf4;i1;) 252(param) 254(param) 256(param) |
| 260: 6(float) CompositeExtract 258 2 |
| 261: 6(float) Load 233(color) |
| 262: 6(float) FAdd 261 260 |
| Store 233(color) 262 |
| 263: 9(int) Load 68(c) |
| SelectionMerge 266 None |
| Switch 263 265 |
| case 0: 264 |
| 265: Label |
| Branch 266 |
| 264: Label |
| Branch 266 |
| 266: Label |
| 270: 9(int) Load 68(c) |
| SelectionMerge 272 None |
| Switch 270 271 |
| 271: Label |
| Branch 272 |
| 272: Label |
| Return |
| FunctionEnd |
| 15(foo1(vf4;vf4;i1;): 7(fvec4) Function None 11 |
| 12(v1): 8(ptr) FunctionParameter |
| 13(v2): 8(ptr) FunctionParameter |
| 14(i1): 10(ptr) FunctionParameter |
| 16: Label |
| 38: 8(ptr) Variable Function |
| 22: 9(int) Load 14(i1) |
| SelectionMerge 26 None |
| Switch 22 26 |
| case 0: 23 |
| case 2: 24 |
| case 1: 24 |
| case 3: 25 |
| 23: Label |
| 27: 7(fvec4) Load 12(v1) |
| ReturnValue 27 |
| 24: Label |
| 29: 7(fvec4) Load 13(v2) |
| ReturnValue 29 |
| 25: Label |
| 31: 7(fvec4) Load 12(v1) |
| 32: 7(fvec4) Load 13(v2) |
| 33: 7(fvec4) FMul 31 32 |
| ReturnValue 33 |
| 26: Label |
| Store 38 37 |
| 39: 7(fvec4) Load 38 |
| ReturnValue 39 |
| FunctionEnd |
| 20(foo2(vf4;vf4;i1;): 7(fvec4) Function None 11 |
| 17(v1): 8(ptr) FunctionParameter |
| 18(v2): 8(ptr) FunctionParameter |
| 19(i1): 10(ptr) FunctionParameter |
| 21: Label |
| 52: 8(ptr) Variable Function |
| 62: 8(ptr) Variable Function |
| 42: 9(int) Load 19(i1) |
| SelectionMerge 47 None |
| Switch 42 47 |
| case 0: 43 |
| case 2: 44 |
| case 1: 45 |
| case 3: 46 |
| 43: Label |
| 48: 7(fvec4) Load 17(v1) |
| ReturnValue 48 |
| 44: Label |
| Store 52 51 |
| 53: 7(fvec4) Load 52 |
| ReturnValue 53 |
| 45: Label |
| 55: 7(fvec4) Load 18(v2) |
| ReturnValue 55 |
| 46: Label |
| 57: 7(fvec4) Load 17(v1) |
| 58: 7(fvec4) Load 18(v2) |
| 59: 7(fvec4) FMul 57 58 |
| ReturnValue 59 |
| 47: Label |
| Store 62 37 |
| 63: 7(fvec4) Load 62 |
| ReturnValue 63 |
| FunctionEnd |