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