| #include <metal_stdlib> |
| |
| using namespace metal; |
| struct BST { |
| int data; |
| int leftIndex; |
| int rightIndex; |
| }; |
| struct tint_array_wrapper { |
| BST arr[10]; |
| }; |
| struct main_out { |
| float4 x_GLF_color_1; |
| }; |
| struct tint_symbol_1 { |
| float4 x_GLF_color_1 [[color(0)]]; |
| }; |
| |
| void main_1(thread float4* const tint_symbol_23) { |
| tint_array_wrapper tree = {}; |
| int x_360 = 0; |
| int x_62_phi = 0; |
| bool x_90_phi = false; |
| int x_357_phi = 0; |
| int x_360_phi = 0; |
| int x_362_phi = 0; |
| BST const tint_symbol_3 = {.data=9, .leftIndex=-1, .rightIndex=-1}; |
| tree.arr[0] = tint_symbol_3; |
| switch(0u) { |
| default: { |
| x_62_phi = 0; |
| while (true) { |
| int x_88 = 0; |
| int x_80 = 0; |
| int x_63 = 0; |
| int x_63_phi = 0; |
| int const x_62 = x_62_phi; |
| x_90_phi = false; |
| if ((x_62 <= 1)) { |
| } else { |
| break; |
| } |
| int const x_69 = tree.arr[x_62].data; |
| if ((5 <= x_69)) { |
| int const x_82_save = x_62; |
| int const x_83 = tree.arr[x_82_save].leftIndex; |
| if ((x_83 == -1)) { |
| tree.arr[x_82_save].leftIndex = 1; |
| BST const tint_symbol_4 = {.data=5, .leftIndex=-1, .rightIndex=-1}; |
| tree.arr[1] = tint_symbol_4; |
| x_90_phi = true; |
| break; |
| } else { |
| x_88 = tree.arr[x_82_save].leftIndex; |
| x_63_phi = x_88; |
| { |
| x_63 = x_63_phi; |
| x_62_phi = x_63; |
| } |
| continue; |
| } |
| return; |
| } else { |
| int const x_74_save = x_62; |
| int const x_75 = tree.arr[x_74_save].rightIndex; |
| if ((x_75 == -1)) { |
| tree.arr[x_74_save].rightIndex = 1; |
| BST const tint_symbol_5 = {.data=5, .leftIndex=-1, .rightIndex=-1}; |
| tree.arr[1] = tint_symbol_5; |
| x_90_phi = true; |
| break; |
| } else { |
| x_80 = tree.arr[x_74_save].rightIndex; |
| x_63_phi = x_80; |
| { |
| x_63 = x_63_phi; |
| x_62_phi = x_63; |
| } |
| continue; |
| } |
| return; |
| } |
| return; |
| { |
| x_63 = x_63_phi; |
| x_62_phi = x_63; |
| } |
| } |
| bool const x_90 = x_90_phi; |
| if (x_90) { |
| break; |
| } |
| break; |
| } |
| } |
| int x_95_phi = 0; |
| bool x_123_phi = false; |
| switch(0u) { |
| default: { |
| x_95_phi = 0; |
| while (true) { |
| int x_121 = 0; |
| int x_113 = 0; |
| int x_96 = 0; |
| int x_96_phi = 0; |
| int const x_95 = x_95_phi; |
| x_123_phi = false; |
| if ((x_95 <= 2)) { |
| } else { |
| break; |
| } |
| int const x_102 = tree.arr[x_95].data; |
| if ((12 <= x_102)) { |
| int const x_115_save = x_95; |
| int const x_116 = tree.arr[x_115_save].leftIndex; |
| if ((x_116 == -1)) { |
| tree.arr[x_115_save].leftIndex = 2; |
| BST const tint_symbol_6 = {.data=12, .leftIndex=-1, .rightIndex=-1}; |
| tree.arr[2] = tint_symbol_6; |
| x_123_phi = true; |
| break; |
| } else { |
| x_121 = tree.arr[x_115_save].leftIndex; |
| x_96_phi = x_121; |
| { |
| x_96 = x_96_phi; |
| x_95_phi = x_96; |
| } |
| continue; |
| } |
| return; |
| } else { |
| int const x_107_save = x_95; |
| int const x_108 = tree.arr[x_107_save].rightIndex; |
| if ((x_108 == -1)) { |
| tree.arr[x_107_save].rightIndex = 2; |
| BST const tint_symbol_7 = {.data=12, .leftIndex=-1, .rightIndex=-1}; |
| tree.arr[2] = tint_symbol_7; |
| x_123_phi = true; |
| break; |
| } else { |
| x_113 = tree.arr[x_107_save].rightIndex; |
| x_96_phi = x_113; |
| { |
| x_96 = x_96_phi; |
| x_95_phi = x_96; |
| } |
| continue; |
| } |
| return; |
| } |
| return; |
| { |
| x_96 = x_96_phi; |
| x_95_phi = x_96; |
| } |
| } |
| bool const x_123 = x_123_phi; |
| if (x_123) { |
| break; |
| } |
| break; |
| } |
| } |
| int x_128_phi = 0; |
| bool x_156_phi = false; |
| switch(0u) { |
| default: { |
| x_128_phi = 0; |
| while (true) { |
| int x_154 = 0; |
| int x_146 = 0; |
| int x_129 = 0; |
| int x_129_phi = 0; |
| int const x_128 = x_128_phi; |
| x_156_phi = false; |
| if ((x_128 <= 3)) { |
| } else { |
| break; |
| } |
| int const x_135 = tree.arr[x_128].data; |
| if ((15 <= x_135)) { |
| int const x_148_save = x_128; |
| int const x_149 = tree.arr[x_148_save].leftIndex; |
| if ((x_149 == -1)) { |
| tree.arr[x_148_save].leftIndex = 3; |
| BST const tint_symbol_8 = {.data=15, .leftIndex=-1, .rightIndex=-1}; |
| tree.arr[3] = tint_symbol_8; |
| x_156_phi = true; |
| break; |
| } else { |
| x_154 = tree.arr[x_148_save].leftIndex; |
| x_129_phi = x_154; |
| { |
| x_129 = x_129_phi; |
| x_128_phi = x_129; |
| } |
| continue; |
| } |
| return; |
| } else { |
| int const x_140_save = x_128; |
| int const x_141 = tree.arr[x_140_save].rightIndex; |
| if ((x_141 == -1)) { |
| tree.arr[x_140_save].rightIndex = 3; |
| BST const tint_symbol_9 = {.data=15, .leftIndex=-1, .rightIndex=-1}; |
| tree.arr[3] = tint_symbol_9; |
| x_156_phi = true; |
| break; |
| } else { |
| x_146 = tree.arr[x_140_save].rightIndex; |
| x_129_phi = x_146; |
| { |
| x_129 = x_129_phi; |
| x_128_phi = x_129; |
| } |
| continue; |
| } |
| return; |
| } |
| return; |
| { |
| x_129 = x_129_phi; |
| x_128_phi = x_129; |
| } |
| } |
| bool const x_156 = x_156_phi; |
| if (x_156) { |
| break; |
| } |
| break; |
| } |
| } |
| int x_161_phi = 0; |
| bool x_189_phi = false; |
| switch(0u) { |
| default: { |
| x_161_phi = 0; |
| while (true) { |
| int x_187 = 0; |
| int x_179 = 0; |
| int x_162 = 0; |
| int x_162_phi = 0; |
| int const x_161 = x_161_phi; |
| x_189_phi = false; |
| if ((x_161 <= 4)) { |
| } else { |
| break; |
| } |
| int const x_168 = tree.arr[x_161].data; |
| if ((7 <= x_168)) { |
| int const x_181_save = x_161; |
| int const x_182 = tree.arr[x_181_save].leftIndex; |
| if ((x_182 == -1)) { |
| tree.arr[x_181_save].leftIndex = 4; |
| BST const tint_symbol_10 = {.data=7, .leftIndex=-1, .rightIndex=-1}; |
| tree.arr[4] = tint_symbol_10; |
| x_189_phi = true; |
| break; |
| } else { |
| x_187 = tree.arr[x_181_save].leftIndex; |
| x_162_phi = x_187; |
| { |
| x_162 = x_162_phi; |
| x_161_phi = x_162; |
| } |
| continue; |
| } |
| return; |
| } else { |
| int const x_173_save = x_161; |
| int const x_174 = tree.arr[x_173_save].rightIndex; |
| if ((x_174 == -1)) { |
| tree.arr[x_173_save].rightIndex = 4; |
| BST const tint_symbol_11 = {.data=7, .leftIndex=-1, .rightIndex=-1}; |
| tree.arr[4] = tint_symbol_11; |
| x_189_phi = true; |
| break; |
| } else { |
| x_179 = tree.arr[x_173_save].rightIndex; |
| x_162_phi = x_179; |
| { |
| x_162 = x_162_phi; |
| x_161_phi = x_162; |
| } |
| continue; |
| } |
| return; |
| } |
| return; |
| { |
| x_162 = x_162_phi; |
| x_161_phi = x_162; |
| } |
| } |
| bool const x_189 = x_189_phi; |
| if (x_189) { |
| break; |
| } |
| break; |
| } |
| } |
| int x_194_phi = 0; |
| bool x_222_phi = false; |
| switch(0u) { |
| default: { |
| x_194_phi = 0; |
| while (true) { |
| int x_220 = 0; |
| int x_212 = 0; |
| int x_195 = 0; |
| int x_195_phi = 0; |
| int const x_194 = x_194_phi; |
| x_222_phi = false; |
| if ((x_194 <= 5)) { |
| } else { |
| break; |
| } |
| int const x_201 = tree.arr[x_194].data; |
| if ((8 <= x_201)) { |
| int const x_214_save = x_194; |
| int const x_215 = tree.arr[x_214_save].leftIndex; |
| if ((x_215 == -1)) { |
| tree.arr[x_214_save].leftIndex = 5; |
| BST const tint_symbol_12 = {.data=8, .leftIndex=-1, .rightIndex=-1}; |
| tree.arr[5] = tint_symbol_12; |
| x_222_phi = true; |
| break; |
| } else { |
| x_220 = tree.arr[x_214_save].leftIndex; |
| x_195_phi = x_220; |
| { |
| x_195 = x_195_phi; |
| x_194_phi = x_195; |
| } |
| continue; |
| } |
| return; |
| } else { |
| int const x_206_save = x_194; |
| int const x_207 = tree.arr[x_206_save].rightIndex; |
| if ((x_207 == -1)) { |
| tree.arr[x_206_save].rightIndex = 5; |
| BST const tint_symbol_13 = {.data=8, .leftIndex=-1, .rightIndex=-1}; |
| tree.arr[5] = tint_symbol_13; |
| x_222_phi = true; |
| break; |
| } else { |
| x_212 = tree.arr[x_206_save].rightIndex; |
| x_195_phi = x_212; |
| { |
| x_195 = x_195_phi; |
| x_194_phi = x_195; |
| } |
| continue; |
| } |
| return; |
| } |
| return; |
| { |
| x_195 = x_195_phi; |
| x_194_phi = x_195; |
| } |
| } |
| bool const x_222 = x_222_phi; |
| if (x_222) { |
| break; |
| } |
| break; |
| } |
| } |
| int x_227_phi = 0; |
| bool x_255_phi = false; |
| switch(0u) { |
| default: { |
| x_227_phi = 0; |
| while (true) { |
| int x_253 = 0; |
| int x_245 = 0; |
| int x_228 = 0; |
| int x_228_phi = 0; |
| int const x_227 = x_227_phi; |
| x_255_phi = false; |
| if ((x_227 <= 6)) { |
| } else { |
| break; |
| } |
| int const x_234 = tree.arr[x_227].data; |
| if ((2 <= x_234)) { |
| int const x_247_save = x_227; |
| int const x_248 = tree.arr[x_247_save].leftIndex; |
| if ((x_248 == -1)) { |
| tree.arr[x_247_save].leftIndex = 6; |
| BST const tint_symbol_14 = {.data=2, .leftIndex=-1, .rightIndex=-1}; |
| tree.arr[6] = tint_symbol_14; |
| x_255_phi = true; |
| break; |
| } else { |
| x_253 = tree.arr[x_247_save].leftIndex; |
| x_228_phi = x_253; |
| { |
| x_228 = x_228_phi; |
| x_227_phi = x_228; |
| } |
| continue; |
| } |
| return; |
| } else { |
| int const x_239_save = x_227; |
| int const x_240 = tree.arr[x_239_save].rightIndex; |
| if ((x_240 == -1)) { |
| tree.arr[x_239_save].rightIndex = 6; |
| BST const tint_symbol_15 = {.data=2, .leftIndex=-1, .rightIndex=-1}; |
| tree.arr[6] = tint_symbol_15; |
| x_255_phi = true; |
| break; |
| } else { |
| x_245 = tree.arr[x_239_save].rightIndex; |
| x_228_phi = x_245; |
| { |
| x_228 = x_228_phi; |
| x_227_phi = x_228; |
| } |
| continue; |
| } |
| return; |
| } |
| return; |
| { |
| x_228 = x_228_phi; |
| x_227_phi = x_228; |
| } |
| } |
| bool const x_255 = x_255_phi; |
| if (x_255) { |
| break; |
| } |
| break; |
| } |
| } |
| int x_260_phi = 0; |
| bool x_288_phi = false; |
| switch(0u) { |
| default: { |
| x_260_phi = 0; |
| while (true) { |
| int x_286 = 0; |
| int x_278 = 0; |
| int x_261 = 0; |
| int x_261_phi = 0; |
| int const x_260 = x_260_phi; |
| x_288_phi = false; |
| if ((x_260 <= 7)) { |
| } else { |
| break; |
| } |
| int const x_267 = tree.arr[x_260].data; |
| if ((6 <= x_267)) { |
| int const x_280_save = x_260; |
| int const x_281 = tree.arr[x_280_save].leftIndex; |
| if ((x_281 == -1)) { |
| tree.arr[x_280_save].leftIndex = 7; |
| BST const tint_symbol_16 = {.data=6, .leftIndex=-1, .rightIndex=-1}; |
| tree.arr[7] = tint_symbol_16; |
| x_288_phi = true; |
| break; |
| } else { |
| x_286 = tree.arr[x_280_save].leftIndex; |
| x_261_phi = x_286; |
| { |
| x_261 = x_261_phi; |
| x_260_phi = x_261; |
| } |
| continue; |
| } |
| return; |
| } else { |
| int const x_272_save = x_260; |
| int const x_273 = tree.arr[x_272_save].rightIndex; |
| if ((x_273 == -1)) { |
| tree.arr[x_272_save].rightIndex = 7; |
| BST const tint_symbol_17 = {.data=6, .leftIndex=-1, .rightIndex=-1}; |
| tree.arr[7] = tint_symbol_17; |
| x_288_phi = true; |
| break; |
| } else { |
| x_278 = tree.arr[x_272_save].rightIndex; |
| x_261_phi = x_278; |
| { |
| x_261 = x_261_phi; |
| x_260_phi = x_261; |
| } |
| continue; |
| } |
| return; |
| } |
| return; |
| { |
| x_261 = x_261_phi; |
| x_260_phi = x_261; |
| } |
| } |
| bool const x_288 = x_288_phi; |
| if (x_288) { |
| break; |
| } |
| break; |
| } |
| } |
| int x_293_phi = 0; |
| bool x_321_phi = false; |
| switch(0u) { |
| default: { |
| x_293_phi = 0; |
| while (true) { |
| int x_319 = 0; |
| int x_311 = 0; |
| int x_294 = 0; |
| int x_294_phi = 0; |
| int const x_293 = x_293_phi; |
| x_321_phi = false; |
| if ((x_293 <= 8)) { |
| } else { |
| break; |
| } |
| int const x_300 = tree.arr[x_293].data; |
| if ((17 <= x_300)) { |
| int const x_313_save = x_293; |
| int const x_314 = tree.arr[x_313_save].leftIndex; |
| if ((x_314 == -1)) { |
| tree.arr[x_313_save].leftIndex = 8; |
| BST const tint_symbol_18 = {.data=17, .leftIndex=-1, .rightIndex=-1}; |
| tree.arr[8] = tint_symbol_18; |
| x_321_phi = true; |
| break; |
| } else { |
| x_319 = tree.arr[x_313_save].leftIndex; |
| x_294_phi = x_319; |
| { |
| x_294 = x_294_phi; |
| x_293_phi = x_294; |
| } |
| continue; |
| } |
| return; |
| } else { |
| int const x_305_save = x_293; |
| int const x_306 = tree.arr[x_305_save].rightIndex; |
| if ((x_306 == -1)) { |
| tree.arr[x_305_save].rightIndex = 8; |
| BST const tint_symbol_19 = {.data=17, .leftIndex=-1, .rightIndex=-1}; |
| tree.arr[8] = tint_symbol_19; |
| x_321_phi = true; |
| break; |
| } else { |
| x_311 = tree.arr[x_305_save].rightIndex; |
| x_294_phi = x_311; |
| { |
| x_294 = x_294_phi; |
| x_293_phi = x_294; |
| } |
| continue; |
| } |
| return; |
| } |
| return; |
| { |
| x_294 = x_294_phi; |
| x_293_phi = x_294; |
| } |
| } |
| bool const x_321 = x_321_phi; |
| if (x_321) { |
| break; |
| } |
| break; |
| } |
| } |
| int x_326_phi = 0; |
| bool x_354_phi = false; |
| switch(0u) { |
| default: { |
| x_326_phi = 0; |
| while (true) { |
| int x_352 = 0; |
| int x_344 = 0; |
| int x_327 = 0; |
| int x_327_phi = 0; |
| int const x_326 = x_326_phi; |
| x_354_phi = false; |
| if ((x_326 <= 9)) { |
| } else { |
| break; |
| } |
| int const x_333 = tree.arr[x_326].data; |
| if ((13 <= x_333)) { |
| int const x_346_save = x_326; |
| int const x_347 = tree.arr[x_346_save].leftIndex; |
| if ((x_347 == -1)) { |
| tree.arr[x_346_save].leftIndex = 9; |
| BST const tint_symbol_20 = {.data=13, .leftIndex=-1, .rightIndex=-1}; |
| tree.arr[9] = tint_symbol_20; |
| x_354_phi = true; |
| break; |
| } else { |
| x_352 = tree.arr[x_346_save].leftIndex; |
| x_327_phi = x_352; |
| { |
| x_327 = x_327_phi; |
| x_326_phi = x_327; |
| } |
| continue; |
| } |
| return; |
| } else { |
| int const x_338_save = x_326; |
| int const x_339 = tree.arr[x_338_save].rightIndex; |
| if ((x_339 == -1)) { |
| tree.arr[x_338_save].rightIndex = 9; |
| BST const tint_symbol_21 = {.data=13, .leftIndex=-1, .rightIndex=-1}; |
| tree.arr[9] = tint_symbol_21; |
| x_354_phi = true; |
| break; |
| } else { |
| x_344 = tree.arr[x_338_save].rightIndex; |
| x_327_phi = x_344; |
| { |
| x_327 = x_327_phi; |
| x_326_phi = x_327; |
| } |
| continue; |
| } |
| return; |
| } |
| return; |
| { |
| x_327 = x_327_phi; |
| x_326_phi = x_327; |
| } |
| } |
| bool const x_354 = x_354_phi; |
| if (x_354) { |
| break; |
| } |
| break; |
| } |
| } |
| x_357_phi = 0; |
| x_360_phi = 0; |
| x_362_phi = 0; |
| while (true) { |
| int x_392 = 0; |
| int x_402 = 0; |
| int x_407 = 0; |
| int x_363 = 0; |
| int x_358_phi = 0; |
| int x_361_phi = 0; |
| int const x_357 = x_357_phi; |
| x_360 = x_360_phi; |
| int const x_362 = x_362_phi; |
| int const x_365 = as_type<int>((as_type<uint>(6) - as_type<uint>(15))); |
| if ((x_362 < 20)) { |
| } else { |
| break; |
| } |
| int x_374_phi = 0; |
| int x_392_phi = 0; |
| bool x_393_phi = false; |
| switch(0u) { |
| default: { |
| x_374_phi = 0; |
| while (true) { |
| int const x_374 = x_374_phi; |
| x_392_phi = x_357; |
| x_393_phi = false; |
| if ((x_374 != -1)) { |
| } else { |
| break; |
| } |
| BST const x_381 = tree.arr[x_374]; |
| int const x_382 = x_381.data; |
| int const x_383 = x_381.leftIndex; |
| int const x_385 = x_381.rightIndex; |
| if ((x_382 == x_362)) { |
| x_392_phi = x_362; |
| x_393_phi = true; |
| break; |
| } |
| float const x_389 = (*(tint_symbol_23))[select(3u, 3u, (3u <= 3u))]; |
| { |
| x_374_phi = select(x_383, x_385, !((x_362 <= x_382))); |
| } |
| } |
| x_392 = x_392_phi; |
| bool const x_393 = x_393_phi; |
| x_358_phi = x_392; |
| if (x_393) { |
| break; |
| } |
| x_358_phi = -1; |
| break; |
| } |
| } |
| int x_358 = 0; |
| int x_401 = 0; |
| int x_406 = 0; |
| int x_402_phi = 0; |
| int x_407_phi = 0; |
| x_358 = x_358_phi; |
| switch(x_362) { |
| case 2: |
| case 5: |
| case 6: |
| case 7: |
| case 8: |
| case 9: |
| case 12: |
| case 13: |
| case 15: |
| case 17: { |
| x_402_phi = x_360; |
| if ((x_358 == as_type<int>(x_362))) { |
| x_401 = as_type<int>(as_type<int>((as_type<uint>(x_360) + as_type<uint>(as_type<int>(1))))); |
| x_402_phi = x_401; |
| } |
| x_402 = x_402_phi; |
| x_361_phi = x_402; |
| break; |
| } |
| default: { |
| x_407_phi = x_360; |
| if ((x_358 == as_type<int>(-1))) { |
| x_406 = as_type<int>(as_type<int>((as_type<uint>(x_360) + as_type<uint>(as_type<int>(1))))); |
| x_407_phi = x_406; |
| } |
| x_407 = x_407_phi; |
| x_361_phi = x_407; |
| break; |
| } |
| } |
| int const x_361 = x_361_phi; |
| { |
| x_363 = as_type<int>((as_type<uint>(x_362) + as_type<uint>(1))); |
| x_357_phi = x_358; |
| x_360_phi = x_361; |
| x_362_phi = x_363; |
| } |
| } |
| if ((x_360 == as_type<int>(20))) { |
| *(tint_symbol_23) = float4(1.0f, 0.0f, 0.0f, 1.0f); |
| } else { |
| *(tint_symbol_23) = float4(0.0f, 0.0f, 1.0f, 1.0f); |
| } |
| return; |
| } |
| |
| fragment tint_symbol_1 tint_symbol() { |
| thread float4 tint_symbol_24 = 0.0f; |
| main_1(&(tint_symbol_24)); |
| main_out const tint_symbol_2 = {.x_GLF_color_1=tint_symbol_24}; |
| tint_symbol_1 const tint_symbol_22 = {.x_GLF_color_1=tint_symbol_2.x_GLF_color_1}; |
| return tint_symbol_22; |
| } |
| |