#pragma OPENCL EXTENSION cl_khr_fp64 : enable #pragma OPENCL EXTENSION cl_khr_int64_base_atomics : enable __kernel void lookupBufferAddress(__global uchar *_heap_base, ulong _frame_base, __constant uchar *_constant_region, __local uchar *_local_region, __global int *_atomics) { __global ulong *_frame = (__global ulong *) &_heap_base[_frame_base]; // BLOCK 0 _frame[0] = (ulong) _heap_base; } // kernel #pragma OPENCL EXTENSION cl_khr_fp64 : enable #pragma OPENCL EXTENSION cl_khr_int64_base_atomics : enable __kernel void mm2metersKernel(__global uchar *_heap_base, ulong _frame_base, __constant uchar *_constant_region, __local uchar *_local_region, __global int *_atomics) { long l_25, l_24, l_15, l_14, l_13, l_23; ulong ul_7, ul_6, ul_26, ul_1, ul_0, ul_16, ul_19, ul_18; float f_27, f_17; int i_21, i_22, i_20, i_9, i_10, i_8, i_11, i_12, i_2, i_31, i_5, i_3, i_4, i_29, i_30, i_28; __global ulong *_frame = (__global ulong *) &_heap_base[_frame_base]; // BLOCK 0 ul_0 = (ulong) _frame[3]; ul_1 = (ulong) _frame[4]; i_2 = get_global_id(1); // BLOCK 1 MERGES [0 5 ] i_3 = i_2; for(;i_3 < 240;) { // BLOCK 2 i_4 = get_global_id(0); // BLOCK 3 MERGES [2 4 ] i_5 = i_4; for(;i_5 < 320;) { // BLOCK 4 ul_6 = ul_1 + 32L; ul_7 = *((__global ulong *) ul_6); i_8 = i_5 << 1; i_9 = i_3 << 8; i_10 = i_3 << 10; i_11 = i_9 + i_10; i_12 = i_8 + i_11; l_13 = (long) i_12; l_14 = l_13 << 2; l_15 = l_14 + 24L; ul_16 = ul_7 + l_15; f_17 = *((__global float *) ul_16); ul_18 = ul_0 + 32L; ul_19 = *((__global ulong *) ul_18); i_20 = i_3 << 6; i_21 = i_20 + i_9; i_22 = i_21 + i_5; l_23 = (long) i_22; l_24 = l_23 << 2; l_25 = l_24 + 24L; ul_26 = ul_19 + l_25; f_27 = f_17 * 0.001F; *((__global float *) ul_26) = f_27; i_28 = get_global_size(0); i_29 = i_28 + i_5; i_5 = i_29; } // B4 // BLOCK 5 i_30 = get_global_size(1); i_31 = i_30 + i_3; i_3 = i_31; } // B5 // BLOCK 6 return; } // kernel #pragma OPENCL EXTENSION cl_khr_fp64 : enable #pragma OPENCL EXTENSION cl_khr_int64_base_atomics : enable __kernel void bilateralFilter(__global uchar *_heap_base, ulong _frame_base, __constant uchar *_constant_region, __local uchar *_local_region, __global int *_atomics) { long l_123, l_122, l_121, l_255, l_383, l_254, l_382, l_381, l_491, l_490, l_239, l_238, l_366, l_237, l_365, l_364, l_492, l_103, l_102, l_101, l_347, l_475, l_474, l_217, l_473, l_216, l_349, l_348, l_83, l_82, l_81, l_215, l_331, l_330, l_458, l_457, l_456, l_332, l_64, l_199, l_198, l_197, l_441, l_440, l_63, l_62, l_179, l_307, l_439, l_181, l_309, l_180, l_308, l_43, l_42, l_424, l_44, l_163, l_291, l_162, l_290, l_161, l_289, l_423, l_422, l_27, l_26, l_25, l_146, l_145, l_273, l_401, l_144, l_272, l_400, l_271, l_399, l_256; ulong ul_20, ul_84, ul_218, ul_29, ul_28, ul_476, ul_31, ul_30, ul_350, ul_5, ul_7, ul_9, ul_200, ul_11, ul_459, ul_333, ul_19, ul_147, ul_274, ul_402, ul_182, ul_310, ul_442, ul_124, ul_1, ul_65, ul_257, ul_0, ul_384, ul_3, ul_2, ul_164, ul_292, ul_425, ul_104, ul_45, ul_493, ul_367, ul_240; float f_12, f_8, f_10, f_4, f_6, f_505, f_504, f_507, f_506, f_501, f_500, f_503, f_502, f_497, f_496, f_499, f_498, f_494, f_488, f_485, f_484, f_487, f_486, f_481, f_480, f_483, f_482, f_477, f_479, f_469, f_468, f_471, f_470, f_465, f_464, f_467, f_466, f_77, f_76, f_78, f_73, f_72, f_75, f_74, f_69, f_71, f_70, f_67, f_66, f_57, f_56, f_58, f_53, f_52, f_55, f_54, f_49, f_48, f_51, f_50, f_46, f_32, f_137, f_136, f_133, f_132, f_135, f_134, f_129, f_128, f_131, f_130, f_125, f_126, f_117, f_116, f_113, f_112, f_115, f_114, f_109, f_108, f_111, f_110, f_105, f_106, f_97, f_96, f_93, f_92, f_95, f_94, f_89, f_88, f_91, f_90, f_85, f_86, f_205, f_204, f_207, f_206, f_201, f_202, f_193, f_192, f_195, f_194, f_189, f_188, f_191, f_190, f_184, f_187, f_186, f_183, f_177, f_176, f_173, f_172, f_175, f_174, f_169, f_168, f_171, f_170, f_165, f_167, f_157, f_156, f_159, f_158, f_153, f_152, f_155, f_154, f_148, f_151, f_150, f_269, f_268, f_265, f_264, f_267, f_266, f_261, f_260, f_263, f_262, f_258, f_252, f_249, f_248, f_251, f_250, f_245, f_244, f_247, f_246, f_241, f_243, f_229, f_228, f_231, f_230, f_225, f_224, f_227, f_226, f_220, f_223, f_222, f_219, f_213, f_212, f_209, f_208, f_211, f_210, f_334, f_321, f_320, f_323, f_322, f_317, f_316, f_319, f_318, f_312, f_315, f_314, f_311, f_305, f_304, f_301, f_300, f_303, f_302, f_297, f_296, f_299, f_298, f_293, f_294, f_285, f_284, f_287, f_286, f_281, f_280, f_283, f_282, f_277, f_279, f_278, f_275, f_397, f_396, f_393, f_392, f_395, f_394, f_389, f_388, f_391, f_390, f_385, f_387, f_377, f_376, f_379, f_378, f_373, f_372, f_375, f_374, f_368, f_371, f_370, f_361, f_360, f_362, f_357, f_356, f_359, f_358, f_353, f_355, f_354, f_351, f_345, f_344, f_341, f_340, f_343, f_342, f_337, f_336, f_339, f_338, f_460, f_463, f_462, f_453, f_452, f_454, f_449, f_448, f_451, f_450, f_445, f_447, f_446, f_443, f_437, f_436, f_433, f_432, f_435, f_434, f_429, f_428, f_431, f_430, f_426, f_413, f_412, f_415, f_414, f_409, f_408, f_411, f_410, f_404, f_407, f_406, f_403; int i_242, i_495, i_233, i_489, i_234, i_232, i_235, i_236, i_472, i_221, i_478, i_17, i_18, i_15, i_16, i_21, i_22, i_276, i_13, i_14, i_270, i_259, i_253, i_509, i_510, i_508, i_178, i_438, i_427, i_417, i_418, i_160, i_416, i_421, i_166, i_419, i_420, i_214, i_455, i_461, i_203, i_196, i_185, i_444, i_369, i_118, i_107, i_363, i_98, i_352, i_99, i_100, i_346, i_87, i_143, i_149, i_405, i_138, i_141, i_142, i_398, i_139, i_140, i_386, i_127, i_119, i_120, i_380, i_306, i_47, i_41, i_39, i_295, i_40, i_33, i_34, i_288, i_37, i_38, i_35, i_36, i_23, i_24, i_79, i_335, i_80, i_329, i_327, i_328, i_325, i_326, i_68, i_324, i_313, i_61, i_59, i_60; __global ulong *_frame = (__global ulong *) &_heap_base[_frame_base]; // BLOCK 0 ul_0 = (ulong) _frame[3]; ul_1 = (ulong) _frame[4]; ul_2 = (ulong) _frame[5]; ul_3 = ul_2 + 40L; f_4 = *((__global float *) ul_3); ul_5 = ul_2 + 36L; f_6 = *((__global float *) ul_5); ul_7 = ul_2 + 32L; f_8 = *((__global float *) ul_7); ul_9 = ul_2 + 28L; f_10 = *((__global float *) ul_9); ul_11 = ul_2 + 24L; f_12 = *((__global float *) ul_11); i_13 = get_global_id(1); // BLOCK 1 MERGES [0 83 ] i_14 = i_13; for(;i_14 < 240;) { // BLOCK 2 i_15 = get_global_id(0); // BLOCK 3 MERGES [2 82 ] i_16 = i_15; for(;i_16 < 320;) { // BLOCK 4 i_17 = get_global_size(0); i_18 = i_17 + i_16; ul_19 = ul_0 + 32L; ul_20 = *((__global ulong *) ul_19); i_21 = i_14 << 8; i_22 = i_14 << 6; i_23 = i_21 + i_22; i_24 = i_23 + i_16; l_25 = (long) i_24; l_26 = l_25 << 2; l_27 = l_26 + 24L; ul_28 = ul_20 + l_27; ul_29 = ul_1 + 32L; ul_30 = *((__global ulong *) ul_29); ul_31 = ul_30 + l_27; f_32 = *((__global float *) ul_31); i_33 = isless(0.0F, f_32); if(i_33 == 1) { // BLOCK 5 i_34 = i_16 + -2; i_35 = clamp(i_34, 0, 319); i_36 = i_14 + -2; i_37 = clamp(i_36, 0, 239); i_38 = i_37 << 8; i_39 = i_37 << 6; i_40 = i_38 + i_39; i_41 = i_35 + i_40; l_42 = (long) i_41; l_43 = l_42 << 2; l_44 = l_43 + 24L; ul_45 = ul_30 + l_44; f_46 = *((__global float *) ul_45); i_47 = isless(0.0F, f_46); if(i_47 == 1) { // BLOCK 6 f_50 = f_12 * f_12; f_51 = f_46 - f_32; f_52 = f_51 * f_51; f_53 = -f_52; f_54 = f_53 / 0.020000001F; f_55 = exp(f_54); f_56 = f_50 * f_55; f_57 = fma(f_56, f_46, 0.0F); f_58 = fma(f_50, f_55, 0.0F); f_48 = f_58; f_49 = f_57; } // B6 else { // BLOCK 7 f_48 = 0.0F; f_49 = 0.0F; } // B7 // BLOCK 8 MERGES [7 6 ] i_59 = i_16 + -1; i_60 = clamp(i_59, 0, 319); i_61 = i_60 + i_40; l_62 = (long) i_61; l_63 = l_62 << 2; l_64 = l_63 + 24L; ul_65 = ul_30 + l_64; f_66 = *((__global float *) ul_65); f_67 = f_10 * f_12; i_68 = isless(0.0F, f_66); if(i_68 == 1) { // BLOCK 9 f_71 = f_66 - f_32; f_72 = f_71 * f_71; f_73 = -f_72; f_74 = f_73 / 0.020000001F; f_75 = exp(f_74); f_76 = f_75 * f_67; f_77 = fma(f_76, f_66, f_49); f_78 = fma(f_75, f_67, f_48); f_69 = f_77; f_70 = f_78; } // B9 else { // BLOCK 10 f_69 = f_49; f_70 = f_48; } // B10 // BLOCK 11 MERGES [10 9 ] i_79 = clamp(i_16, 0, 319); i_80 = i_79 + i_40; l_81 = (long) i_80; l_82 = l_81 << 2; l_83 = l_82 + 24L; ul_84 = ul_30 + l_83; f_85 = *((__global float *) ul_84); f_86 = f_8 * f_12; i_87 = isless(0.0F, f_85); if(i_87 == 1) { // BLOCK 12 f_90 = f_85 - f_32; f_91 = f_90 * f_90; f_92 = -f_91; f_93 = f_92 / 0.020000001F; f_94 = exp(f_93); f_95 = f_94 * f_86; f_96 = fma(f_95, f_85, f_69); f_97 = fma(f_94, f_86, f_70); f_88 = f_97; f_89 = f_96; } // B12 else { // BLOCK 13 f_88 = f_70; f_89 = f_69; } // B13 // BLOCK 14 MERGES [13 12 ] i_98 = i_16 + 1; i_99 = clamp(i_98, 0, 319); i_100 = i_99 + i_40; l_101 = (long) i_100; l_102 = l_101 << 2; l_103 = l_102 + 24L; ul_104 = ul_30 + l_103; f_105 = *((__global float *) ul_104); f_106 = f_6 * f_12; i_107 = isless(0.0F, f_105); if(i_107 == 1) { // BLOCK 15 f_110 = f_105 - f_32; f_111 = f_110 * f_110; f_112 = -f_111; f_113 = f_112 / 0.020000001F; f_114 = exp(f_113); f_115 = f_114 * f_106; f_116 = fma(f_115, f_105, f_89); f_117 = fma(f_114, f_106, f_88); f_108 = f_116; f_109 = f_117; } // B15 else { // BLOCK 16 f_108 = f_89; f_109 = f_88; } // B16 // BLOCK 17 MERGES [16 15 ] i_118 = i_16 + 2; i_119 = clamp(i_118, 0, 319); i_120 = i_119 + i_40; l_121 = (long) i_120; l_122 = l_121 << 2; l_123 = l_122 + 24L; ul_124 = ul_30 + l_123; f_125 = *((__global float *) ul_124); f_126 = f_4 * f_12; i_127 = isless(0.0F, f_125); if(i_127 == 1) { // BLOCK 18 f_130 = f_125 - f_32; f_131 = f_130 * f_130; f_132 = -f_131; f_133 = f_132 / 0.020000001F; f_134 = exp(f_133); f_135 = f_134 * f_126; f_136 = fma(f_135, f_125, f_108); f_137 = fma(f_134, f_126, f_109); f_128 = f_137; f_129 = f_136; } // B18 else { // BLOCK 19 f_128 = f_109; f_129 = f_108; } // B19 // BLOCK 20 MERGES [19 18 ] i_138 = i_14 + -1; i_139 = clamp(i_138, 0, 239); i_140 = i_139 << 8; i_141 = i_139 << 6; i_142 = i_140 + i_141; i_143 = i_142 + i_35; l_144 = (long) i_143; l_145 = l_144 << 2; l_146 = l_145 + 24L; ul_147 = ul_30 + l_146; f_148 = *((__global float *) ul_147); i_149 = isless(0.0F, f_148); if(i_149 == 1) { // BLOCK 21 f_152 = f_148 - f_32; f_153 = f_152 * f_152; f_154 = -f_153; f_155 = f_154 / 0.020000001F; f_156 = exp(f_155); f_157 = f_156 * f_67; f_158 = fma(f_157, f_148, f_129); f_159 = fma(f_67, f_156, f_128); f_150 = f_159; f_151 = f_158; } // B21 else { // BLOCK 22 f_150 = f_128; f_151 = f_129; } // B22 // BLOCK 23 MERGES [22 21 ] i_160 = i_60 + i_142; l_161 = (long) i_160; l_162 = l_161 << 2; l_163 = l_162 + 24L; ul_164 = ul_30 + l_163; f_165 = *((__global float *) ul_164); i_166 = isless(0.0F, f_165); if(i_166 == 1) { // BLOCK 24 f_169 = f_10 * f_10; f_170 = f_165 - f_32; f_171 = f_170 * f_170; f_172 = -f_171; f_173 = f_172 / 0.020000001F; f_174 = exp(f_173); f_175 = f_169 * f_174; f_176 = fma(f_175, f_165, f_151); f_177 = fma(f_169, f_174, f_150); f_167 = f_176; f_168 = f_177; } // B24 else { // BLOCK 25 f_167 = f_151; f_168 = f_150; } // B25 // BLOCK 26 MERGES [25 24 ] i_178 = i_79 + i_142; l_179 = (long) i_178; l_180 = l_179 << 2; l_181 = l_180 + 24L; ul_182 = ul_30 + l_181; f_183 = *((__global float *) ul_182); f_184 = f_10 * f_8; i_185 = isless(0.0F, f_183); if(i_185 == 1) { // BLOCK 27 f_188 = f_183 - f_32; f_189 = f_188 * f_188; f_190 = -f_189; f_191 = f_190 / 0.020000001F; f_192 = exp(f_191); f_193 = f_192 * f_184; f_194 = fma(f_193, f_183, f_167); f_195 = fma(f_192, f_184, f_168); f_186 = f_195; f_187 = f_194; } // B27 else { // BLOCK 28 f_186 = f_168; f_187 = f_167; } // B28 // BLOCK 29 MERGES [28 27 ] i_196 = i_99 + i_142; l_197 = (long) i_196; l_198 = l_197 << 2; l_199 = l_198 + 24L; ul_200 = ul_30 + l_199; f_201 = *((__global float *) ul_200); f_202 = f_10 * f_6; i_203 = isless(0.0F, f_201); if(i_203 == 1) { // BLOCK 30 f_206 = f_201 - f_32; f_207 = f_206 * f_206; f_208 = -f_207; f_209 = f_208 / 0.020000001F; f_210 = exp(f_209); f_211 = f_210 * f_202; f_212 = fma(f_211, f_201, f_187); f_213 = fma(f_210, f_202, f_186); f_204 = f_212; f_205 = f_213; } // B30 else { // BLOCK 31 f_204 = f_187; f_205 = f_186; } // B31 // BLOCK 32 MERGES [31 30 ] i_214 = i_119 + i_142; l_215 = (long) i_214; l_216 = l_215 << 2; l_217 = l_216 + 24L; ul_218 = ul_30 + l_217; f_219 = *((__global float *) ul_218); f_220 = f_10 * f_4; i_221 = isless(0.0F, f_219); if(i_221 == 1) { // BLOCK 33 f_224 = f_219 - f_32; f_225 = f_224 * f_224; f_226 = -f_225; f_227 = f_226 / 0.020000001F; f_228 = exp(f_227); f_229 = f_228 * f_220; f_230 = fma(f_229, f_219, f_204); f_231 = fma(f_228, f_220, f_205); f_222 = f_231; f_223 = f_230; } // B33 else { // BLOCK 34 f_222 = f_205; f_223 = f_204; } // B34 // BLOCK 35 MERGES [34 33 ] i_232 = clamp(i_14, 0, 239); i_233 = i_232 << 8; i_234 = i_232 << 6; i_235 = i_233 + i_234; i_236 = i_235 + i_35; l_237 = (long) i_236; l_238 = l_237 << 2; l_239 = l_238 + 24L; ul_240 = ul_30 + l_239; f_241 = *((__global float *) ul_240); i_242 = isless(0.0F, f_241); if(i_242 == 1) { // BLOCK 36 f_245 = f_241 - f_32; f_246 = f_245 * f_245; f_247 = -f_246; f_248 = f_247 / 0.020000001F; f_249 = exp(f_248); f_250 = f_249 * f_86; f_251 = fma(f_250, f_241, f_223); f_252 = fma(f_86, f_249, f_222); f_243 = f_252; f_244 = f_251; } // B36 else { // BLOCK 37 f_243 = f_222; f_244 = f_223; } // B37 // BLOCK 38 MERGES [37 36 ] i_253 = i_60 + i_235; l_254 = (long) i_253; l_255 = l_254 << 2; l_256 = l_255 + 24L; ul_257 = ul_30 + l_256; f_258 = *((__global float *) ul_257); i_259 = isless(0.0F, f_258); if(i_259 == 1) { // BLOCK 39 f_262 = f_258 - f_32; f_263 = f_262 * f_262; f_264 = -f_263; f_265 = f_264 / 0.020000001F; f_266 = exp(f_265); f_267 = f_266 * f_184; f_268 = fma(f_267, f_258, f_244); f_269 = fma(f_184, f_266, f_243); f_260 = f_268; f_261 = f_269; } // B39 else { // BLOCK 40 f_260 = f_244; f_261 = f_243; } // B40 // BLOCK 41 MERGES [40 39 ] i_270 = i_79 + i_235; l_271 = (long) i_270; l_272 = l_271 << 2; l_273 = l_272 + 24L; ul_274 = ul_30 + l_273; f_275 = *((__global float *) ul_274); i_276 = isless(0.0F, f_275); if(i_276 == 1) { // BLOCK 42 f_279 = f_8 * f_8; f_280 = f_275 - f_32; f_281 = f_280 * f_280; f_282 = -f_281; f_283 = f_282 / 0.020000001F; f_284 = exp(f_283); f_285 = f_279 * f_284; f_286 = fma(f_285, f_275, f_260); f_287 = fma(f_279, f_284, f_261); f_277 = f_287; f_278 = f_286; } // B42 else { // BLOCK 43 f_277 = f_261; f_278 = f_260; } // B43 // BLOCK 44 MERGES [43 42 ] i_288 = i_99 + i_235; l_289 = (long) i_288; l_290 = l_289 << 2; l_291 = l_290 + 24L; ul_292 = ul_30 + l_291; f_293 = *((__global float *) ul_292); f_294 = f_8 * f_6; i_295 = isless(0.0F, f_293); if(i_295 == 1) { // BLOCK 45 f_298 = f_293 - f_32; f_299 = f_298 * f_298; f_300 = -f_299; f_301 = f_300 / 0.020000001F; f_302 = exp(f_301); f_303 = f_302 * f_294; f_304 = fma(f_303, f_293, f_278); f_305 = fma(f_302, f_294, f_277); f_296 = f_304; f_297 = f_305; } // B45 else { // BLOCK 46 f_296 = f_278; f_297 = f_277; } // B46 // BLOCK 47 MERGES [46 45 ] i_306 = i_119 + i_235; l_307 = (long) i_306; l_308 = l_307 << 2; l_309 = l_308 + 24L; ul_310 = ul_30 + l_309; f_311 = *((__global float *) ul_310); f_312 = f_8 * f_4; i_313 = isless(0.0F, f_311); if(i_313 == 1) { // BLOCK 48 f_316 = f_311 - f_32; f_317 = f_316 * f_316; f_318 = -f_317; f_319 = f_318 / 0.020000001F; f_320 = exp(f_319); f_321 = f_320 * f_312; f_322 = fma(f_321, f_311, f_296); f_323 = fma(f_320, f_312, f_297); f_314 = f_323; f_315 = f_322; } // B48 else { // BLOCK 49 f_314 = f_297; f_315 = f_296; } // B49 // BLOCK 50 MERGES [49 48 ] i_324 = i_14 + 1; i_325 = clamp(i_324, 0, 239); i_326 = i_325 << 8; i_327 = i_325 << 6; i_328 = i_326 + i_327; i_329 = i_328 + i_35; l_330 = (long) i_329; l_331 = l_330 << 2; l_332 = l_331 + 24L; ul_333 = ul_30 + l_332; f_334 = *((__global float *) ul_333); i_335 = isless(0.0F, f_334); if(i_335 == 1) { // BLOCK 51 f_338 = f_334 - f_32; f_339 = f_338 * f_338; f_340 = -f_339; f_341 = f_340 / 0.020000001F; f_342 = exp(f_341); f_343 = f_342 * f_106; f_344 = fma(f_343, f_334, f_315); f_345 = fma(f_106, f_342, f_314); f_336 = f_345; f_337 = f_344; } // B51 else { // BLOCK 52 f_336 = f_314; f_337 = f_315; } // B52 // BLOCK 53 MERGES [52 51 ] i_346 = i_60 + i_328; l_347 = (long) i_346; l_348 = l_347 << 2; l_349 = l_348 + 24L; ul_350 = ul_30 + l_349; f_351 = *((__global float *) ul_350); i_352 = isless(0.0F, f_351); if(i_352 == 1) { // BLOCK 54 f_355 = f_351 - f_32; f_356 = f_355 * f_355; f_357 = -f_356; f_358 = f_357 / 0.020000001F; f_359 = exp(f_358); f_360 = f_359 * f_202; f_361 = fma(f_360, f_351, f_337); f_362 = fma(f_202, f_359, f_336); f_353 = f_361; f_354 = f_362; } // B54 else { // BLOCK 55 f_353 = f_337; f_354 = f_336; } // B55 // BLOCK 56 MERGES [55 54 ] i_363 = i_79 + i_328; l_364 = (long) i_363; l_365 = l_364 << 2; l_366 = l_365 + 24L; ul_367 = ul_30 + l_366; f_368 = *((__global float *) ul_367); i_369 = isless(0.0F, f_368); if(i_369 == 1) { // BLOCK 57 f_372 = f_368 - f_32; f_373 = f_372 * f_372; f_374 = -f_373; f_375 = f_374 / 0.020000001F; f_376 = exp(f_375); f_377 = f_376 * f_294; f_378 = fma(f_377, f_368, f_353); f_379 = fma(f_294, f_376, f_354); f_370 = f_379; f_371 = f_378; } // B57 else { // BLOCK 58 f_370 = f_354; f_371 = f_353; } // B58 // BLOCK 59 MERGES [58 57 ] i_380 = i_99 + i_328; l_381 = (long) i_380; l_382 = l_381 << 2; l_383 = l_382 + 24L; ul_384 = ul_30 + l_383; f_385 = *((__global float *) ul_384); i_386 = isless(0.0F, f_385); if(i_386 == 1) { // BLOCK 60 f_389 = f_6 * f_6; f_390 = f_385 - f_32; f_391 = f_390 * f_390; f_392 = -f_391; f_393 = f_392 / 0.020000001F; f_394 = exp(f_393); f_395 = f_389 * f_394; f_396 = fma(f_395, f_385, f_371); f_397 = fma(f_389, f_394, f_370); f_387 = f_396; f_388 = f_397; } // B60 else { // BLOCK 61 f_387 = f_371; f_388 = f_370; } // B61 // BLOCK 62 MERGES [61 60 ] i_398 = i_119 + i_328; l_399 = (long) i_398; l_400 = l_399 << 2; l_401 = l_400 + 24L; ul_402 = ul_30 + l_401; f_403 = *((__global float *) ul_402); f_404 = f_6 * f_4; i_405 = isless(0.0F, f_403); if(i_405 == 1) { // BLOCK 63 f_408 = f_403 - f_32; f_409 = f_408 * f_408; f_410 = -f_409; f_411 = f_410 / 0.020000001F; f_412 = exp(f_411); f_413 = f_412 * f_404; f_414 = fma(f_413, f_403, f_387); f_415 = fma(f_412, f_404, f_388); f_406 = f_415; f_407 = f_414; } // B63 else { // BLOCK 64 f_406 = f_388; f_407 = f_387; } // B64 // BLOCK 65 MERGES [64 63 ] i_416 = i_14 + 2; i_417 = clamp(i_416, 0, 239); i_418 = i_417 << 8; i_419 = i_417 << 6; i_420 = i_418 + i_419; i_421 = i_420 + i_35; l_422 = (long) i_421; l_423 = l_422 << 2; l_424 = l_423 + 24L; ul_425 = ul_30 + l_424; f_426 = *((__global float *) ul_425); i_427 = isless(0.0F, f_426); if(i_427 == 1) { // BLOCK 66 f_430 = f_426 - f_32; f_431 = f_430 * f_430; f_432 = -f_431; f_433 = f_432 / 0.020000001F; f_434 = exp(f_433); f_435 = f_434 * f_126; f_436 = fma(f_435, f_426, f_407); f_437 = fma(f_126, f_434, f_406); f_428 = f_437; f_429 = f_436; } // B66 else { // BLOCK 67 f_428 = f_406; f_429 = f_407; } // B67 // BLOCK 68 MERGES [67 66 ] i_438 = i_60 + i_420; l_439 = (long) i_438; l_440 = l_439 << 2; l_441 = l_440 + 24L; ul_442 = ul_30 + l_441; f_443 = *((__global float *) ul_442); i_444 = isless(0.0F, f_443); if(i_444 == 1) { // BLOCK 69 f_447 = f_443 - f_32; f_448 = f_447 * f_447; f_449 = -f_448; f_450 = f_449 / 0.020000001F; f_451 = exp(f_450); f_452 = f_451 * f_220; f_453 = fma(f_452, f_443, f_429); f_454 = fma(f_220, f_451, f_428); f_445 = f_453; f_446 = f_454; } // B69 else { // BLOCK 70 f_445 = f_429; f_446 = f_428; } // B70 // BLOCK 71 MERGES [70 69 ] i_455 = i_79 + i_420; l_456 = (long) i_455; l_457 = l_456 << 2; l_458 = l_457 + 24L; ul_459 = ul_30 + l_458; f_460 = *((__global float *) ul_459); i_461 = isless(0.0F, f_460); if(i_461 == 1) { // BLOCK 72 f_464 = f_460 - f_32; f_465 = f_464 * f_464; f_466 = -f_465; f_467 = f_466 / 0.020000001F; f_468 = exp(f_467); f_469 = f_468 * f_312; f_470 = fma(f_469, f_460, f_445); f_471 = fma(f_312, f_468, f_446); f_462 = f_471; f_463 = f_470; } // B72 else { // BLOCK 73 f_462 = f_446; f_463 = f_445; } // B73 // BLOCK 74 MERGES [73 72 ] i_472 = i_99 + i_420; l_473 = (long) i_472; l_474 = l_473 << 2; l_475 = l_474 + 24L; ul_476 = ul_30 + l_475; f_477 = *((__global float *) ul_476); i_478 = isless(0.0F, f_477); if(i_478 == 1) { // BLOCK 75 f_481 = f_477 - f_32; f_482 = f_481 * f_481; f_483 = -f_482; f_484 = f_483 / 0.020000001F; f_485 = exp(f_484); f_486 = f_485 * f_404; f_487 = fma(f_486, f_477, f_463); f_488 = fma(f_404, f_485, f_462); f_479 = f_487; f_480 = f_488; } // B75 else { // BLOCK 76 f_479 = f_463; f_480 = f_462; } // B76 // BLOCK 77 MERGES [76 75 ] i_489 = i_119 + i_420; l_490 = (long) i_489; l_491 = l_490 << 2; l_492 = l_491 + 24L; ul_493 = ul_30 + l_492; f_494 = *((__global float *) ul_493); i_495 = isless(0.0F, f_494); if(i_495 == 1) { // BLOCK 78 f_498 = f_4 * f_4; f_499 = f_494 - f_32; f_500 = f_499 * f_499; f_501 = -f_500; f_502 = f_501 / 0.020000001F; f_503 = exp(f_502); f_504 = f_498 * f_503; f_505 = fma(f_504, f_494, f_479); f_506 = fma(f_498, f_503, f_480); f_496 = f_506; f_497 = f_505; } // B78 else { // BLOCK 79 f_496 = f_480; f_497 = f_479; } // B79 // BLOCK 80 MERGES [79 78 ] f_507 = f_497 / f_496; *((__global float *) ul_28) = f_507; } // B80 else { // BLOCK 81 *((__global float *) ul_28) = 0.0F; } // B81 // BLOCK 82 MERGES [80 81 ] i_508 = i_18; i_16 = i_508; } // B82 // BLOCK 83 i_509 = get_global_size(1); i_510 = i_509 + i_14; i_14 = i_510; } // B83 // BLOCK 84 return; } // kernel #pragma OPENCL EXTENSION cl_khr_fp64 : enable #pragma OPENCL EXTENSION cl_khr_int64_base_atomics : enable __kernel void resizeImage6(__global uchar *_heap_base, ulong _frame_base, __constant uchar *_constant_region, __local uchar *_local_region, __global int *_atomics) { long l_115, l_243, l_242, l_117, l_116, l_244, l_104, l_103, l_231, l_102, l_230, l_229, l_91, l_90, l_218, l_89, l_217, l_216, l_203, l_74, l_73, l_72, l_205, l_204, l_59, l_187, l_58, l_186, l_57, l_185, l_43, l_42, l_174, l_173, l_44, l_172, l_161, l_160, l_31, l_159, l_30, l_29, l_147, l_146, l_22, l_21, l_20, l_148, l_265, l_264, l_130, l_129, l_128, l_263; ulong ul_149, ul_245, ul_23, ul_118, ul_219, ul_60, ul_92, ul_188, ul_1, ul_257, ul_0, ul_32, ul_131, ul_162, ul_258, ul_7, ul_6, ul_105, ul_232, ul_75, ul_266, ul_45, ul_175, ul_206; float f_256, f_253, f_252, f_255, f_248, f_251, f_250, f_247, f_246, f_240, f_237, f_239, f_238, f_233, f_235, f_234, f_225, f_224, f_227, f_226, f_221, f_220, f_222, f_213, f_212, f_214, f_209, f_208, f_211, f_77, f_76, f_78, f_68, f_65, f_67, f_66, f_61, f_63, f_62, f_53, f_52, f_48, f_51, f_50, f_47, f_46, f_37, f_39, f_38, f_33, f_35, f_34, f_24, f_137, f_136, f_139, f_138, f_133, f_132, f_134, f_125, f_124, f_126, f_121, f_120, f_123, f_119, f_113, f_112, f_108, f_111, f_110, f_107, f_106, f_100, f_97, f_99, f_98, f_93, f_95, f_94, f_81, f_80, f_83, f_82, f_207, f_196, f_193, f_195, f_194, f_189, f_191, f_190, f_181, f_180, f_183, f_182, f_177, f_176, f_178, f_169, f_168, f_170, f_165, f_164, f_167, f_163, f_157, f_156, f_152, f_155, f_154, f_151, f_150; int i_241, i_114, i_109, i_236, i_223, i_96, i_101, i_228, i_87, i_215, i_88, i_17, i_145, i_18, i_15, i_143, i_16, i_144, i_19, i_9, i_10, i_135, i_8, i_13, i_141, i_269, i_14, i_142, i_270, i_11, i_267, i_12, i_140, i_268, i_2, i_127, i_5, i_261, i_262, i_3, i_259, i_4, i_260, i_249, i_122, i_254, i_49, i_54, i_179, i_41, i_40, i_171, i_166, i_36, i_25, i_153, i_26, i_158, i_27, i_28, i_210, i_79, i_85, i_86, i_84, i_201, i_202, i_71, i_199, i_200, i_64, i_192, i_69, i_197, i_70, i_198, i_55, i_56, i_184; __global ulong *_frame = (__global ulong *) &_heap_base[_frame_base]; // BLOCK 0 ul_0 = (ulong) _frame[3]; ul_1 = (ulong) _frame[4]; i_2 = get_global_id(1); // BLOCK 1 MERGES [0 56 ] i_3 = i_2; for(;i_3 < 120;) { // BLOCK 2 i_4 = get_global_id(0); // BLOCK 3 MERGES [2 55 ] i_5 = i_4; for(;i_5 < 160;) { // BLOCK 4 ul_6 = ul_1 + 32L; ul_7 = *((__global ulong *) ul_6); i_8 = i_5 << 1; i_9 = clamp(i_8, 0, 319); i_10 = i_9 + -1; i_11 = clamp(i_10, 0, 319); i_12 = i_3 << 1; i_13 = clamp(i_12, 0, 239); i_14 = i_13 + -1; i_15 = clamp(i_14, 0, 239); i_16 = i_15 << 8; i_17 = i_15 << 6; i_18 = i_16 + i_17; i_19 = i_11 + i_18; l_20 = (long) i_19; l_21 = l_20 << 2; l_22 = l_21 + 24L; ul_23 = ul_7 + l_22; f_24 = *((__global float *) ul_23); i_25 = i_13 << 8; i_26 = i_13 << 6; i_27 = i_25 + i_26; i_28 = i_27 + i_9; l_29 = (long) i_28; l_30 = l_29 << 2; l_31 = l_30 + 24L; ul_32 = ul_7 + l_31; f_33 = *((__global float *) ul_32); f_34 = f_24 - f_33; f_35 = fabs(f_34); i_36 = isless(f_35, 0.3F); if(i_36 == 1) { // BLOCK 5 f_39 = f_24 + 0.0F; f_37 = 1.0F; f_38 = f_39; } // B5 else { // BLOCK 6 f_37 = 0.0F; f_38 = 0.0F; } // B6 // BLOCK 7 MERGES [6 5 ] i_40 = clamp(i_9, 0, 319); i_41 = i_40 + i_18; l_42 = (long) i_41; l_43 = l_42 << 2; l_44 = l_43 + 24L; ul_45 = ul_7 + l_44; f_46 = *((__global float *) ul_45); f_47 = f_46 - f_33; f_48 = fabs(f_47); i_49 = isless(f_48, 0.3F); if(i_49 == 1) { // BLOCK 8 f_52 = f_38 + f_46; f_53 = f_37 + 1.0F; f_50 = f_52; f_51 = f_53; } // B8 else { // BLOCK 9 f_50 = f_38; f_51 = f_37; } // B9 // BLOCK 10 MERGES [9 8 ] i_54 = i_9 + 1; i_55 = clamp(i_54, 0, 319); i_56 = i_55 + i_18; l_57 = (long) i_56; l_58 = l_57 << 2; l_59 = l_58 + 24L; ul_60 = ul_7 + l_59; f_61 = *((__global float *) ul_60); f_62 = f_61 - f_33; f_63 = fabs(f_62); i_64 = isless(f_63, 0.3F); if(i_64 == 1) { // BLOCK 11 f_67 = f_50 + f_61; f_68 = f_51 + 1.0F; f_65 = f_68; f_66 = f_67; } // B11 else { // BLOCK 12 f_65 = f_51; f_66 = f_50; } // B12 // BLOCK 13 MERGES [12 11 ] i_69 = i_9 + 2; i_70 = clamp(i_69, 0, 319); i_71 = i_70 + i_18; l_72 = (long) i_71; l_73 = l_72 << 2; l_74 = l_73 + 24L; ul_75 = ul_7 + l_74; f_76 = *((__global float *) ul_75); f_77 = f_76 - f_33; f_78 = fabs(f_77); i_79 = isless(f_78, 0.3F); if(i_79 == 1) { // BLOCK 14 f_82 = f_66 + f_76; f_83 = f_65 + 1.0F; f_80 = f_83; f_81 = f_82; } // B14 else { // BLOCK 15 f_80 = f_65; f_81 = f_66; } // B15 // BLOCK 16 MERGES [15 14 ] i_84 = clamp(i_13, 0, 239); i_85 = i_84 << 8; i_86 = i_84 << 6; i_87 = i_85 + i_86; i_88 = i_87 + i_11; l_89 = (long) i_88; l_90 = l_89 << 2; l_91 = l_90 + 24L; ul_92 = ul_7 + l_91; f_93 = *((__global float *) ul_92); f_94 = f_93 - f_33; f_95 = fabs(f_94); i_96 = isless(f_95, 0.3F); if(i_96 == 1) { // BLOCK 17 f_99 = f_81 + f_93; f_100 = f_80 + 1.0F; f_97 = f_100; f_98 = f_99; } // B17 else { // BLOCK 18 f_97 = f_80; f_98 = f_81; } // B18 // BLOCK 19 MERGES [18 17 ] i_101 = i_40 + i_87; l_102 = (long) i_101; l_103 = l_102 << 2; l_104 = l_103 + 24L; ul_105 = ul_7 + l_104; f_106 = *((__global float *) ul_105); f_107 = f_106 - f_33; f_108 = fabs(f_107); i_109 = isless(f_108, 0.3F); if(i_109 == 1) { // BLOCK 20 f_112 = f_98 + f_106; f_113 = f_97 + 1.0F; f_110 = f_112; f_111 = f_113; } // B20 else { // BLOCK 21 f_110 = f_98; f_111 = f_97; } // B21 // BLOCK 22 MERGES [21 20 ] i_114 = i_55 + i_87; l_115 = (long) i_114; l_116 = l_115 << 2; l_117 = l_116 + 24L; ul_118 = ul_7 + l_117; f_119 = *((__global float *) ul_118); f_120 = f_119 - f_33; f_121 = fabs(f_120); i_122 = isless(f_121, 0.3F); if(i_122 == 1) { // BLOCK 23 f_125 = f_110 + f_119; f_126 = f_111 + 1.0F; f_123 = f_126; f_124 = f_125; } // B23 else { // BLOCK 24 f_123 = f_111; f_124 = f_110; } // B24 // BLOCK 25 MERGES [24 23 ] i_127 = i_70 + i_87; l_128 = (long) i_127; l_129 = l_128 << 2; l_130 = l_129 + 24L; ul_131 = ul_7 + l_130; f_132 = *((__global float *) ul_131); f_133 = f_132 - f_33; f_134 = fabs(f_133); i_135 = isless(f_134, 0.3F); if(i_135 == 1) { // BLOCK 26 f_138 = f_124 + f_132; f_139 = f_123 + 1.0F; f_136 = f_139; f_137 = f_138; } // B26 else { // BLOCK 27 f_136 = f_123; f_137 = f_124; } // B27 // BLOCK 28 MERGES [27 26 ] i_140 = i_13 + 1; i_141 = clamp(i_140, 0, 239); i_142 = i_141 << 8; i_143 = i_141 << 6; i_144 = i_142 + i_143; i_145 = i_144 + i_11; l_146 = (long) i_145; l_147 = l_146 << 2; l_148 = l_147 + 24L; ul_149 = ul_7 + l_148; f_150 = *((__global float *) ul_149); f_151 = f_150 - f_33; f_152 = fabs(f_151); i_153 = isless(f_152, 0.3F); if(i_153 == 1) { // BLOCK 29 f_156 = f_137 + f_150; f_157 = f_136 + 1.0F; f_154 = f_157; f_155 = f_156; } // B29 else { // BLOCK 30 f_154 = f_136; f_155 = f_137; } // B30 // BLOCK 31 MERGES [30 29 ] i_158 = i_40 + i_144; l_159 = (long) i_158; l_160 = l_159 << 2; l_161 = l_160 + 24L; ul_162 = ul_7 + l_161; f_163 = *((__global float *) ul_162); f_164 = f_163 - f_33; f_165 = fabs(f_164); i_166 = isless(f_165, 0.3F); if(i_166 == 1) { // BLOCK 32 f_169 = f_155 + f_163; f_170 = f_154 + 1.0F; f_167 = f_169; f_168 = f_170; } // B32 else { // BLOCK 33 f_167 = f_155; f_168 = f_154; } // B33 // BLOCK 34 MERGES [33 32 ] i_171 = i_55 + i_144; l_172 = (long) i_171; l_173 = l_172 << 2; l_174 = l_173 + 24L; ul_175 = ul_7 + l_174; f_176 = *((__global float *) ul_175); f_177 = f_176 - f_33; f_178 = fabs(f_177); i_179 = isless(f_178, 0.3F); if(i_179 == 1) { // BLOCK 35 f_182 = f_167 + f_176; f_183 = f_168 + 1.0F; f_180 = f_183; f_181 = f_182; } // B35 else { // BLOCK 36 f_180 = f_168; f_181 = f_167; } // B36 // BLOCK 37 MERGES [36 35 ] i_184 = i_70 + i_144; l_185 = (long) i_184; l_186 = l_185 << 2; l_187 = l_186 + 24L; ul_188 = ul_7 + l_187; f_189 = *((__global float *) ul_188); f_190 = f_189 - f_33; f_191 = fabs(f_190); i_192 = isless(f_191, 0.3F); if(i_192 == 1) { // BLOCK 38 f_195 = f_181 + f_189; f_196 = f_180 + 1.0F; f_193 = f_196; f_194 = f_195; } // B38 else { // BLOCK 39 f_193 = f_180; f_194 = f_181; } // B39 // BLOCK 40 MERGES [39 38 ] i_197 = i_13 + 2; i_198 = clamp(i_197, 0, 239); i_199 = i_198 << 8; i_200 = i_198 << 6; i_201 = i_199 + i_200; i_202 = i_201 + i_11; l_203 = (long) i_202; l_204 = l_203 << 2; l_205 = l_204 + 24L; ul_206 = ul_7 + l_205; f_207 = *((__global float *) ul_206); f_208 = f_207 - f_33; f_209 = fabs(f_208); i_210 = isless(f_209, 0.3F); if(i_210 == 1) { // BLOCK 41 f_213 = f_194 + f_207; f_214 = f_193 + 1.0F; f_211 = f_214; f_212 = f_213; } // B41 else { // BLOCK 42 f_211 = f_193; f_212 = f_194; } // B42 // BLOCK 43 MERGES [42 41 ] i_215 = i_40 + i_201; l_216 = (long) i_215; l_217 = l_216 << 2; l_218 = l_217 + 24L; ul_219 = ul_7 + l_218; f_220 = *((__global float *) ul_219); f_221 = f_220 - f_33; f_222 = fabs(f_221); i_223 = isless(f_222, 0.3F); if(i_223 == 1) { // BLOCK 44 f_226 = f_212 + f_220; f_227 = f_211 + 1.0F; f_224 = f_226; f_225 = f_227; } // B44 else { // BLOCK 45 f_224 = f_212; f_225 = f_211; } // B45 // BLOCK 46 MERGES [45 44 ] i_228 = i_55 + i_201; l_229 = (long) i_228; l_230 = l_229 << 2; l_231 = l_230 + 24L; ul_232 = ul_7 + l_231; f_233 = *((__global float *) ul_232); f_234 = f_233 - f_33; f_235 = fabs(f_234); i_236 = isless(f_235, 0.3F); if(i_236 == 1) { // BLOCK 47 f_239 = f_224 + f_233; f_240 = f_225 + 1.0F; f_237 = f_240; f_238 = f_239; } // B47 else { // BLOCK 48 f_237 = f_225; f_238 = f_224; } // B48 // BLOCK 49 MERGES [48 47 ] i_241 = i_70 + i_201; l_242 = (long) i_241; l_243 = l_242 << 2; l_244 = l_243 + 24L; ul_245 = ul_7 + l_244; f_246 = *((__global float *) ul_245); f_247 = f_246 - f_33; f_248 = fabs(f_247); i_249 = isless(f_248, 0.3F); if(i_249 == 1) { // BLOCK 50 f_252 = f_238 + f_246; f_253 = f_237 + 1.0F; f_250 = f_253; f_251 = f_252; } // B50 else { // BLOCK 51 f_250 = f_237; f_251 = f_238; } // B51 // BLOCK 52 MERGES [51 50 ] i_254 = isless(0.0F, f_250); if(i_254 == 1) { // BLOCK 53 f_256 = f_251 / f_250; f_255 = f_256; } // B53 else { // BLOCK 54 f_255 = 0.0F; } // B54 // BLOCK 55 MERGES [53 54 ] ul_257 = ul_0 + 32L; ul_258 = *((__global ulong *) ul_257); i_259 = i_3 << 7; i_260 = i_3 << 5; i_261 = i_259 + i_260; i_262 = i_261 + i_5; l_263 = (long) i_262; l_264 = l_263 << 2; l_265 = l_264 + 24L; ul_266 = ul_258 + l_265; *((__global float *) ul_266) = f_255; i_267 = get_global_size(0); i_268 = i_267 + i_5; i_5 = i_268; } // B55 // BLOCK 56 i_269 = get_global_size(1); i_270 = i_269 + i_3; i_3 = i_270; } // B56 // BLOCK 57 return; } // kernel #pragma OPENCL EXTENSION cl_khr_fp64 : enable #pragma OPENCL EXTENSION cl_khr_int64_base_atomics : enable __kernel void resizeImage6(__global uchar *_heap_base, ulong _frame_base, __constant uchar *_constant_region, __local uchar *_local_region, __global int *_atomics) { long l_115, l_243, l_242, l_117, l_116, l_244, l_104, l_103, l_231, l_102, l_230, l_229, l_91, l_90, l_218, l_89, l_217, l_216, l_203, l_74, l_73, l_72, l_205, l_204, l_59, l_187, l_58, l_186, l_57, l_185, l_43, l_42, l_174, l_173, l_44, l_172, l_161, l_160, l_31, l_159, l_30, l_29, l_147, l_146, l_22, l_21, l_20, l_148, l_265, l_264, l_130, l_129, l_128, l_263; ulong ul_149, ul_245, ul_23, ul_118, ul_219, ul_60, ul_92, ul_188, ul_1, ul_257, ul_0, ul_32, ul_131, ul_162, ul_258, ul_7, ul_6, ul_105, ul_232, ul_75, ul_266, ul_45, ul_175, ul_206; float f_256, f_253, f_252, f_255, f_248, f_251, f_250, f_247, f_246, f_240, f_237, f_239, f_238, f_233, f_235, f_234, f_225, f_224, f_227, f_226, f_221, f_220, f_222, f_213, f_212, f_214, f_209, f_208, f_211, f_77, f_76, f_78, f_68, f_65, f_67, f_66, f_61, f_63, f_62, f_53, f_52, f_48, f_51, f_50, f_47, f_46, f_37, f_39, f_38, f_33, f_35, f_34, f_24, f_137, f_136, f_139, f_138, f_133, f_132, f_134, f_125, f_124, f_126, f_121, f_120, f_123, f_119, f_113, f_112, f_108, f_111, f_110, f_107, f_106, f_100, f_97, f_99, f_98, f_93, f_95, f_94, f_81, f_80, f_83, f_82, f_207, f_196, f_193, f_195, f_194, f_189, f_191, f_190, f_181, f_180, f_183, f_182, f_177, f_176, f_178, f_169, f_168, f_170, f_165, f_164, f_167, f_163, f_157, f_156, f_152, f_155, f_154, f_151, f_150; int i_241, i_114, i_109, i_236, i_223, i_96, i_101, i_228, i_87, i_215, i_88, i_17, i_145, i_18, i_15, i_143, i_16, i_144, i_19, i_9, i_10, i_135, i_8, i_13, i_141, i_269, i_14, i_142, i_270, i_11, i_267, i_12, i_140, i_268, i_2, i_127, i_5, i_261, i_262, i_3, i_259, i_4, i_260, i_249, i_122, i_254, i_49, i_54, i_179, i_41, i_40, i_171, i_166, i_36, i_25, i_153, i_26, i_158, i_27, i_28, i_210, i_79, i_85, i_86, i_84, i_201, i_202, i_71, i_199, i_200, i_64, i_192, i_69, i_197, i_70, i_198, i_55, i_56, i_184; __global ulong *_frame = (__global ulong *) &_heap_base[_frame_base]; // BLOCK 0 ul_0 = (ulong) _frame[3]; ul_1 = (ulong) _frame[4]; i_2 = get_global_id(1); // BLOCK 1 MERGES [0 56 ] i_3 = i_2; for(;i_3 < 60;) { // BLOCK 2 i_4 = get_global_id(0); // BLOCK 3 MERGES [2 55 ] i_5 = i_4; for(;i_5 < 80;) { // BLOCK 4 ul_6 = ul_1 + 32L; ul_7 = *((__global ulong *) ul_6); i_8 = i_5 << 1; i_9 = clamp(i_8, 0, 159); i_10 = i_9 + -1; i_11 = clamp(i_10, 0, 159); i_12 = i_3 << 1; i_13 = clamp(i_12, 0, 119); i_14 = i_13 + -1; i_15 = clamp(i_14, 0, 119); i_16 = i_15 << 7; i_17 = i_15 << 5; i_18 = i_16 + i_17; i_19 = i_11 + i_18; l_20 = (long) i_19; l_21 = l_20 << 2; l_22 = l_21 + 24L; ul_23 = ul_7 + l_22; f_24 = *((__global float *) ul_23); i_25 = i_13 << 7; i_26 = i_13 << 5; i_27 = i_25 + i_26; i_28 = i_27 + i_9; l_29 = (long) i_28; l_30 = l_29 << 2; l_31 = l_30 + 24L; ul_32 = ul_7 + l_31; f_33 = *((__global float *) ul_32); f_34 = f_24 - f_33; f_35 = fabs(f_34); i_36 = isless(f_35, 0.3F); if(i_36 == 1) { // BLOCK 5 f_39 = f_24 + 0.0F; f_37 = 1.0F; f_38 = f_39; } // B5 else { // BLOCK 6 f_37 = 0.0F; f_38 = 0.0F; } // B6 // BLOCK 7 MERGES [6 5 ] i_40 = clamp(i_9, 0, 159); i_41 = i_40 + i_18; l_42 = (long) i_41; l_43 = l_42 << 2; l_44 = l_43 + 24L; ul_45 = ul_7 + l_44; f_46 = *((__global float *) ul_45); f_47 = f_46 - f_33; f_48 = fabs(f_47); i_49 = isless(f_48, 0.3F); if(i_49 == 1) { // BLOCK 8 f_52 = f_38 + f_46; f_53 = f_37 + 1.0F; f_50 = f_52; f_51 = f_53; } // B8 else { // BLOCK 9 f_50 = f_38; f_51 = f_37; } // B9 // BLOCK 10 MERGES [9 8 ] i_54 = i_9 + 1; i_55 = clamp(i_54, 0, 159); i_56 = i_55 + i_18; l_57 = (long) i_56; l_58 = l_57 << 2; l_59 = l_58 + 24L; ul_60 = ul_7 + l_59; f_61 = *((__global float *) ul_60); f_62 = f_61 - f_33; f_63 = fabs(f_62); i_64 = isless(f_63, 0.3F); if(i_64 == 1) { // BLOCK 11 f_67 = f_50 + f_61; f_68 = f_51 + 1.0F; f_65 = f_68; f_66 = f_67; } // B11 else { // BLOCK 12 f_65 = f_51; f_66 = f_50; } // B12 // BLOCK 13 MERGES [12 11 ] i_69 = i_9 + 2; i_70 = clamp(i_69, 0, 159); i_71 = i_70 + i_18; l_72 = (long) i_71; l_73 = l_72 << 2; l_74 = l_73 + 24L; ul_75 = ul_7 + l_74; f_76 = *((__global float *) ul_75); f_77 = f_76 - f_33; f_78 = fabs(f_77); i_79 = isless(f_78, 0.3F); if(i_79 == 1) { // BLOCK 14 f_82 = f_66 + f_76; f_83 = f_65 + 1.0F; f_80 = f_83; f_81 = f_82; } // B14 else { // BLOCK 15 f_80 = f_65; f_81 = f_66; } // B15 // BLOCK 16 MERGES [15 14 ] i_84 = clamp(i_13, 0, 119); i_85 = i_84 << 7; i_86 = i_84 << 5; i_87 = i_85 + i_86; i_88 = i_87 + i_11; l_89 = (long) i_88; l_90 = l_89 << 2; l_91 = l_90 + 24L; ul_92 = ul_7 + l_91; f_93 = *((__global float *) ul_92); f_94 = f_93 - f_33; f_95 = fabs(f_94); i_96 = isless(f_95, 0.3F); if(i_96 == 1) { // BLOCK 17 f_99 = f_81 + f_93; f_100 = f_80 + 1.0F; f_97 = f_100; f_98 = f_99; } // B17 else { // BLOCK 18 f_97 = f_80; f_98 = f_81; } // B18 // BLOCK 19 MERGES [18 17 ] i_101 = i_40 + i_87; l_102 = (long) i_101; l_103 = l_102 << 2; l_104 = l_103 + 24L; ul_105 = ul_7 + l_104; f_106 = *((__global float *) ul_105); f_107 = f_106 - f_33; f_108 = fabs(f_107); i_109 = isless(f_108, 0.3F); if(i_109 == 1) { // BLOCK 20 f_112 = f_98 + f_106; f_113 = f_97 + 1.0F; f_110 = f_112; f_111 = f_113; } // B20 else { // BLOCK 21 f_110 = f_98; f_111 = f_97; } // B21 // BLOCK 22 MERGES [21 20 ] i_114 = i_55 + i_87; l_115 = (long) i_114; l_116 = l_115 << 2; l_117 = l_116 + 24L; ul_118 = ul_7 + l_117; f_119 = *((__global float *) ul_118); f_120 = f_119 - f_33; f_121 = fabs(f_120); i_122 = isless(f_121, 0.3F); if(i_122 == 1) { // BLOCK 23 f_125 = f_110 + f_119; f_126 = f_111 + 1.0F; f_123 = f_126; f_124 = f_125; } // B23 else { // BLOCK 24 f_123 = f_111; f_124 = f_110; } // B24 // BLOCK 25 MERGES [24 23 ] i_127 = i_70 + i_87; l_128 = (long) i_127; l_129 = l_128 << 2; l_130 = l_129 + 24L; ul_131 = ul_7 + l_130; f_132 = *((__global float *) ul_131); f_133 = f_132 - f_33; f_134 = fabs(f_133); i_135 = isless(f_134, 0.3F); if(i_135 == 1) { // BLOCK 26 f_138 = f_124 + f_132; f_139 = f_123 + 1.0F; f_136 = f_139; f_137 = f_138; } // B26 else { // BLOCK 27 f_136 = f_123; f_137 = f_124; } // B27 // BLOCK 28 MERGES [27 26 ] i_140 = i_13 + 1; i_141 = clamp(i_140, 0, 119); i_142 = i_141 << 7; i_143 = i_141 << 5; i_144 = i_142 + i_143; i_145 = i_144 + i_11; l_146 = (long) i_145; l_147 = l_146 << 2; l_148 = l_147 + 24L; ul_149 = ul_7 + l_148; f_150 = *((__global float *) ul_149); f_151 = f_150 - f_33; f_152 = fabs(f_151); i_153 = isless(f_152, 0.3F); if(i_153 == 1) { // BLOCK 29 f_156 = f_137 + f_150; f_157 = f_136 + 1.0F; f_154 = f_157; f_155 = f_156; } // B29 else { // BLOCK 30 f_154 = f_136; f_155 = f_137; } // B30 // BLOCK 31 MERGES [30 29 ] i_158 = i_40 + i_144; l_159 = (long) i_158; l_160 = l_159 << 2; l_161 = l_160 + 24L; ul_162 = ul_7 + l_161; f_163 = *((__global float *) ul_162); f_164 = f_163 - f_33; f_165 = fabs(f_164); i_166 = isless(f_165, 0.3F); if(i_166 == 1) { // BLOCK 32 f_169 = f_155 + f_163; f_170 = f_154 + 1.0F; f_167 = f_169; f_168 = f_170; } // B32 else { // BLOCK 33 f_167 = f_155; f_168 = f_154; } // B33 // BLOCK 34 MERGES [33 32 ] i_171 = i_55 + i_144; l_172 = (long) i_171; l_173 = l_172 << 2; l_174 = l_173 + 24L; ul_175 = ul_7 + l_174; f_176 = *((__global float *) ul_175); f_177 = f_176 - f_33; f_178 = fabs(f_177); i_179 = isless(f_178, 0.3F); if(i_179 == 1) { // BLOCK 35 f_182 = f_167 + f_176; f_183 = f_168 + 1.0F; f_180 = f_183; f_181 = f_182; } // B35 else { // BLOCK 36 f_180 = f_168; f_181 = f_167; } // B36 // BLOCK 37 MERGES [36 35 ] i_184 = i_70 + i_144; l_185 = (long) i_184; l_186 = l_185 << 2; l_187 = l_186 + 24L; ul_188 = ul_7 + l_187; f_189 = *((__global float *) ul_188); f_190 = f_189 - f_33; f_191 = fabs(f_190); i_192 = isless(f_191, 0.3F); if(i_192 == 1) { // BLOCK 38 f_195 = f_181 + f_189; f_196 = f_180 + 1.0F; f_193 = f_196; f_194 = f_195; } // B38 else { // BLOCK 39 f_193 = f_180; f_194 = f_181; } // B39 // BLOCK 40 MERGES [39 38 ] i_197 = i_13 + 2; i_198 = clamp(i_197, 0, 119); i_199 = i_198 << 7; i_200 = i_198 << 5; i_201 = i_199 + i_200; i_202 = i_201 + i_11; l_203 = (long) i_202; l_204 = l_203 << 2; l_205 = l_204 + 24L; ul_206 = ul_7 + l_205; f_207 = *((__global float *) ul_206); f_208 = f_207 - f_33; f_209 = fabs(f_208); i_210 = isless(f_209, 0.3F); if(i_210 == 1) { // BLOCK 41 f_213 = f_194 + f_207; f_214 = f_193 + 1.0F; f_211 = f_214; f_212 = f_213; } // B41 else { // BLOCK 42 f_211 = f_193; f_212 = f_194; } // B42 // BLOCK 43 MERGES [42 41 ] i_215 = i_40 + i_201; l_216 = (long) i_215; l_217 = l_216 << 2; l_218 = l_217 + 24L; ul_219 = ul_7 + l_218; f_220 = *((__global float *) ul_219); f_221 = f_220 - f_33; f_222 = fabs(f_221); i_223 = isless(f_222, 0.3F); if(i_223 == 1) { // BLOCK 44 f_226 = f_212 + f_220; f_227 = f_211 + 1.0F; f_224 = f_226; f_225 = f_227; } // B44 else { // BLOCK 45 f_224 = f_212; f_225 = f_211; } // B45 // BLOCK 46 MERGES [45 44 ] i_228 = i_55 + i_201; l_229 = (long) i_228; l_230 = l_229 << 2; l_231 = l_230 + 24L; ul_232 = ul_7 + l_231; f_233 = *((__global float *) ul_232); f_234 = f_233 - f_33; f_235 = fabs(f_234); i_236 = isless(f_235, 0.3F); if(i_236 == 1) { // BLOCK 47 f_239 = f_224 + f_233; f_240 = f_225 + 1.0F; f_237 = f_240; f_238 = f_239; } // B47 else { // BLOCK 48 f_237 = f_225; f_238 = f_224; } // B48 // BLOCK 49 MERGES [48 47 ] i_241 = i_70 + i_201; l_242 = (long) i_241; l_243 = l_242 << 2; l_244 = l_243 + 24L; ul_245 = ul_7 + l_244; f_246 = *((__global float *) ul_245); f_247 = f_246 - f_33; f_248 = fabs(f_247); i_249 = isless(f_248, 0.3F); if(i_249 == 1) { // BLOCK 50 f_252 = f_238 + f_246; f_253 = f_237 + 1.0F; f_250 = f_253; f_251 = f_252; } // B50 else { // BLOCK 51 f_250 = f_237; f_251 = f_238; } // B51 // BLOCK 52 MERGES [51 50 ] i_254 = isless(0.0F, f_250); if(i_254 == 1) { // BLOCK 53 f_256 = f_251 / f_250; f_255 = f_256; } // B53 else { // BLOCK 54 f_255 = 0.0F; } // B54 // BLOCK 55 MERGES [53 54 ] ul_257 = ul_0 + 32L; ul_258 = *((__global ulong *) ul_257); i_259 = i_3 << 6; i_260 = i_3 << 4; i_261 = i_259 + i_260; i_262 = i_261 + i_5; l_263 = (long) i_262; l_264 = l_263 << 2; l_265 = l_264 + 24L; ul_266 = ul_258 + l_265; *((__global float *) ul_266) = f_255; i_267 = get_global_size(0); i_268 = i_267 + i_5; i_5 = i_268; } // B55 // BLOCK 56 i_269 = get_global_size(1); i_270 = i_269 + i_3; i_3 = i_270; } // B56 // BLOCK 57 return; } // kernel #pragma OPENCL EXTENSION cl_khr_fp64 : enable #pragma OPENCL EXTENSION cl_khr_int64_base_atomics : enable __kernel void depth2vertex(__global uchar *_heap_base, ulong _frame_base, __constant uchar *_constant_region, __local uchar *_local_region, __global int *_atomics) { long l_75, l_77, l_76, l_23, l_22, l_21; ulong ul_24, ul_1, ul_0, ul_3, ul_2, ul_5, ul_4, ul_7, ul_71, ul_9, ul_72, ul_15, ul_78, ul_16; float f_69, f_68, f_65, f_64, f_67, f_61, f_60, f_62, f_57, f_59, f_58, f_52, f_55, f_54, f_49, f_48, f_51, f_50, f_45, f_44, f_47, f_41, f_40, f_42, f_37, f_36, f_39, f_33, f_35, f_34, f_29, f_28, f_30, f_25; float4 v4f_6, v4f_8, v4f_10; float3 v3f_66, v3f_46, v3f_31, v3f_63, v3f_32, v3f_27, v3f_43, v3f_53, v3f_38, v3f_70, v3f_56; int i_17, i_81, i_18, i_82, i_79, i_80, i_19, i_20, i_73, i_74, i_13, i_14, i_11, i_12, i_26; __global ulong *_frame = (__global ulong *) &_heap_base[_frame_base]; // BLOCK 0 ul_0 = (ulong) _frame[3]; ul_1 = (ulong) _frame[4]; ul_2 = (ulong) _frame[5]; ul_3 = ul_2 + 24L; ul_4 = *((__global ulong *) ul_3); ul_5 = ul_4 + 24L; v4f_6 = vload4(0, (__global float *) ul_5); ul_7 = ul_4 + 40L; v4f_8 = vload4(0, (__global float *) ul_7); ul_9 = ul_4 + 56L; v4f_10 = vload4(0, (__global float *) ul_9); i_11 = get_global_id(1); // BLOCK 1 MERGES [0 8 ] i_12 = i_11; for(;i_12 < 240;) { // BLOCK 2 i_13 = get_global_id(0); // BLOCK 3 MERGES [2 7 ] i_14 = i_13; for(;i_14 < 320;) { // BLOCK 4 ul_15 = ul_1 + 32L; ul_16 = *((__global ulong *) ul_15); i_17 = i_12 << 8; i_18 = i_12 << 6; i_19 = i_17 + i_18; i_20 = i_19 + i_14; l_21 = (long) i_20; l_22 = l_21 << 2; l_23 = l_22 + 24L; ul_24 = ul_16 + l_23; f_25 = *((__global float *) ul_24); i_26 = isless(0.0F, f_25); if(i_26 == 1) { // BLOCK 5 f_33 = v4f_6.s0; f_34 = v4f_6.s1; f_35 = v4f_6.s2; v3f_32 = (float3)(f_33, f_34, f_35); f_36 = (float) i_14; f_37 = (float) i_12; f_39 = 1.0F; v3f_38 = (float3)(f_36, f_37, f_39); f_40 = v3f_32.s0 * v3f_38.s0; f_41 = v3f_32.s1 * v3f_38.s1; f_42 = v3f_32.s2 * v3f_38.s2; v3f_43 = (float3)(f_40, f_41, f_42); f_44 = v3f_43.s0 + v3f_43.s1; f_45 = f_44 + v3f_43.s2; f_47 = v4f_8.s0; f_48 = v4f_8.s1; f_49 = v4f_8.s2; v3f_46 = (float3)(f_47, f_48, f_49); f_50 = v3f_46.s0 * v3f_38.s0; f_51 = v3f_46.s1 * v3f_38.s1; f_52 = v3f_46.s2 * v3f_38.s2; v3f_53 = (float3)(f_50, f_51, f_52); f_54 = v3f_53.s0 + v3f_53.s1; f_55 = f_54 + v3f_53.s2; f_57 = v4f_10.s0; f_58 = v4f_10.s1; f_59 = v4f_10.s2; v3f_56 = (float3)(f_57, f_58, f_59); f_60 = v3f_56.s0 * v3f_38.s0; f_61 = v3f_56.s1 * v3f_38.s1; f_62 = v3f_56.s2 * v3f_38.s2; v3f_63 = (float3)(f_60, f_61, f_62); f_64 = v3f_63.s0 + v3f_63.s1; f_65 = f_64 + v3f_63.s2; v3f_66 = (float3)(f_45, f_55, f_65); f_67 = v3f_66.s0 * f_25; f_68 = v3f_66.s1 * f_25; f_69 = v3f_66.s2 * f_25; v3f_70 = (float3)(f_67, f_68, f_69); v3f_31 = v3f_70; } // B5 else { // BLOCK 6 f_28 = 0.0F; f_29 = 0.0F; f_30 = 0.0F; v3f_27 = (float3)(f_28, f_29, f_30); v3f_31 = v3f_27; } // B6 // BLOCK 7 MERGES [5 6 ] ul_71 = ul_0 + 32L; ul_72 = *((__global ulong *) ul_71); i_73 = i_20 << 1; i_74 = i_73 + i_20; l_75 = (long) i_74; l_76 = l_75 << 2; l_77 = l_76 + 24L; ul_78 = ul_72 + l_77; vstore3(v3f_31, 0, (__global float *) ul_78); i_79 = get_global_size(0); i_80 = i_79 + i_14; i_14 = i_80; } // B7 // BLOCK 8 i_81 = get_global_size(1); i_82 = i_81 + i_12; i_12 = i_82; } // B8 // BLOCK 9 return; } // kernel #pragma OPENCL EXTENSION cl_khr_fp64 : enable #pragma OPENCL EXTENSION cl_khr_int64_base_atomics : enable __kernel void vertex2normal(__global uchar *_heap_base, ulong _frame_base, __constant uchar *_constant_region, __local uchar *_local_region, __global int *_atomics) { long l_27, l_26, l_28, l_18, l_17, l_16, l_54, l_53, l_52, l_41, l_40, l_39, l_103, l_102, l_101; ulong ul_7, ul_55, ul_6, ul_104, ul_42, ul_29, ul_1, ul_97, ul_0, ul_96, ul_19; float f_77, f_76, f_79, f_73, f_72, f_75, f_74, f_69, f_71, f_70, f_65, f_67, f_66, f_61, f_63, f_62, f_93, f_95, f_94, f_89, f_88, f_85, f_84, f_87, f_86, f_81, f_80, f_83; float3 v3f_82, v3f_20, v3f_68, v3f_30, v3f_78, v3f_64, v3f_90, v3f_43, v3f_91, v3f_92, v3f_56; int i_49, i_50, i_47, i_48, i_51, i_105, i_106, i_45, i_46, i_107, i_44, i_108, i_33, i_34, i_98, i_31, i_32, i_37, i_38, i_35, i_99, i_36, i_100, i_25, i_23, i_24, i_15, i_21, i_22, i_9, i_10, i_8, i_13, i_14, i_11, i_12, i_2, i_5, i_3, i_4; bool z_60, z_58, z_59, z_57; __global ulong *_frame = (__global ulong *) &_heap_base[_frame_base]; // BLOCK 0 ul_0 = (ulong) _frame[3]; ul_1 = (ulong) _frame[4]; i_2 = get_global_id(1); // BLOCK 1 MERGES [0 8 ] i_3 = i_2; for(;i_3 < 240;) { // BLOCK 2 i_4 = get_global_id(0); // BLOCK 3 MERGES [2 7 ] i_5 = i_4; for(;i_5 < 320;) { // BLOCK 4 ul_6 = ul_1 + 32L; ul_7 = *((__global ulong *) ul_6); i_8 = i_5 + -1; i_9 = max(i_8, 0); i_10 = i_3 << 8; i_11 = i_3 << 6; i_12 = i_10 + i_11; i_13 = i_9 + i_12; i_14 = i_13 << 1; i_15 = i_14 + i_13; l_16 = (long) i_15; l_17 = l_16 << 2; l_18 = l_17 + 24L; ul_19 = ul_7 + l_18; v3f_20 = vload3(0, (__global float *) ul_19); i_21 = i_5 + 1; i_22 = min(i_21, 319); i_23 = i_22 + i_12; i_24 = i_23 << 1; i_25 = i_24 + i_23; l_26 = (long) i_25; l_27 = l_26 << 2; l_28 = l_27 + 24L; ul_29 = ul_7 + l_28; v3f_30 = vload3(0, (__global float *) ul_29); i_31 = i_3 + -1; i_32 = max(i_31, 0); i_33 = i_32 << 8; i_34 = i_32 << 6; i_35 = i_33 + i_34; i_36 = i_35 + i_5; i_37 = i_36 << 1; i_38 = i_37 + i_36; l_39 = (long) i_38; l_40 = l_39 << 2; l_41 = l_40 + 24L; ul_42 = ul_7 + l_41; v3f_43 = vload3(0, (__global float *) ul_42); i_44 = i_3 + 1; i_45 = min(i_44, 239); i_46 = i_45 << 8; i_47 = i_45 << 6; i_48 = i_46 + i_47; i_49 = i_48 + i_5; i_50 = i_49 << 1; i_51 = i_50 + i_49; l_52 = (long) i_51; l_53 = l_52 << 2; l_54 = l_53 + 24L; ul_55 = ul_7 + l_54; v3f_56 = vload3(0, (__global float *) ul_55); z_57 = isequal(v3f_43.s2, 0.0F) || isequal(v3f_56.s2, 0.0F); z_58 = isequal(v3f_30.s2, 0.0F) || z_57; z_59 = isequal(v3f_20.s2, 0.0F) || z_58; z_60 = isequal(v3f_20.s2, 0.0F) || z_58; if(z_60) { // BLOCK 5 f_93 = -2.0F; f_94 = 0.0F; f_95 = 0.0F; v3f_92 = (float3)(f_93, f_94, f_95); v3f_91 = v3f_92; } // B5 else { // BLOCK 6 f_61 = v3f_56.s0 - v3f_43.s0; f_62 = v3f_56.s1 - v3f_43.s1; f_63 = v3f_56.s2 - v3f_43.s2; v3f_64 = (float3)(f_61, f_62, f_63); f_65 = v3f_30.s0 - v3f_20.s0; f_66 = v3f_30.s1 - v3f_20.s1; f_67 = v3f_30.s2 - v3f_20.s2; v3f_68 = (float3)(f_65, f_66, f_67); f_69 = v3f_64.s1 * v3f_68.s2; f_70 = v3f_64.s2 * v3f_68.s1; f_71 = f_69 - f_70; f_72 = v3f_68.s0 * v3f_64.s2; f_73 = v3f_64.s0 * v3f_68.s2; f_74 = f_72 - f_73; f_75 = v3f_68.s1 * v3f_64.s0; f_76 = v3f_64.s1 * v3f_68.s0; f_77 = f_75 - f_76; v3f_78 = (float3)(f_71, f_74, f_77); f_79 = v3f_78.s0 * v3f_78.s0; f_80 = v3f_78.s1 * v3f_78.s1; f_81 = v3f_78.s2 * v3f_78.s2; v3f_82 = (float3)(f_79, f_80, f_81); f_83 = v3f_82.s0 + v3f_82.s1; f_84 = f_83 + v3f_82.s2; f_85 = sqrt(f_84); f_86 = 1.0F / f_85; f_87 = f_86 * v3f_78.s0; f_88 = f_86 * v3f_78.s1; f_89 = f_86 * v3f_78.s2; v3f_90 = (float3)(f_87, f_88, f_89); v3f_91 = v3f_90; } // B6 // BLOCK 7 MERGES [5 6 ] ul_96 = ul_0 + 32L; ul_97 = *((__global ulong *) ul_96); i_98 = i_5 + i_12; i_99 = i_98 << 1; i_100 = i_99 + i_98; l_101 = (long) i_100; l_102 = l_101 << 2; l_103 = l_102 + 24L; ul_104 = ul_97 + l_103; vstore3(v3f_91, 0, (__global float *) ul_104); i_105 = get_global_size(0); i_106 = i_105 + i_5; i_5 = i_106; } // B7 // BLOCK 8 i_107 = get_global_size(1); i_108 = i_107 + i_3; i_3 = i_108; } // B8 // BLOCK 9 return; } // kernel #pragma OPENCL EXTENSION cl_khr_fp64 : enable #pragma OPENCL EXTENSION cl_khr_int64_base_atomics : enable __kernel void depth2vertex(__global uchar *_heap_base, ulong _frame_base, __constant uchar *_constant_region, __local uchar *_local_region, __global int *_atomics) { long l_75, l_77, l_76, l_23, l_22, l_21; ulong ul_24, ul_1, ul_0, ul_3, ul_2, ul_5, ul_4, ul_7, ul_71, ul_9, ul_72, ul_15, ul_78, ul_16; float f_69, f_68, f_65, f_64, f_67, f_61, f_60, f_62, f_57, f_59, f_58, f_52, f_55, f_54, f_49, f_48, f_51, f_50, f_45, f_44, f_47, f_41, f_40, f_42, f_37, f_36, f_39, f_33, f_35, f_34, f_29, f_28, f_30, f_25; float4 v4f_6, v4f_8, v4f_10; float3 v3f_66, v3f_46, v3f_31, v3f_63, v3f_32, v3f_27, v3f_43, v3f_53, v3f_38, v3f_70, v3f_56; int i_17, i_81, i_18, i_82, i_79, i_80, i_19, i_20, i_73, i_74, i_13, i_14, i_11, i_12, i_26; __global ulong *_frame = (__global ulong *) &_heap_base[_frame_base]; // BLOCK 0 ul_0 = (ulong) _frame[3]; ul_1 = (ulong) _frame[4]; ul_2 = (ulong) _frame[5]; ul_3 = ul_2 + 24L; ul_4 = *((__global ulong *) ul_3); ul_5 = ul_4 + 24L; v4f_6 = vload4(0, (__global float *) ul_5); ul_7 = ul_4 + 40L; v4f_8 = vload4(0, (__global float *) ul_7); ul_9 = ul_4 + 56L; v4f_10 = vload4(0, (__global float *) ul_9); i_11 = get_global_id(1); // BLOCK 1 MERGES [0 8 ] i_12 = i_11; for(;i_12 < 120;) { // BLOCK 2 i_13 = get_global_id(0); // BLOCK 3 MERGES [2 7 ] i_14 = i_13; for(;i_14 < 160;) { // BLOCK 4 ul_15 = ul_1 + 32L; ul_16 = *((__global ulong *) ul_15); i_17 = i_12 << 7; i_18 = i_12 << 5; i_19 = i_17 + i_18; i_20 = i_19 + i_14; l_21 = (long) i_20; l_22 = l_21 << 2; l_23 = l_22 + 24L; ul_24 = ul_16 + l_23; f_25 = *((__global float *) ul_24); i_26 = isless(0.0F, f_25); if(i_26 == 1) { // BLOCK 5 f_33 = v4f_6.s0; f_34 = v4f_6.s1; f_35 = v4f_6.s2; v3f_32 = (float3)(f_33, f_34, f_35); f_36 = (float) i_14; f_37 = (float) i_12; f_39 = 1.0F; v3f_38 = (float3)(f_36, f_37, f_39); f_40 = v3f_32.s0 * v3f_38.s0; f_41 = v3f_32.s1 * v3f_38.s1; f_42 = v3f_32.s2 * v3f_38.s2; v3f_43 = (float3)(f_40, f_41, f_42); f_44 = v3f_43.s0 + v3f_43.s1; f_45 = f_44 + v3f_43.s2; f_47 = v4f_8.s0; f_48 = v4f_8.s1; f_49 = v4f_8.s2; v3f_46 = (float3)(f_47, f_48, f_49); f_50 = v3f_46.s0 * v3f_38.s0; f_51 = v3f_46.s1 * v3f_38.s1; f_52 = v3f_46.s2 * v3f_38.s2; v3f_53 = (float3)(f_50, f_51, f_52); f_54 = v3f_53.s0 + v3f_53.s1; f_55 = f_54 + v3f_53.s2; f_57 = v4f_10.s0; f_58 = v4f_10.s1; f_59 = v4f_10.s2; v3f_56 = (float3)(f_57, f_58, f_59); f_60 = v3f_56.s0 * v3f_38.s0; f_61 = v3f_56.s1 * v3f_38.s1; f_62 = v3f_56.s2 * v3f_38.s2; v3f_63 = (float3)(f_60, f_61, f_62); f_64 = v3f_63.s0 + v3f_63.s1; f_65 = f_64 + v3f_63.s2; v3f_66 = (float3)(f_45, f_55, f_65); f_67 = v3f_66.s0 * f_25; f_68 = v3f_66.s1 * f_25; f_69 = v3f_66.s2 * f_25; v3f_70 = (float3)(f_67, f_68, f_69); v3f_31 = v3f_70; } // B5 else { // BLOCK 6 f_28 = 0.0F; f_29 = 0.0F; f_30 = 0.0F; v3f_27 = (float3)(f_28, f_29, f_30); v3f_31 = v3f_27; } // B6 // BLOCK 7 MERGES [5 6 ] ul_71 = ul_0 + 32L; ul_72 = *((__global ulong *) ul_71); i_73 = i_20 << 1; i_74 = i_73 + i_20; l_75 = (long) i_74; l_76 = l_75 << 2; l_77 = l_76 + 24L; ul_78 = ul_72 + l_77; vstore3(v3f_31, 0, (__global float *) ul_78); i_79 = get_global_size(0); i_80 = i_79 + i_14; i_14 = i_80; } // B7 // BLOCK 8 i_81 = get_global_size(1); i_82 = i_81 + i_12; i_12 = i_82; } // B8 // BLOCK 9 return; } // kernel #pragma OPENCL EXTENSION cl_khr_fp64 : enable #pragma OPENCL EXTENSION cl_khr_int64_base_atomics : enable __kernel void vertex2normal(__global uchar *_heap_base, ulong _frame_base, __constant uchar *_constant_region, __local uchar *_local_region, __global int *_atomics) { long l_27, l_26, l_28, l_18, l_17, l_16, l_54, l_53, l_52, l_41, l_40, l_39, l_103, l_102, l_101; ulong ul_7, ul_55, ul_6, ul_104, ul_42, ul_29, ul_1, ul_97, ul_0, ul_96, ul_19; float f_77, f_76, f_79, f_73, f_72, f_75, f_74, f_69, f_71, f_70, f_65, f_67, f_66, f_61, f_63, f_62, f_93, f_95, f_94, f_89, f_88, f_85, f_84, f_87, f_86, f_81, f_80, f_83; float3 v3f_82, v3f_20, v3f_68, v3f_30, v3f_78, v3f_64, v3f_90, v3f_43, v3f_91, v3f_92, v3f_56; int i_49, i_50, i_47, i_48, i_51, i_105, i_106, i_45, i_46, i_107, i_44, i_108, i_33, i_34, i_98, i_31, i_32, i_37, i_38, i_35, i_99, i_36, i_100, i_25, i_23, i_24, i_15, i_21, i_22, i_9, i_10, i_8, i_13, i_14, i_11, i_12, i_2, i_5, i_3, i_4; bool z_60, z_58, z_59, z_57; __global ulong *_frame = (__global ulong *) &_heap_base[_frame_base]; // BLOCK 0 ul_0 = (ulong) _frame[3]; ul_1 = (ulong) _frame[4]; i_2 = get_global_id(1); // BLOCK 1 MERGES [0 8 ] i_3 = i_2; for(;i_3 < 120;) { // BLOCK 2 i_4 = get_global_id(0); // BLOCK 3 MERGES [2 7 ] i_5 = i_4; for(;i_5 < 160;) { // BLOCK 4 ul_6 = ul_1 + 32L; ul_7 = *((__global ulong *) ul_6); i_8 = i_5 + -1; i_9 = max(i_8, 0); i_10 = i_3 << 7; i_11 = i_3 << 5; i_12 = i_10 + i_11; i_13 = i_9 + i_12; i_14 = i_13 << 1; i_15 = i_14 + i_13; l_16 = (long) i_15; l_17 = l_16 << 2; l_18 = l_17 + 24L; ul_19 = ul_7 + l_18; v3f_20 = vload3(0, (__global float *) ul_19); i_21 = i_5 + 1; i_22 = min(i_21, 159); i_23 = i_22 + i_12; i_24 = i_23 << 1; i_25 = i_24 + i_23; l_26 = (long) i_25; l_27 = l_26 << 2; l_28 = l_27 + 24L; ul_29 = ul_7 + l_28; v3f_30 = vload3(0, (__global float *) ul_29); i_31 = i_3 + -1; i_32 = max(i_31, 0); i_33 = i_32 << 7; i_34 = i_32 << 5; i_35 = i_33 + i_34; i_36 = i_35 + i_5; i_37 = i_36 << 1; i_38 = i_37 + i_36; l_39 = (long) i_38; l_40 = l_39 << 2; l_41 = l_40 + 24L; ul_42 = ul_7 + l_41; v3f_43 = vload3(0, (__global float *) ul_42); i_44 = i_3 + 1; i_45 = min(i_44, 119); i_46 = i_45 << 7; i_47 = i_45 << 5; i_48 = i_46 + i_47; i_49 = i_48 + i_5; i_50 = i_49 << 1; i_51 = i_50 + i_49; l_52 = (long) i_51; l_53 = l_52 << 2; l_54 = l_53 + 24L; ul_55 = ul_7 + l_54; v3f_56 = vload3(0, (__global float *) ul_55); z_57 = isequal(v3f_43.s2, 0.0F) || isequal(v3f_56.s2, 0.0F); z_58 = isequal(v3f_30.s2, 0.0F) || z_57; z_59 = isequal(v3f_20.s2, 0.0F) || z_58; z_60 = isequal(v3f_20.s2, 0.0F) || z_58; if(z_60) { // BLOCK 5 f_93 = -2.0F; f_94 = 0.0F; f_95 = 0.0F; v3f_92 = (float3)(f_93, f_94, f_95); v3f_91 = v3f_92; } // B5 else { // BLOCK 6 f_61 = v3f_56.s0 - v3f_43.s0; f_62 = v3f_56.s1 - v3f_43.s1; f_63 = v3f_56.s2 - v3f_43.s2; v3f_64 = (float3)(f_61, f_62, f_63); f_65 = v3f_30.s0 - v3f_20.s0; f_66 = v3f_30.s1 - v3f_20.s1; f_67 = v3f_30.s2 - v3f_20.s2; v3f_68 = (float3)(f_65, f_66, f_67); f_69 = v3f_64.s1 * v3f_68.s2; f_70 = v3f_64.s2 * v3f_68.s1; f_71 = f_69 - f_70; f_72 = v3f_68.s0 * v3f_64.s2; f_73 = v3f_64.s0 * v3f_68.s2; f_74 = f_72 - f_73; f_75 = v3f_68.s1 * v3f_64.s0; f_76 = v3f_64.s1 * v3f_68.s0; f_77 = f_75 - f_76; v3f_78 = (float3)(f_71, f_74, f_77); f_79 = v3f_78.s0 * v3f_78.s0; f_80 = v3f_78.s1 * v3f_78.s1; f_81 = v3f_78.s2 * v3f_78.s2; v3f_82 = (float3)(f_79, f_80, f_81); f_83 = v3f_82.s0 + v3f_82.s1; f_84 = f_83 + v3f_82.s2; f_85 = sqrt(f_84); f_86 = 1.0F / f_85; f_87 = f_86 * v3f_78.s0; f_88 = f_86 * v3f_78.s1; f_89 = f_86 * v3f_78.s2; v3f_90 = (float3)(f_87, f_88, f_89); v3f_91 = v3f_90; } // B6 // BLOCK 7 MERGES [5 6 ] ul_96 = ul_0 + 32L; ul_97 = *((__global ulong *) ul_96); i_98 = i_5 + i_12; i_99 = i_98 << 1; i_100 = i_99 + i_98; l_101 = (long) i_100; l_102 = l_101 << 2; l_103 = l_102 + 24L; ul_104 = ul_97 + l_103; vstore3(v3f_91, 0, (__global float *) ul_104); i_105 = get_global_size(0); i_106 = i_105 + i_5; i_5 = i_106; } // B7 // BLOCK 8 i_107 = get_global_size(1); i_108 = i_107 + i_3; i_3 = i_108; } // B8 // BLOCK 9 return; } // kernel #pragma OPENCL EXTENSION cl_khr_fp64 : enable #pragma OPENCL EXTENSION cl_khr_int64_base_atomics : enable __kernel void depth2vertex(__global uchar *_heap_base, ulong _frame_base, __constant uchar *_constant_region, __local uchar *_local_region, __global int *_atomics) { long l_75, l_77, l_76, l_23, l_22, l_21; ulong ul_24, ul_1, ul_0, ul_3, ul_2, ul_5, ul_4, ul_7, ul_71, ul_9, ul_72, ul_15, ul_78, ul_16; float f_69, f_68, f_65, f_64, f_67, f_61, f_60, f_62, f_57, f_59, f_58, f_52, f_55, f_54, f_49, f_48, f_51, f_50, f_45, f_44, f_47, f_41, f_40, f_42, f_37, f_36, f_39, f_33, f_35, f_34, f_29, f_28, f_30, f_25; float4 v4f_6, v4f_8, v4f_10; float3 v3f_66, v3f_46, v3f_31, v3f_63, v3f_32, v3f_27, v3f_43, v3f_53, v3f_38, v3f_70, v3f_56; int i_17, i_81, i_18, i_82, i_79, i_80, i_19, i_20, i_73, i_74, i_13, i_14, i_11, i_12, i_26; __global ulong *_frame = (__global ulong *) &_heap_base[_frame_base]; // BLOCK 0 ul_0 = (ulong) _frame[3]; ul_1 = (ulong) _frame[4]; ul_2 = (ulong) _frame[5]; ul_3 = ul_2 + 24L; ul_4 = *((__global ulong *) ul_3); ul_5 = ul_4 + 24L; v4f_6 = vload4(0, (__global float *) ul_5); ul_7 = ul_4 + 40L; v4f_8 = vload4(0, (__global float *) ul_7); ul_9 = ul_4 + 56L; v4f_10 = vload4(0, (__global float *) ul_9); i_11 = get_global_id(1); // BLOCK 1 MERGES [0 8 ] i_12 = i_11; for(;i_12 < 60;) { // BLOCK 2 i_13 = get_global_id(0); // BLOCK 3 MERGES [2 7 ] i_14 = i_13; for(;i_14 < 80;) { // BLOCK 4 ul_15 = ul_1 + 32L; ul_16 = *((__global ulong *) ul_15); i_17 = i_12 << 6; i_18 = i_12 << 4; i_19 = i_17 + i_18; i_20 = i_19 + i_14; l_21 = (long) i_20; l_22 = l_21 << 2; l_23 = l_22 + 24L; ul_24 = ul_16 + l_23; f_25 = *((__global float *) ul_24); i_26 = isless(0.0F, f_25); if(i_26 == 1) { // BLOCK 5 f_33 = v4f_6.s0; f_34 = v4f_6.s1; f_35 = v4f_6.s2; v3f_32 = (float3)(f_33, f_34, f_35); f_36 = (float) i_14; f_37 = (float) i_12; f_39 = 1.0F; v3f_38 = (float3)(f_36, f_37, f_39); f_40 = v3f_32.s0 * v3f_38.s0; f_41 = v3f_32.s1 * v3f_38.s1; f_42 = v3f_32.s2 * v3f_38.s2; v3f_43 = (float3)(f_40, f_41, f_42); f_44 = v3f_43.s0 + v3f_43.s1; f_45 = f_44 + v3f_43.s2; f_47 = v4f_8.s0; f_48 = v4f_8.s1; f_49 = v4f_8.s2; v3f_46 = (float3)(f_47, f_48, f_49); f_50 = v3f_46.s0 * v3f_38.s0; f_51 = v3f_46.s1 * v3f_38.s1; f_52 = v3f_46.s2 * v3f_38.s2; v3f_53 = (float3)(f_50, f_51, f_52); f_54 = v3f_53.s0 + v3f_53.s1; f_55 = f_54 + v3f_53.s2; f_57 = v4f_10.s0; f_58 = v4f_10.s1; f_59 = v4f_10.s2; v3f_56 = (float3)(f_57, f_58, f_59); f_60 = v3f_56.s0 * v3f_38.s0; f_61 = v3f_56.s1 * v3f_38.s1; f_62 = v3f_56.s2 * v3f_38.s2; v3f_63 = (float3)(f_60, f_61, f_62); f_64 = v3f_63.s0 + v3f_63.s1; f_65 = f_64 + v3f_63.s2; v3f_66 = (float3)(f_45, f_55, f_65); f_67 = v3f_66.s0 * f_25; f_68 = v3f_66.s1 * f_25; f_69 = v3f_66.s2 * f_25; v3f_70 = (float3)(f_67, f_68, f_69); v3f_31 = v3f_70; } // B5 else { // BLOCK 6 f_28 = 0.0F; f_29 = 0.0F; f_30 = 0.0F; v3f_27 = (float3)(f_28, f_29, f_30); v3f_31 = v3f_27; } // B6 // BLOCK 7 MERGES [5 6 ] ul_71 = ul_0 + 32L; ul_72 = *((__global ulong *) ul_71); i_73 = i_20 << 1; i_74 = i_73 + i_20; l_75 = (long) i_74; l_76 = l_75 << 2; l_77 = l_76 + 24L; ul_78 = ul_72 + l_77; vstore3(v3f_31, 0, (__global float *) ul_78); i_79 = get_global_size(0); i_80 = i_79 + i_14; i_14 = i_80; } // B7 // BLOCK 8 i_81 = get_global_size(1); i_82 = i_81 + i_12; i_12 = i_82; } // B8 // BLOCK 9 return; } // kernel #pragma OPENCL EXTENSION cl_khr_fp64 : enable #pragma OPENCL EXTENSION cl_khr_int64_base_atomics : enable __kernel void vertex2normal(__global uchar *_heap_base, ulong _frame_base, __constant uchar *_constant_region, __local uchar *_local_region, __global int *_atomics) { long l_27, l_26, l_28, l_18, l_17, l_16, l_54, l_53, l_52, l_41, l_40, l_39, l_103, l_102, l_101; ulong ul_7, ul_55, ul_6, ul_104, ul_42, ul_29, ul_1, ul_97, ul_0, ul_96, ul_19; float f_77, f_76, f_79, f_73, f_72, f_75, f_74, f_69, f_71, f_70, f_65, f_67, f_66, f_61, f_63, f_62, f_93, f_95, f_94, f_89, f_88, f_85, f_84, f_87, f_86, f_81, f_80, f_83; float3 v3f_82, v3f_20, v3f_68, v3f_30, v3f_78, v3f_64, v3f_90, v3f_43, v3f_91, v3f_92, v3f_56; int i_49, i_50, i_47, i_48, i_51, i_105, i_106, i_45, i_46, i_107, i_44, i_108, i_33, i_34, i_98, i_31, i_32, i_37, i_38, i_35, i_99, i_36, i_100, i_25, i_23, i_24, i_15, i_21, i_22, i_9, i_10, i_8, i_13, i_14, i_11, i_12, i_2, i_5, i_3, i_4; bool z_60, z_58, z_59, z_57; __global ulong *_frame = (__global ulong *) &_heap_base[_frame_base]; // BLOCK 0 ul_0 = (ulong) _frame[3]; ul_1 = (ulong) _frame[4]; i_2 = get_global_id(1); // BLOCK 1 MERGES [0 8 ] i_3 = i_2; for(;i_3 < 60;) { // BLOCK 2 i_4 = get_global_id(0); // BLOCK 3 MERGES [2 7 ] i_5 = i_4; for(;i_5 < 80;) { // BLOCK 4 ul_6 = ul_1 + 32L; ul_7 = *((__global ulong *) ul_6); i_8 = i_5 + -1; i_9 = max(i_8, 0); i_10 = i_3 << 6; i_11 = i_3 << 4; i_12 = i_10 + i_11; i_13 = i_9 + i_12; i_14 = i_13 << 1; i_15 = i_14 + i_13; l_16 = (long) i_15; l_17 = l_16 << 2; l_18 = l_17 + 24L; ul_19 = ul_7 + l_18; v3f_20 = vload3(0, (__global float *) ul_19); i_21 = i_5 + 1; i_22 = min(i_21, 79); i_23 = i_22 + i_12; i_24 = i_23 << 1; i_25 = i_24 + i_23; l_26 = (long) i_25; l_27 = l_26 << 2; l_28 = l_27 + 24L; ul_29 = ul_7 + l_28; v3f_30 = vload3(0, (__global float *) ul_29); i_31 = i_3 + -1; i_32 = max(i_31, 0); i_33 = i_32 << 6; i_34 = i_32 << 4; i_35 = i_33 + i_34; i_36 = i_35 + i_5; i_37 = i_36 << 1; i_38 = i_37 + i_36; l_39 = (long) i_38; l_40 = l_39 << 2; l_41 = l_40 + 24L; ul_42 = ul_7 + l_41; v3f_43 = vload3(0, (__global float *) ul_42); i_44 = i_3 + 1; i_45 = min(i_44, 59); i_46 = i_45 << 6; i_47 = i_45 << 4; i_48 = i_46 + i_47; i_49 = i_48 + i_5; i_50 = i_49 << 1; i_51 = i_50 + i_49; l_52 = (long) i_51; l_53 = l_52 << 2; l_54 = l_53 + 24L; ul_55 = ul_7 + l_54; v3f_56 = vload3(0, (__global float *) ul_55); z_57 = isequal(v3f_43.s2, 0.0F) || isequal(v3f_56.s2, 0.0F); z_58 = isequal(v3f_30.s2, 0.0F) || z_57; z_59 = isequal(v3f_20.s2, 0.0F) || z_58; z_60 = isequal(v3f_20.s2, 0.0F) || z_58; if(z_60) { // BLOCK 5 f_93 = -2.0F; f_94 = 0.0F; f_95 = 0.0F; v3f_92 = (float3)(f_93, f_94, f_95); v3f_91 = v3f_92; } // B5 else { // BLOCK 6 f_61 = v3f_56.s0 - v3f_43.s0; f_62 = v3f_56.s1 - v3f_43.s1; f_63 = v3f_56.s2 - v3f_43.s2; v3f_64 = (float3)(f_61, f_62, f_63); f_65 = v3f_30.s0 - v3f_20.s0; f_66 = v3f_30.s1 - v3f_20.s1; f_67 = v3f_30.s2 - v3f_20.s2; v3f_68 = (float3)(f_65, f_66, f_67); f_69 = v3f_64.s1 * v3f_68.s2; f_70 = v3f_64.s2 * v3f_68.s1; f_71 = f_69 - f_70; f_72 = v3f_68.s0 * v3f_64.s2; f_73 = v3f_64.s0 * v3f_68.s2; f_74 = f_72 - f_73; f_75 = v3f_68.s1 * v3f_64.s0; f_76 = v3f_64.s1 * v3f_68.s0; f_77 = f_75 - f_76; v3f_78 = (float3)(f_71, f_74, f_77); f_79 = v3f_78.s0 * v3f_78.s0; f_80 = v3f_78.s1 * v3f_78.s1; f_81 = v3f_78.s2 * v3f_78.s2; v3f_82 = (float3)(f_79, f_80, f_81); f_83 = v3f_82.s0 + v3f_82.s1; f_84 = f_83 + v3f_82.s2; f_85 = sqrt(f_84); f_86 = 1.0F / f_85; f_87 = f_86 * v3f_78.s0; f_88 = f_86 * v3f_78.s1; f_89 = f_86 * v3f_78.s2; v3f_90 = (float3)(f_87, f_88, f_89); v3f_91 = v3f_90; } // B6 // BLOCK 7 MERGES [5 6 ] ul_96 = ul_0 + 32L; ul_97 = *((__global ulong *) ul_96); i_98 = i_5 + i_12; i_99 = i_98 << 1; i_100 = i_99 + i_98; l_101 = (long) i_100; l_102 = l_101 << 2; l_103 = l_102 + 24L; ul_104 = ul_97 + l_103; vstore3(v3f_91, 0, (__global float *) ul_104); i_105 = get_global_size(0); i_106 = i_105 + i_5; i_5 = i_106; } // B7 // BLOCK 8 i_107 = get_global_size(1); i_108 = i_107 + i_3; i_3 = i_108; } // B8 // BLOCK 9 return; } // kernel #pragma OPENCL EXTENSION cl_khr_fp64 : enable #pragma OPENCL EXTENSION cl_khr_int64_base_atomics : enable __kernel void trackPose(__global uchar *_heap_base, ulong _frame_base, __constant uchar *_constant_region, __local uchar *_local_region, __global int *_atomics) { long l_59, l_58, l_47, l_175, l_46, l_174, l_173, l_60, l_48; ulong ul_21, ul_23, ul_25, ul_24, ul_27, ul_29, ul_31, ul_163, ul_162, ul_5, ul_4, ul_7, ul_6, ul_9, ul_8, ul_11, ul_75, ul_74, ul_13, ul_76, ul_15, ul_17, ul_19, ul_117, ul_181, ul_180, ul_61, ul_1, ul_129, ul_0, ul_64, ul_3, ul_2, ul_39, ul_40, ul_49, ul_176, ul_51, ul_179, ul_50; float f_269, f_268, f_271, f_270, f_265, f_264, f_267, f_266, f_261, f_260, f_262, f_257, f_256, f_259, f_258, f_253, f_252, f_255, f_249, f_248, f_251, f_250, f_244, f_247, f_246, f_241, f_240, f_243, f_242, f_236, f_239, f_238, f_233, f_232, f_235, f_229, f_228, f_231, f_225, f_224, f_227, f_226, f_221, f_223, f_222, f_216, f_219, f_218, f_212, f_215, f_214, f_209, f_208, f_211, f_79, f_78, f_73, f_72, f_69, f_68, f_71, f_67, f_289, f_32, f_288, f_285, f_28, f_284, f_287, f_30, f_286, f_280, f_283, f_26, f_282, f_277, f_20, f_276, f_279, f_22, f_278, f_273, f_16, f_275, f_18, f_274, f_140, f_137, f_136, f_139, f_133, f_132, f_135, f_134, f_128, f_125, f_124, f_127, f_121, f_120, f_123, f_122, f_116, f_113, f_112, f_115, f_109, f_108, f_111, f_107, f_100, f_103, f_102, f_97, f_96, f_99, f_98, f_93, f_92, f_95, f_89, f_88, f_90, f_85, f_87, f_86, f_80, f_83, f_82, f_205, f_207, f_206, f_201, f_200, f_203, f_202, f_197, f_196, f_199, f_193, f_192, f_195, f_189, f_188, f_191, f_185, f_184, f_187, f_183, f_156, f_153, f_152, f_155, f_148, f_151, f_150, f_145, f_144, f_146; float2 v2f_154, v2f_157, v2f_149; float4 v4f_14, v4f_142, v4f_65, v4f_130, v4f_118, v4f_105, v4f_10, v4f_12; float3 v3f_94, v3f_217, v3f_91, v3f_213, v3f_177, v3f_114, v3f_110, v3f_106, v3f_234, v3f_101, v3f_230, v3f_104, v3f_66, v3f_131, v3f_62, v3f_126, v3f_190, v3f_186, v3f_182, v3f_119, v3f_81, v3f_210, v3f_147, v3f_84, v3f_77, v3f_141, v3f_143, v3f_138, v3f_204, v3f_70, v3f_198; int i_178, i_53, i_54, i_52, i_41, i_169, i_42, i_170, i_167, i_168, i_45, i_43, i_171, i_44, i_172, i_33, i_34, i_290, i_37, i_165, i_38, i_35, i_291, i_36, i_164, i_292, i_220, i_194, i_63, i_57, i_55, i_56; int2 v2i_166; bool z_160, z_161, z_158, z_159; float8 v8f_245, v8f_263, v8f_281, v8f_254, v8f_237, v8f_272; __global ulong *_frame = (__global ulong *) &_heap_base[_frame_base]; // BLOCK 0 ul_0 = (ulong) _frame[3]; ul_1 = (ulong) _frame[4]; ul_2 = (ulong) _frame[5]; ul_3 = (ulong) _frame[6]; ul_4 = (ulong) _frame[7]; ul_5 = (ulong) _frame[8]; ul_6 = (ulong) _frame[9]; ul_7 = ul_5 + 24L; ul_8 = *((__global ulong *) ul_7); ul_9 = ul_8 + 24L; v4f_10 = vload4(0, (__global float *) ul_9); ul_11 = ul_8 + 40L; v4f_12 = vload4(0, (__global float *) ul_11); ul_13 = ul_8 + 56L; v4f_14 = vload4(0, (__global float *) ul_13); ul_15 = ul_8 + 36L; f_16 = *((__global float *) ul_15); ul_17 = ul_8 + 52L; f_18 = *((__global float *) ul_17); ul_19 = ul_8 + 68L; f_20 = *((__global float *) ul_19); ul_21 = ul_8 + 84L; f_22 = *((__global float *) ul_21); ul_23 = ul_6 + 24L; ul_24 = *((__global ulong *) ul_23); ul_25 = ul_24 + 36L; f_26 = *((__global float *) ul_25); ul_27 = ul_24 + 52L; f_28 = *((__global float *) ul_27); ul_29 = ul_24 + 68L; f_30 = *((__global float *) ul_29); ul_31 = ul_24 + 84L; f_32 = *((__global float *) ul_31); i_33 = get_global_id(1); // BLOCK 1 MERGES [0 16 ] i_34 = i_33; for(;i_34 < 240;) { // BLOCK 2 i_35 = get_global_id(0); // BLOCK 3 MERGES [2 15 ] i_36 = i_35; for(;i_36 < 320;) { // BLOCK 4 i_37 = get_global_size(0); i_38 = i_37 + i_36; ul_39 = ul_0 + 32L; ul_40 = *((__global ulong *) ul_39); i_41 = i_36 << 3; i_42 = i_34 << 11; i_43 = i_34 << 9; i_44 = i_42 + i_43; i_45 = i_41 + i_44; l_46 = (long) i_45; l_47 = l_46 << 2; l_48 = l_47 + 24L; ul_49 = ul_40 + l_48; ul_50 = ul_2 + 32L; ul_51 = *((__global ulong *) ul_50); i_52 = i_34 << 8; i_53 = i_34 << 6; i_54 = i_52 + i_53; i_55 = i_54 + i_36; i_56 = i_55 << 1; i_57 = i_56 + i_55; l_58 = (long) i_57; l_59 = l_58 << 2; l_60 = l_59 + 24L; ul_61 = ul_51 + l_60; v3f_62 = vload3(0, (__global float *) ul_61); i_63 = isequal(v3f_62.s0, -2.0F); if(i_63 == 1) { // BLOCK 5 f_246 = 0.0F; f_247 = 0.0F; f_248 = 0.0F; f_249 = 0.0F; f_250 = 0.0F; f_251 = 0.0F; f_252 = 0.0F; f_253 = -1.0F; v8f_245 = (float8)(f_246, f_247, f_248, f_249, f_250, f_251, f_252, f_253); vstore8(v8f_245, 0, (__global float *) ul_49); } // B5 else { // BLOCK 6 ul_64 = ul_24 + 24L; v4f_65 = vload4(0, (__global float *) ul_64); f_67 = v4f_65.s0; f_68 = v4f_65.s1; f_69 = v4f_65.s2; v3f_66 = (float3)(f_67, f_68, f_69); f_71 = v4f_10.s0; f_72 = v4f_10.s1; f_73 = v4f_10.s2; v3f_70 = (float3)(f_71, f_72, f_73); ul_74 = ul_1 + 32L; ul_75 = *((__global ulong *) ul_74); ul_76 = ul_75 + l_60; v3f_77 = vload3(0, (__global float *) ul_76); f_78 = v3f_70.s0 * v3f_77.s0; f_79 = v3f_70.s1 * v3f_77.s1; f_80 = v3f_70.s2 * v3f_77.s2; v3f_81 = (float3)(f_78, f_79, f_80); f_82 = v3f_81.s0 + v3f_81.s1; f_83 = f_82 + v3f_81.s2; f_85 = v4f_12.s0; f_86 = v4f_12.s1; f_87 = v4f_12.s2; v3f_84 = (float3)(f_85, f_86, f_87); f_88 = v3f_84.s0 * v3f_77.s0; f_89 = v3f_84.s1 * v3f_77.s1; f_90 = v3f_84.s2 * v3f_77.s2; v3f_91 = (float3)(f_88, f_89, f_90); f_92 = v3f_91.s0 + v3f_91.s1; f_93 = f_92 + v3f_91.s2; f_95 = v4f_14.s0; f_96 = v4f_14.s1; f_97 = v4f_14.s2; v3f_94 = (float3)(f_95, f_96, f_97); f_98 = v3f_94.s0 * v3f_77.s0; f_99 = v3f_94.s1 * v3f_77.s1; f_100 = v3f_94.s2 * v3f_77.s2; v3f_101 = (float3)(f_98, f_99, f_100); f_102 = v3f_101.s0 + v3f_101.s1; f_103 = f_102 + v3f_101.s2; v3f_104 = (float3)(f_83, f_93, f_103); v4f_105 = (float4)(f_16, f_18, f_20, f_22); f_107 = v4f_105.s0; f_108 = v4f_105.s1; f_109 = v4f_105.s2; v3f_106 = (float3)(f_107, f_108, f_109); v3f_110 = v3f_104 + v3f_106; f_111 = v3f_66.s0 * v3f_110.s0; f_112 = v3f_66.s1 * v3f_110.s1; f_113 = v3f_66.s2 * v3f_110.s2; v3f_114 = (float3)(f_111, f_112, f_113); f_115 = v3f_114.s0 + v3f_114.s1; f_116 = f_115 + v3f_114.s2; ul_117 = ul_24 + 40L; v4f_118 = vload4(0, (__global float *) ul_117); f_120 = v4f_118.s0; f_121 = v4f_118.s1; f_122 = v4f_118.s2; v3f_119 = (float3)(f_120, f_121, f_122); f_123 = v3f_119.s0 * v3f_110.s0; f_124 = v3f_119.s1 * v3f_110.s1; f_125 = v3f_119.s2 * v3f_110.s2; v3f_126 = (float3)(f_123, f_124, f_125); f_127 = v3f_126.s0 + v3f_126.s1; f_128 = f_127 + v3f_126.s2; ul_129 = ul_24 + 56L; v4f_130 = vload4(0, (__global float *) ul_129); f_132 = v4f_130.s0; f_133 = v4f_130.s1; f_134 = v4f_130.s2; v3f_131 = (float3)(f_132, f_133, f_134); f_135 = v3f_131.s0 * v3f_110.s0; f_136 = v3f_131.s1 * v3f_110.s1; f_137 = v3f_131.s2 * v3f_110.s2; v3f_138 = (float3)(f_135, f_136, f_137); f_139 = v3f_138.s0 + v3f_138.s1; f_140 = f_139 + v3f_138.s2; v3f_141 = (float3)(f_116, f_128, f_140); v4f_142 = (float4)(f_26, f_28, f_30, f_32); f_144 = v4f_142.s0; f_145 = v4f_142.s1; f_146 = v4f_142.s2; v3f_143 = (float3)(f_144, f_145, f_146); v3f_147 = v3f_141 + v3f_143; f_148 = 1.0F / v3f_147.s2; f_150 = v3f_147.s0; f_151 = v3f_147.s1; v2f_149 = (float2)(f_150, f_151); f_152 = f_148 * v2f_149.s0; f_153 = v2f_149.s1 * f_148; v2f_154 = (float2)(f_152, f_153); f_155 = v2f_154.s0 + 0.5F; f_156 = v2f_154.s1 + 0.5F; v2f_157 = (float2)(f_155, f_156); z_158 = isless(v2f_157.s1, 0.0F) || isless(239.0F, v2f_157.s1); z_159 = isless(319.0F, v2f_157.s0) || z_158; z_160 = isless(v2f_157.s0, 0.0F) || z_159; z_161 = isless(v2f_157.s0, 0.0F) || z_159; if(z_161) { // BLOCK 7 f_255 = 0.0F; f_256 = 0.0F; f_257 = 0.0F; f_258 = 0.0F; f_259 = 0.0F; f_260 = 0.0F; f_261 = 0.0F; f_262 = -2.0F; v8f_254 = (float8)(f_255, f_256, f_257, f_258, f_259, f_260, f_261, f_262); vstore8(v8f_254, 0, (__global float *) ul_49); } // B7 else { // BLOCK 8 ul_162 = ul_4 + 32L; ul_163 = *((__global ulong *) ul_162); i_164 = isnan(v2f_157.s0)? 0 : (int) v2f_157.s0; i_165 = isnan(v2f_157.s1)? 0 : (int) v2f_157.s1; v2i_166 = (int2)(i_164, i_165); i_167 = v2i_166.s1 << 8; i_168 = v2i_166.s1 << 6; i_169 = i_167 + i_168; i_170 = v2i_166.s0 + i_169; i_171 = i_170 << 1; i_172 = i_171 + i_170; l_173 = (long) i_172; l_174 = l_173 << 2; l_175 = l_174 + 24L; ul_176 = ul_163 + l_175; v3f_177 = vload3(0, (__global float *) ul_176); i_178 = isequal(v3f_177.s0, -2.0F); if(i_178 == 1) { // BLOCK 9 f_264 = 0.0F; f_265 = 0.0F; f_266 = 0.0F; f_267 = 0.0F; f_268 = 0.0F; f_269 = 0.0F; f_270 = 0.0F; f_271 = -3.0F; v8f_263 = (float8)(f_264, f_265, f_266, f_267, f_268, f_269, f_270, f_271); vstore8(v8f_263, 0, (__global float *) ul_49); } // B9 else { // BLOCK 10 ul_179 = ul_3 + 32L; ul_180 = *((__global ulong *) ul_179); ul_181 = ul_180 + l_175; v3f_182 = vload3(0, (__global float *) ul_181); f_183 = v3f_182.s0 - v3f_110.s0; f_184 = v3f_182.s1 - v3f_110.s1; f_185 = v3f_182.s2 - v3f_110.s2; v3f_186 = (float3)(f_183, f_184, f_185); f_187 = v3f_186.s0 * v3f_186.s0; f_188 = v3f_186.s1 * v3f_186.s1; f_189 = v3f_186.s2 * v3f_186.s2; v3f_190 = (float3)(f_187, f_188, f_189); f_191 = v3f_190.s0 + v3f_190.s1; f_192 = f_191 + v3f_190.s2; f_193 = sqrt(f_192); i_194 = isless(0.1F, f_193); if(i_194 == 1) { // BLOCK 11 f_273 = 0.0F; f_274 = 0.0F; f_275 = 0.0F; f_276 = 0.0F; f_277 = 0.0F; f_278 = 0.0F; f_279 = 0.0F; f_280 = -4.0F; v8f_272 = (float8)(f_273, f_274, f_275, f_276, f_277, f_278, f_279, f_280); vstore8(v8f_272, 0, (__global float *) ul_49); } // B11 else { // BLOCK 12 f_195 = v3f_70.s0 * v3f_62.s0; f_196 = v3f_62.s1 * v3f_70.s1; f_197 = v3f_62.s2 * v3f_70.s2; v3f_198 = (float3)(f_195, f_196, f_197); f_199 = v3f_198.s0 + v3f_198.s1; f_200 = f_199 + v3f_198.s2; f_201 = v3f_84.s0 * v3f_62.s0; f_202 = v3f_84.s1 * v3f_62.s1; f_203 = v3f_84.s2 * v3f_62.s2; v3f_204 = (float3)(f_201, f_202, f_203); f_205 = v3f_204.s0 + v3f_204.s1; f_206 = f_205 + v3f_204.s2; f_207 = v3f_94.s0 * v3f_62.s0; f_208 = v3f_94.s1 * v3f_62.s1; f_209 = v3f_94.s2 * v3f_62.s2; v3f_210 = (float3)(f_207, f_208, f_209); f_211 = v3f_210.s0 + v3f_210.s1; f_212 = f_211 + v3f_210.s2; v3f_213 = (float3)(f_200, f_206, f_212); f_214 = v3f_213.s0 * v3f_177.s0; f_215 = v3f_213.s1 * v3f_177.s1; f_216 = v3f_213.s2 * v3f_177.s2; v3f_217 = (float3)(f_214, f_215, f_216); f_218 = v3f_217.s0 + v3f_217.s1; f_219 = f_218 + v3f_217.s2; i_220 = isless(f_219, 0.8F); if(i_220 == 1) { // BLOCK 13 f_282 = 0.0F; f_283 = 0.0F; f_284 = 0.0F; f_285 = 0.0F; f_286 = 0.0F; f_287 = 0.0F; f_288 = 0.0F; f_289 = -5.0F; v8f_281 = (float8)(f_282, f_283, f_284, f_285, f_286, f_287, f_288, f_289); vstore8(v8f_281, 0, (__global float *) ul_49); } // B13 else { // BLOCK 14 f_221 = v3f_110.s1 * v3f_177.s2; f_222 = v3f_110.s2 * v3f_177.s1; f_223 = f_221 - f_222; f_224 = v3f_110.s2 * v3f_177.s0; f_225 = v3f_110.s0 * v3f_177.s2; f_226 = f_224 - f_225; f_227 = v3f_110.s0 * v3f_177.s1; f_228 = v3f_110.s1 * v3f_177.s0; f_229 = f_227 - f_228; v3f_230 = (float3)(f_223, f_226, f_229); f_231 = v3f_177.s0 * v3f_186.s0; f_232 = v3f_186.s1 * v3f_177.s1; f_233 = v3f_186.s2 * v3f_177.s2; v3f_234 = (float3)(f_231, f_232, f_233); f_235 = v3f_234.s0 + v3f_234.s1; f_236 = f_235 + v3f_234.s2; f_238 = v3f_177.s0; f_239 = v3f_177.s1; f_240 = v3f_177.s2; f_241 = v3f_230.s0; f_242 = v3f_230.s1; f_243 = v3f_230.s2; f_244 = 1.0F; v8f_237 = (float8)(f_238, f_239, f_240, f_241, f_242, f_243, f_236, f_244); vstore8(v8f_237, 0, (__global float *) ul_49); } // B14 } // B12 } // B10 } // B8 } // B6 // BLOCK 15 MERGES [5 14 13 11 9 7 ] i_290 = i_38; i_36 = i_290; } // B15 // BLOCK 16 i_291 = get_global_size(1); i_292 = i_291 + i_34; i_34 = i_292; } // B16 // BLOCK 17 return; } // kernel #pragma OPENCL EXTENSION cl_khr_fp64 : enable #pragma OPENCL EXTENSION cl_khr_int64_base_atomics : enable void kfusion_tornado_algorithms_IterativeClosestPoint_reduceValues(__global uchar *_heap_base, ulong _frame_base, __constant uchar *_constant_region, __local uchar *_local_region, __global int *_atomics, ulong sums, int startIndex, ulong trackingResults, int resultIndex) { long l_235, l_234, l_233, l_226, l_225, l_224, l_217, l_216, l_208, l_215, l_201, l_200, l_207, l_206, l_194, l_193, l_192, l_199, l_187, l_186, l_185, l_179, l_178, l_180, l_171, l_173, l_172, l_166, l_165, l_164, l_152, l_159, l_158, l_157, l_145, l_144, l_151, l_150, l_138, l_137, l_136, l_143, l_131, l_130, l_129, l_123, l_122, l_124, l_115, l_117, l_116, l_110, l_109, l_108, l_96, l_103, l_102, l_101, l_89, l_88, l_95, l_94, l_82, l_81, l_80, l_87, l_75, l_74, l_73, l_67, l_66, l_68, l_59, l_61, l_60, l_54, l_53, l_52, l_40, l_47, l_46, l_45, l_33, l_32, l_39, l_38, l_26, l_25, l_24, l_31, l_19, l_18, l_17, l_11, l_10, l_12, l_3, l_5, l_4; ulong ul_20, ul_153, ul_27, ul_90, ul_218, ul_97, ul_160, ul_227, ul_34, ul_69, ul_132, ul_6, ul_139, ul_202, ul_13, ul_76, ul_209, ul_83, ul_146, ul_181, ul_55, ul_118, ul_125, ul_188, ul_62, ul_1, ul_0, ul_195, ul_167, ul_41, ul_104, ul_236, ul_111, ul_174, ul_48; float f_141, f_140, f_15, f_14, f_133, f_134, f_127, f_126, f_120, f_119, f_113, f_112, f_237, f_238, f_105, f_106, f_229, f_228, f_231, f_99, f_98, f_92, f_220, f_222, f_91, f_219, f_85, f_213, f_84, f_211, f_210, f_77, f_204, f_78, f_203, f_197, f_196, f_71, f_70, f_64, f_189, f_63, f_190, f_57, f_56, f_183, f_182, f_49, f_176, f_50, f_175, f_169, f_168, f_43, f_42, f_36, f_161, f_35, f_162, f_29, f_28, f_155, f_154, f_21, f_148, f_22, f_147; int i_177, i_114, i_51, i_170, i_232, i_107, i_44, i_223, i_37, i_163, i_100, i_23, i_93, i_30, i_156, i_79, i_16, i_149, i_86, i_214, i_135, i_8, i_72, i_205, i_142, i_65, i_2, i_191, i_128, i_198, i_121, i_58, i_184; float8 v8f_7; bool z_221, z_9, z_230, z_212; // BLOCK 0 ul_0 = trackingResults + 32L; ul_1 = *((__global ulong *) ul_0); i_2 = resultIndex << 3; l_3 = (long) i_2; l_4 = l_3 << 2; l_5 = l_4 + 24L; ul_6 = ul_1 + l_5; v8f_7 = vload8(0, (__global float *) ul_6); i_8 = isnan(v8f_7.s7)? 0 : (int) v8f_7.s7; z_9 = i_8 < 1; if(z_9) { // BLOCK 1 z_212 = i_8 == -4; if(z_212) { // BLOCK 2 f_213 = 1.0F; } // B2 else { // BLOCK 3 f_213 = 0.0F; } // B3 // BLOCK 4 MERGES [2 3 ] i_214 = startIndex + 29; l_215 = (long) i_214; l_216 = l_215 << 2; l_217 = l_216 + 24L; ul_218 = sums + l_217; f_219 = *((__global float *) ul_218); f_220 = f_213 + f_219; *((__global float *) ul_218) = f_220; f_219 = f_220; z_221 = i_8 == -5; if(z_221) { // BLOCK 5 f_222 = 1.0F; } // B5 else { // BLOCK 6 f_222 = 0.0F; } // B6 // BLOCK 7 MERGES [5 6 ] i_223 = startIndex + 30; l_224 = (long) i_223; l_225 = l_224 << 2; l_226 = l_225 + 24L; ul_227 = sums + l_226; f_228 = *((__global float *) ul_227); f_229 = f_222 + f_228; *((__global float *) ul_227) = f_229; f_228 = f_229; z_230 = i_8 < -3; if(z_230) { // BLOCK 8 f_231 = 0.0F; } // B8 else { // BLOCK 9 f_231 = 1.0F; } // B9 // BLOCK 10 MERGES [9 8 ] i_232 = startIndex + 31; l_233 = (long) i_232; l_234 = l_233 << 2; l_235 = l_234 + 24L; ul_236 = sums + l_235; f_237 = *((__global float *) ul_236); f_238 = f_231 + f_237; *((__global float *) ul_236) = f_238; f_237 = f_238; return; } // B10 else { // BLOCK 11 l_10 = (long) startIndex; l_11 = l_10 << 2; l_12 = l_11 + 24L; ul_13 = sums + l_12; f_14 = *((__global float *) ul_13); f_15 = fma(v8f_7.s6, v8f_7.s6, f_14); *((__global float *) ul_13) = f_15; f_14 = f_15; i_16 = startIndex + 1; l_17 = (long) i_16; l_18 = l_17 << 2; l_19 = l_18 + 24L; ul_20 = sums + l_19; f_21 = *((__global float *) ul_20); f_22 = fma(v8f_7.s6, v8f_7.s0, f_21); *((__global float *) ul_20) = f_22; f_21 = f_22; i_23 = startIndex + 2; l_24 = (long) i_23; l_25 = l_24 << 2; l_26 = l_25 + 24L; ul_27 = sums + l_26; f_28 = *((__global float *) ul_27); f_29 = fma(v8f_7.s6, v8f_7.s1, f_28); *((__global float *) ul_27) = f_29; f_28 = f_29; i_30 = startIndex + 3; l_31 = (long) i_30; l_32 = l_31 << 2; l_33 = l_32 + 24L; ul_34 = sums + l_33; f_35 = *((__global float *) ul_34); f_36 = fma(v8f_7.s6, v8f_7.s2, f_35); *((__global float *) ul_34) = f_36; f_35 = f_36; i_37 = startIndex + 4; l_38 = (long) i_37; l_39 = l_38 << 2; l_40 = l_39 + 24L; ul_41 = sums + l_40; f_42 = *((__global float *) ul_41); f_43 = fma(v8f_7.s6, v8f_7.s3, f_42); *((__global float *) ul_41) = f_43; f_42 = f_43; i_44 = startIndex + 5; l_45 = (long) i_44; l_46 = l_45 << 2; l_47 = l_46 + 24L; ul_48 = sums + l_47; f_49 = *((__global float *) ul_48); f_50 = fma(v8f_7.s6, v8f_7.s4, f_49); *((__global float *) ul_48) = f_50; f_49 = f_50; i_51 = startIndex + 6; l_52 = (long) i_51; l_53 = l_52 << 2; l_54 = l_53 + 24L; ul_55 = sums + l_54; f_56 = *((__global float *) ul_55); f_57 = fma(v8f_7.s6, v8f_7.s5, f_56); *((__global float *) ul_55) = f_57; f_56 = f_57; i_58 = startIndex + 7; l_59 = (long) i_58; l_60 = l_59 << 2; l_61 = l_60 + 24L; ul_62 = sums + l_61; f_63 = *((__global float *) ul_62); f_64 = fma(v8f_7.s0, v8f_7.s0, f_63); *((__global float *) ul_62) = f_64; f_63 = f_64; i_65 = startIndex + 8; l_66 = (long) i_65; l_67 = l_66 << 2; l_68 = l_67 + 24L; ul_69 = sums + l_68; f_70 = *((__global float *) ul_69); f_71 = fma(v8f_7.s0, v8f_7.s1, f_70); *((__global float *) ul_69) = f_71; f_70 = f_71; i_72 = startIndex + 9; l_73 = (long) i_72; l_74 = l_73 << 2; l_75 = l_74 + 24L; ul_76 = sums + l_75; f_77 = *((__global float *) ul_76); f_78 = fma(v8f_7.s0, v8f_7.s2, f_77); *((__global float *) ul_76) = f_78; f_77 = f_78; i_79 = startIndex + 10; l_80 = (long) i_79; l_81 = l_80 << 2; l_82 = l_81 + 24L; ul_83 = sums + l_82; f_84 = *((__global float *) ul_83); f_85 = fma(v8f_7.s0, v8f_7.s3, f_84); *((__global float *) ul_83) = f_85; f_84 = f_85; i_86 = startIndex + 11; l_87 = (long) i_86; l_88 = l_87 << 2; l_89 = l_88 + 24L; ul_90 = sums + l_89; f_91 = *((__global float *) ul_90); f_92 = fma(v8f_7.s0, v8f_7.s4, f_91); *((__global float *) ul_90) = f_92; f_91 = f_92; i_93 = startIndex + 12; l_94 = (long) i_93; l_95 = l_94 << 2; l_96 = l_95 + 24L; ul_97 = sums + l_96; f_98 = *((__global float *) ul_97); f_99 = fma(v8f_7.s0, v8f_7.s5, f_98); *((__global float *) ul_97) = f_99; f_98 = f_99; i_100 = startIndex + 13; l_101 = (long) i_100; l_102 = l_101 << 2; l_103 = l_102 + 24L; ul_104 = sums + l_103; f_105 = *((__global float *) ul_104); f_106 = fma(v8f_7.s1, v8f_7.s1, f_105); *((__global float *) ul_104) = f_106; f_105 = f_106; i_107 = startIndex + 14; l_108 = (long) i_107; l_109 = l_108 << 2; l_110 = l_109 + 24L; ul_111 = sums + l_110; f_112 = *((__global float *) ul_111); f_113 = fma(v8f_7.s1, v8f_7.s2, f_112); *((__global float *) ul_111) = f_113; f_112 = f_113; i_114 = startIndex + 15; l_115 = (long) i_114; l_116 = l_115 << 2; l_117 = l_116 + 24L; ul_118 = sums + l_117; f_119 = *((__global float *) ul_118); f_120 = fma(v8f_7.s1, v8f_7.s3, f_119); *((__global float *) ul_118) = f_120; f_119 = f_120; i_121 = startIndex + 16; l_122 = (long) i_121; l_123 = l_122 << 2; l_124 = l_123 + 24L; ul_125 = sums + l_124; f_126 = *((__global float *) ul_125); f_127 = fma(v8f_7.s1, v8f_7.s4, f_126); *((__global float *) ul_125) = f_127; f_126 = f_127; i_128 = startIndex + 17; l_129 = (long) i_128; l_130 = l_129 << 2; l_131 = l_130 + 24L; ul_132 = sums + l_131; f_133 = *((__global float *) ul_132); f_134 = fma(v8f_7.s1, v8f_7.s5, f_133); *((__global float *) ul_132) = f_134; f_133 = f_134; i_135 = startIndex + 18; l_136 = (long) i_135; l_137 = l_136 << 2; l_138 = l_137 + 24L; ul_139 = sums + l_138; f_140 = *((__global float *) ul_139); f_141 = fma(v8f_7.s2, v8f_7.s2, f_140); *((__global float *) ul_139) = f_141; f_140 = f_141; i_142 = startIndex + 19; l_143 = (long) i_142; l_144 = l_143 << 2; l_145 = l_144 + 24L; ul_146 = sums + l_145; f_147 = *((__global float *) ul_146); f_148 = fma(v8f_7.s2, v8f_7.s3, f_147); *((__global float *) ul_146) = f_148; f_147 = f_148; i_149 = startIndex + 20; l_150 = (long) i_149; l_151 = l_150 << 2; l_152 = l_151 + 24L; ul_153 = sums + l_152; f_154 = *((__global float *) ul_153); f_155 = fma(v8f_7.s2, v8f_7.s4, f_154); *((__global float *) ul_153) = f_155; f_154 = f_155; i_156 = startIndex + 21; l_157 = (long) i_156; l_158 = l_157 << 2; l_159 = l_158 + 24L; ul_160 = sums + l_159; f_161 = *((__global float *) ul_160); f_162 = fma(v8f_7.s2, v8f_7.s5, f_161); *((__global float *) ul_160) = f_162; f_161 = f_162; i_163 = startIndex + 22; l_164 = (long) i_163; l_165 = l_164 << 2; l_166 = l_165 + 24L; ul_167 = sums + l_166; f_168 = *((__global float *) ul_167); f_169 = fma(v8f_7.s3, v8f_7.s3, f_168); *((__global float *) ul_167) = f_169; f_168 = f_169; i_170 = startIndex + 23; l_171 = (long) i_170; l_172 = l_171 << 2; l_173 = l_172 + 24L; ul_174 = sums + l_173; f_175 = *((__global float *) ul_174); f_176 = fma(v8f_7.s3, v8f_7.s4, f_175); *((__global float *) ul_174) = f_176; f_175 = f_176; i_177 = startIndex + 24; l_178 = (long) i_177; l_179 = l_178 << 2; l_180 = l_179 + 24L; ul_181 = sums + l_180; f_182 = *((__global float *) ul_181); f_183 = fma(v8f_7.s3, v8f_7.s5, f_182); *((__global float *) ul_181) = f_183; f_182 = f_183; i_184 = startIndex + 25; l_185 = (long) i_184; l_186 = l_185 << 2; l_187 = l_186 + 24L; ul_188 = sums + l_187; f_189 = *((__global float *) ul_188); f_190 = fma(v8f_7.s4, v8f_7.s4, f_189); *((__global float *) ul_188) = f_190; f_189 = f_190; i_191 = startIndex + 26; l_192 = (long) i_191; l_193 = l_192 << 2; l_194 = l_193 + 24L; ul_195 = sums + l_194; f_196 = *((__global float *) ul_195); f_197 = fma(v8f_7.s4, v8f_7.s5, f_196); *((__global float *) ul_195) = f_197; f_196 = f_197; i_198 = startIndex + 27; l_199 = (long) i_198; l_200 = l_199 << 2; l_201 = l_200 + 24L; ul_202 = sums + l_201; f_203 = *((__global float *) ul_202); f_204 = fma(v8f_7.s5, v8f_7.s5, f_203); *((__global float *) ul_202) = f_204; f_203 = f_204; i_205 = startIndex + 28; l_206 = (long) i_205; l_207 = l_206 << 2; l_208 = l_207 + 24L; ul_209 = sums + l_208; f_210 = *((__global float *) ul_209); f_211 = f_210 + 1.0F; *((__global float *) ul_209) = f_211; f_210 = f_211; return; } // B11 } // kernel #pragma OPENCL EXTENSION cl_khr_fp64 : enable #pragma OPENCL EXTENSION cl_khr_int64_base_atomics : enable __kernel void mapReduce(__global uchar *_heap_base, ulong _frame_base, __constant uchar *_constant_region, __local uchar *_local_region, __global int *_atomics) { long l_122, l_121, l_120, l_127, l_126, l_125, l_115, l_112, l_117, l_116, l_107, l_106, l_105, l_111, l_110, l_97, l_96, l_102, l_101, l_100, l_91, l_90, l_95, l_92, l_82, l_81, l_80, l_87, l_86, l_85, l_75, l_72, l_77, l_76, l_67, l_66, l_65, l_71, l_70, l_57, l_56, l_62, l_61, l_60, l_51, l_50, l_55, l_52, l_42, l_41, l_40, l_47, l_46, l_45, l_35, l_162, l_161, l_32, l_160, l_37, l_36, l_27, l_155, l_26, l_25, l_152, l_31, l_30, l_157, l_156, l_147, l_146, l_17, l_145, l_16, l_151, l_22, l_150, l_21, l_20, l_11, l_10, l_137, l_136, l_15, l_142, l_141, l_12, l_140, l_131, l_130, l_7, l_135, l_6, l_5, l_132; ulong ul_148, ul_23, ul_153, ul_88, ul_93, ul_28, ul_158, ul_33, ul_163, ul_98, ul_133, ul_68, ul_73, ul_8, ul_138, ul_13, ul_143, ul_78, ul_83, ul_18, ul_53, ul_118, ul_123, ul_58, ul_63, ul_1, ul_0, ul_128, ul_103, ul_38, ul_43, ul_108, ul_113, ul_48; int i_49, i_114, i_54, i_39, i_167, i_104, i_109, i_44, i_34, i_159, i_165, i_166, i_99, i_164, i_89, i_154, i_24, i_29, i_94, i_79, i_144, i_149, i_19, i_84, i_9, i_74, i_14, i_139, i_129, i_2, i_64, i_69, i_134, i_3, i_4, i_119, i_59, i_124; __global ulong *_frame = (__global ulong *) &_heap_base[_frame_base]; // BLOCK 0 ul_0 = (ulong) _frame[3]; ul_1 = (ulong) _frame[4]; i_2 = get_global_id(0); // BLOCK 1 MERGES [0 5 ] i_3 = i_2; for(;i_3 < 1024;) { // BLOCK 2 i_4 = i_3 << 5; l_5 = (long) i_4; l_6 = l_5 << 2; l_7 = l_6 + 24L; ul_8 = ul_0 + l_7; *((__global float *) ul_8) = 0.0F; i_9 = i_4 + 1; l_10 = (long) i_9; l_11 = l_10 << 2; l_12 = l_11 + 24L; ul_13 = ul_0 + l_12; *((__global float *) ul_13) = 0.0F; i_14 = i_4 + 2; l_15 = (long) i_14; l_16 = l_15 << 2; l_17 = l_16 + 24L; ul_18 = ul_0 + l_17; *((__global float *) ul_18) = 0.0F; i_19 = i_4 + 3; l_20 = (long) i_19; l_21 = l_20 << 2; l_22 = l_21 + 24L; ul_23 = ul_0 + l_22; *((__global float *) ul_23) = 0.0F; i_24 = i_4 + 4; l_25 = (long) i_24; l_26 = l_25 << 2; l_27 = l_26 + 24L; ul_28 = ul_0 + l_27; *((__global float *) ul_28) = 0.0F; i_29 = i_4 + 5; l_30 = (long) i_29; l_31 = l_30 << 2; l_32 = l_31 + 24L; ul_33 = ul_0 + l_32; *((__global float *) ul_33) = 0.0F; i_34 = i_4 + 6; l_35 = (long) i_34; l_36 = l_35 << 2; l_37 = l_36 + 24L; ul_38 = ul_0 + l_37; *((__global float *) ul_38) = 0.0F; i_39 = i_4 + 7; l_40 = (long) i_39; l_41 = l_40 << 2; l_42 = l_41 + 24L; ul_43 = ul_0 + l_42; *((__global float *) ul_43) = 0.0F; i_44 = i_4 + 8; l_45 = (long) i_44; l_46 = l_45 << 2; l_47 = l_46 + 24L; ul_48 = ul_0 + l_47; *((__global float *) ul_48) = 0.0F; i_49 = i_4 + 9; l_50 = (long) i_49; l_51 = l_50 << 2; l_52 = l_51 + 24L; ul_53 = ul_0 + l_52; *((__global float *) ul_53) = 0.0F; i_54 = i_4 + 10; l_55 = (long) i_54; l_56 = l_55 << 2; l_57 = l_56 + 24L; ul_58 = ul_0 + l_57; *((__global float *) ul_58) = 0.0F; i_59 = i_4 + 11; l_60 = (long) i_59; l_61 = l_60 << 2; l_62 = l_61 + 24L; ul_63 = ul_0 + l_62; *((__global float *) ul_63) = 0.0F; i_64 = i_4 + 12; l_65 = (long) i_64; l_66 = l_65 << 2; l_67 = l_66 + 24L; ul_68 = ul_0 + l_67; *((__global float *) ul_68) = 0.0F; i_69 = i_4 + 13; l_70 = (long) i_69; l_71 = l_70 << 2; l_72 = l_71 + 24L; ul_73 = ul_0 + l_72; *((__global float *) ul_73) = 0.0F; i_74 = i_4 + 14; l_75 = (long) i_74; l_76 = l_75 << 2; l_77 = l_76 + 24L; ul_78 = ul_0 + l_77; *((__global float *) ul_78) = 0.0F; i_79 = i_4 + 15; l_80 = (long) i_79; l_81 = l_80 << 2; l_82 = l_81 + 24L; ul_83 = ul_0 + l_82; *((__global float *) ul_83) = 0.0F; i_84 = i_4 + 16; l_85 = (long) i_84; l_86 = l_85 << 2; l_87 = l_86 + 24L; ul_88 = ul_0 + l_87; *((__global float *) ul_88) = 0.0F; i_89 = i_4 + 17; l_90 = (long) i_89; l_91 = l_90 << 2; l_92 = l_91 + 24L; ul_93 = ul_0 + l_92; *((__global float *) ul_93) = 0.0F; i_94 = i_4 + 18; l_95 = (long) i_94; l_96 = l_95 << 2; l_97 = l_96 + 24L; ul_98 = ul_0 + l_97; *((__global float *) ul_98) = 0.0F; i_99 = i_4 + 19; l_100 = (long) i_99; l_101 = l_100 << 2; l_102 = l_101 + 24L; ul_103 = ul_0 + l_102; *((__global float *) ul_103) = 0.0F; i_104 = i_4 + 20; l_105 = (long) i_104; l_106 = l_105 << 2; l_107 = l_106 + 24L; ul_108 = ul_0 + l_107; *((__global float *) ul_108) = 0.0F; i_109 = i_4 + 21; l_110 = (long) i_109; l_111 = l_110 << 2; l_112 = l_111 + 24L; ul_113 = ul_0 + l_112; *((__global float *) ul_113) = 0.0F; i_114 = i_4 + 22; l_115 = (long) i_114; l_116 = l_115 << 2; l_117 = l_116 + 24L; ul_118 = ul_0 + l_117; *((__global float *) ul_118) = 0.0F; i_119 = i_4 + 23; l_120 = (long) i_119; l_121 = l_120 << 2; l_122 = l_121 + 24L; ul_123 = ul_0 + l_122; *((__global float *) ul_123) = 0.0F; i_124 = i_4 + 24; l_125 = (long) i_124; l_126 = l_125 << 2; l_127 = l_126 + 24L; ul_128 = ul_0 + l_127; *((__global float *) ul_128) = 0.0F; i_129 = i_4 + 25; l_130 = (long) i_129; l_131 = l_130 << 2; l_132 = l_131 + 24L; ul_133 = ul_0 + l_132; *((__global float *) ul_133) = 0.0F; i_134 = i_4 + 26; l_135 = (long) i_134; l_136 = l_135 << 2; l_137 = l_136 + 24L; ul_138 = ul_0 + l_137; *((__global float *) ul_138) = 0.0F; i_139 = i_4 + 27; l_140 = (long) i_139; l_141 = l_140 << 2; l_142 = l_141 + 24L; ul_143 = ul_0 + l_142; *((__global float *) ul_143) = 0.0F; i_144 = i_4 + 28; l_145 = (long) i_144; l_146 = l_145 << 2; l_147 = l_146 + 24L; ul_148 = ul_0 + l_147; *((__global float *) ul_148) = 0.0F; i_149 = i_4 + 29; l_150 = (long) i_149; l_151 = l_150 << 2; l_152 = l_151 + 24L; ul_153 = ul_0 + l_152; *((__global float *) ul_153) = 0.0F; i_154 = i_4 + 30; l_155 = (long) i_154; l_156 = l_155 << 2; l_157 = l_156 + 24L; ul_158 = ul_0 + l_157; *((__global float *) ul_158) = 0.0F; i_159 = i_4 + 31; l_160 = (long) i_159; l_161 = l_160 << 2; l_162 = l_161 + 24L; ul_163 = ul_0 + l_162; *((__global float *) ul_163) = 0.0F; // BLOCK 3 MERGES [2 4 ] i_164 = i_3; for(;i_164 < 76800;) { // BLOCK 4 kfusion_tornado_algorithms_IterativeClosestPoint_reduceValues(_heap_base, _frame_base, _constant_region, _local_region, _atomics, ul_0, i_4, ul_1, i_164); i_165 = i_164 + 1024; i_164 = i_165; } // B4 // BLOCK 5 i_166 = get_global_size(0); i_167 = i_166 + i_3; i_3 = i_167; } // B5 // BLOCK 6 return; } // kernel #pragma OPENCL EXTENSION cl_khr_fp64 : enable #pragma OPENCL EXTENSION cl_khr_int64_base_atomics : enable __kernel void trackPose(__global uchar *_heap_base, ulong _frame_base, __constant uchar *_constant_region, __local uchar *_local_region, __global int *_atomics) { long l_59, l_58, l_47, l_175, l_46, l_174, l_173, l_60, l_48; ulong ul_21, ul_23, ul_25, ul_24, ul_27, ul_29, ul_31, ul_163, ul_162, ul_5, ul_4, ul_7, ul_6, ul_9, ul_8, ul_11, ul_75, ul_74, ul_13, ul_76, ul_15, ul_17, ul_19, ul_117, ul_181, ul_180, ul_61, ul_1, ul_129, ul_0, ul_64, ul_3, ul_2, ul_39, ul_40, ul_49, ul_176, ul_51, ul_179, ul_50; float f_269, f_268, f_271, f_270, f_265, f_264, f_267, f_266, f_261, f_260, f_262, f_257, f_256, f_259, f_258, f_253, f_252, f_255, f_249, f_248, f_251, f_250, f_244, f_247, f_246, f_241, f_240, f_243, f_242, f_236, f_239, f_238, f_233, f_232, f_235, f_229, f_228, f_231, f_225, f_224, f_227, f_226, f_221, f_223, f_222, f_216, f_219, f_218, f_212, f_215, f_214, f_209, f_208, f_211, f_79, f_78, f_73, f_72, f_69, f_68, f_71, f_67, f_289, f_32, f_288, f_285, f_28, f_284, f_287, f_30, f_286, f_280, f_283, f_26, f_282, f_277, f_20, f_276, f_279, f_22, f_278, f_273, f_16, f_275, f_18, f_274, f_140, f_137, f_136, f_139, f_133, f_132, f_135, f_134, f_128, f_125, f_124, f_127, f_121, f_120, f_123, f_122, f_116, f_113, f_112, f_115, f_109, f_108, f_111, f_107, f_100, f_103, f_102, f_97, f_96, f_99, f_98, f_93, f_92, f_95, f_89, f_88, f_90, f_85, f_87, f_86, f_80, f_83, f_82, f_205, f_207, f_206, f_201, f_200, f_203, f_202, f_197, f_196, f_199, f_193, f_192, f_195, f_189, f_188, f_191, f_185, f_184, f_187, f_183, f_156, f_153, f_152, f_155, f_148, f_151, f_150, f_145, f_144, f_146; float2 v2f_154, v2f_157, v2f_149; float4 v4f_14, v4f_142, v4f_65, v4f_130, v4f_118, v4f_105, v4f_10, v4f_12; float3 v3f_94, v3f_217, v3f_91, v3f_213, v3f_177, v3f_114, v3f_110, v3f_106, v3f_234, v3f_101, v3f_230, v3f_104, v3f_66, v3f_131, v3f_62, v3f_126, v3f_190, v3f_186, v3f_182, v3f_119, v3f_81, v3f_210, v3f_147, v3f_84, v3f_77, v3f_141, v3f_143, v3f_138, v3f_204, v3f_70, v3f_198; int i_178, i_53, i_54, i_52, i_41, i_169, i_42, i_170, i_167, i_168, i_45, i_43, i_171, i_44, i_172, i_33, i_34, i_290, i_37, i_165, i_38, i_35, i_291, i_36, i_164, i_292, i_220, i_194, i_63, i_57, i_55, i_56; int2 v2i_166; bool z_160, z_161, z_158, z_159; float8 v8f_245, v8f_263, v8f_281, v8f_254, v8f_237, v8f_272; __global ulong *_frame = (__global ulong *) &_heap_base[_frame_base]; // BLOCK 0 ul_0 = (ulong) _frame[3]; ul_1 = (ulong) _frame[4]; ul_2 = (ulong) _frame[5]; ul_3 = (ulong) _frame[6]; ul_4 = (ulong) _frame[7]; ul_5 = (ulong) _frame[8]; ul_6 = (ulong) _frame[9]; ul_7 = ul_5 + 24L; ul_8 = *((__global ulong *) ul_7); ul_9 = ul_8 + 24L; v4f_10 = vload4(0, (__global float *) ul_9); ul_11 = ul_8 + 40L; v4f_12 = vload4(0, (__global float *) ul_11); ul_13 = ul_8 + 56L; v4f_14 = vload4(0, (__global float *) ul_13); ul_15 = ul_8 + 36L; f_16 = *((__global float *) ul_15); ul_17 = ul_8 + 52L; f_18 = *((__global float *) ul_17); ul_19 = ul_8 + 68L; f_20 = *((__global float *) ul_19); ul_21 = ul_8 + 84L; f_22 = *((__global float *) ul_21); ul_23 = ul_6 + 24L; ul_24 = *((__global ulong *) ul_23); ul_25 = ul_24 + 36L; f_26 = *((__global float *) ul_25); ul_27 = ul_24 + 52L; f_28 = *((__global float *) ul_27); ul_29 = ul_24 + 68L; f_30 = *((__global float *) ul_29); ul_31 = ul_24 + 84L; f_32 = *((__global float *) ul_31); i_33 = get_global_id(1); // BLOCK 1 MERGES [0 16 ] i_34 = i_33; for(;i_34 < 120;) { // BLOCK 2 i_35 = get_global_id(0); // BLOCK 3 MERGES [2 15 ] i_36 = i_35; for(;i_36 < 160;) { // BLOCK 4 i_37 = get_global_size(0); i_38 = i_37 + i_36; ul_39 = ul_0 + 32L; ul_40 = *((__global ulong *) ul_39); i_41 = i_36 << 3; i_42 = i_34 << 10; i_43 = i_34 << 8; i_44 = i_42 + i_43; i_45 = i_41 + i_44; l_46 = (long) i_45; l_47 = l_46 << 2; l_48 = l_47 + 24L; ul_49 = ul_40 + l_48; ul_50 = ul_2 + 32L; ul_51 = *((__global ulong *) ul_50); i_52 = i_34 << 7; i_53 = i_34 << 5; i_54 = i_52 + i_53; i_55 = i_54 + i_36; i_56 = i_55 << 1; i_57 = i_56 + i_55; l_58 = (long) i_57; l_59 = l_58 << 2; l_60 = l_59 + 24L; ul_61 = ul_51 + l_60; v3f_62 = vload3(0, (__global float *) ul_61); i_63 = isequal(v3f_62.s0, -2.0F); if(i_63 == 1) { // BLOCK 5 f_246 = 0.0F; f_247 = 0.0F; f_248 = 0.0F; f_249 = 0.0F; f_250 = 0.0F; f_251 = 0.0F; f_252 = 0.0F; f_253 = -1.0F; v8f_245 = (float8)(f_246, f_247, f_248, f_249, f_250, f_251, f_252, f_253); vstore8(v8f_245, 0, (__global float *) ul_49); } // B5 else { // BLOCK 6 ul_64 = ul_24 + 24L; v4f_65 = vload4(0, (__global float *) ul_64); f_67 = v4f_65.s0; f_68 = v4f_65.s1; f_69 = v4f_65.s2; v3f_66 = (float3)(f_67, f_68, f_69); f_71 = v4f_10.s0; f_72 = v4f_10.s1; f_73 = v4f_10.s2; v3f_70 = (float3)(f_71, f_72, f_73); ul_74 = ul_1 + 32L; ul_75 = *((__global ulong *) ul_74); ul_76 = ul_75 + l_60; v3f_77 = vload3(0, (__global float *) ul_76); f_78 = v3f_70.s0 * v3f_77.s0; f_79 = v3f_70.s1 * v3f_77.s1; f_80 = v3f_70.s2 * v3f_77.s2; v3f_81 = (float3)(f_78, f_79, f_80); f_82 = v3f_81.s0 + v3f_81.s1; f_83 = f_82 + v3f_81.s2; f_85 = v4f_12.s0; f_86 = v4f_12.s1; f_87 = v4f_12.s2; v3f_84 = (float3)(f_85, f_86, f_87); f_88 = v3f_84.s0 * v3f_77.s0; f_89 = v3f_84.s1 * v3f_77.s1; f_90 = v3f_84.s2 * v3f_77.s2; v3f_91 = (float3)(f_88, f_89, f_90); f_92 = v3f_91.s0 + v3f_91.s1; f_93 = f_92 + v3f_91.s2; f_95 = v4f_14.s0; f_96 = v4f_14.s1; f_97 = v4f_14.s2; v3f_94 = (float3)(f_95, f_96, f_97); f_98 = v3f_94.s0 * v3f_77.s0; f_99 = v3f_94.s1 * v3f_77.s1; f_100 = v3f_94.s2 * v3f_77.s2; v3f_101 = (float3)(f_98, f_99, f_100); f_102 = v3f_101.s0 + v3f_101.s1; f_103 = f_102 + v3f_101.s2; v3f_104 = (float3)(f_83, f_93, f_103); v4f_105 = (float4)(f_16, f_18, f_20, f_22); f_107 = v4f_105.s0; f_108 = v4f_105.s1; f_109 = v4f_105.s2; v3f_106 = (float3)(f_107, f_108, f_109); v3f_110 = v3f_104 + v3f_106; f_111 = v3f_66.s0 * v3f_110.s0; f_112 = v3f_66.s1 * v3f_110.s1; f_113 = v3f_66.s2 * v3f_110.s2; v3f_114 = (float3)(f_111, f_112, f_113); f_115 = v3f_114.s0 + v3f_114.s1; f_116 = f_115 + v3f_114.s2; ul_117 = ul_24 + 40L; v4f_118 = vload4(0, (__global float *) ul_117); f_120 = v4f_118.s0; f_121 = v4f_118.s1; f_122 = v4f_118.s2; v3f_119 = (float3)(f_120, f_121, f_122); f_123 = v3f_119.s0 * v3f_110.s0; f_124 = v3f_119.s1 * v3f_110.s1; f_125 = v3f_119.s2 * v3f_110.s2; v3f_126 = (float3)(f_123, f_124, f_125); f_127 = v3f_126.s0 + v3f_126.s1; f_128 = f_127 + v3f_126.s2; ul_129 = ul_24 + 56L; v4f_130 = vload4(0, (__global float *) ul_129); f_132 = v4f_130.s0; f_133 = v4f_130.s1; f_134 = v4f_130.s2; v3f_131 = (float3)(f_132, f_133, f_134); f_135 = v3f_131.s0 * v3f_110.s0; f_136 = v3f_131.s1 * v3f_110.s1; f_137 = v3f_131.s2 * v3f_110.s2; v3f_138 = (float3)(f_135, f_136, f_137); f_139 = v3f_138.s0 + v3f_138.s1; f_140 = f_139 + v3f_138.s2; v3f_141 = (float3)(f_116, f_128, f_140); v4f_142 = (float4)(f_26, f_28, f_30, f_32); f_144 = v4f_142.s0; f_145 = v4f_142.s1; f_146 = v4f_142.s2; v3f_143 = (float3)(f_144, f_145, f_146); v3f_147 = v3f_141 + v3f_143; f_148 = 1.0F / v3f_147.s2; f_150 = v3f_147.s0; f_151 = v3f_147.s1; v2f_149 = (float2)(f_150, f_151); f_152 = f_148 * v2f_149.s0; f_153 = v2f_149.s1 * f_148; v2f_154 = (float2)(f_152, f_153); f_155 = v2f_154.s0 + 0.5F; f_156 = v2f_154.s1 + 0.5F; v2f_157 = (float2)(f_155, f_156); z_158 = isless(v2f_157.s1, 0.0F) || isless(239.0F, v2f_157.s1); z_159 = isless(319.0F, v2f_157.s0) || z_158; z_160 = isless(v2f_157.s0, 0.0F) || z_159; z_161 = isless(v2f_157.s0, 0.0F) || z_159; if(z_161) { // BLOCK 7 f_255 = 0.0F; f_256 = 0.0F; f_257 = 0.0F; f_258 = 0.0F; f_259 = 0.0F; f_260 = 0.0F; f_261 = 0.0F; f_262 = -2.0F; v8f_254 = (float8)(f_255, f_256, f_257, f_258, f_259, f_260, f_261, f_262); vstore8(v8f_254, 0, (__global float *) ul_49); } // B7 else { // BLOCK 8 ul_162 = ul_4 + 32L; ul_163 = *((__global ulong *) ul_162); i_164 = isnan(v2f_157.s0)? 0 : (int) v2f_157.s0; i_165 = isnan(v2f_157.s1)? 0 : (int) v2f_157.s1; v2i_166 = (int2)(i_164, i_165); i_167 = v2i_166.s1 << 8; i_168 = v2i_166.s1 << 6; i_169 = i_167 + i_168; i_170 = v2i_166.s0 + i_169; i_171 = i_170 << 1; i_172 = i_171 + i_170; l_173 = (long) i_172; l_174 = l_173 << 2; l_175 = l_174 + 24L; ul_176 = ul_163 + l_175; v3f_177 = vload3(0, (__global float *) ul_176); i_178 = isequal(v3f_177.s0, -2.0F); if(i_178 == 1) { // BLOCK 9 f_264 = 0.0F; f_265 = 0.0F; f_266 = 0.0F; f_267 = 0.0F; f_268 = 0.0F; f_269 = 0.0F; f_270 = 0.0F; f_271 = -3.0F; v8f_263 = (float8)(f_264, f_265, f_266, f_267, f_268, f_269, f_270, f_271); vstore8(v8f_263, 0, (__global float *) ul_49); } // B9 else { // BLOCK 10 ul_179 = ul_3 + 32L; ul_180 = *((__global ulong *) ul_179); ul_181 = ul_180 + l_175; v3f_182 = vload3(0, (__global float *) ul_181); f_183 = v3f_182.s0 - v3f_110.s0; f_184 = v3f_182.s1 - v3f_110.s1; f_185 = v3f_182.s2 - v3f_110.s2; v3f_186 = (float3)(f_183, f_184, f_185); f_187 = v3f_186.s0 * v3f_186.s0; f_188 = v3f_186.s1 * v3f_186.s1; f_189 = v3f_186.s2 * v3f_186.s2; v3f_190 = (float3)(f_187, f_188, f_189); f_191 = v3f_190.s0 + v3f_190.s1; f_192 = f_191 + v3f_190.s2; f_193 = sqrt(f_192); i_194 = isless(0.1F, f_193); if(i_194 == 1) { // BLOCK 11 f_273 = 0.0F; f_274 = 0.0F; f_275 = 0.0F; f_276 = 0.0F; f_277 = 0.0F; f_278 = 0.0F; f_279 = 0.0F; f_280 = -4.0F; v8f_272 = (float8)(f_273, f_274, f_275, f_276, f_277, f_278, f_279, f_280); vstore8(v8f_272, 0, (__global float *) ul_49); } // B11 else { // BLOCK 12 f_195 = v3f_70.s0 * v3f_62.s0; f_196 = v3f_62.s1 * v3f_70.s1; f_197 = v3f_62.s2 * v3f_70.s2; v3f_198 = (float3)(f_195, f_196, f_197); f_199 = v3f_198.s0 + v3f_198.s1; f_200 = f_199 + v3f_198.s2; f_201 = v3f_84.s0 * v3f_62.s0; f_202 = v3f_84.s1 * v3f_62.s1; f_203 = v3f_84.s2 * v3f_62.s2; v3f_204 = (float3)(f_201, f_202, f_203); f_205 = v3f_204.s0 + v3f_204.s1; f_206 = f_205 + v3f_204.s2; f_207 = v3f_94.s0 * v3f_62.s0; f_208 = v3f_94.s1 * v3f_62.s1; f_209 = v3f_94.s2 * v3f_62.s2; v3f_210 = (float3)(f_207, f_208, f_209); f_211 = v3f_210.s0 + v3f_210.s1; f_212 = f_211 + v3f_210.s2; v3f_213 = (float3)(f_200, f_206, f_212); f_214 = v3f_213.s0 * v3f_177.s0; f_215 = v3f_213.s1 * v3f_177.s1; f_216 = v3f_213.s2 * v3f_177.s2; v3f_217 = (float3)(f_214, f_215, f_216); f_218 = v3f_217.s0 + v3f_217.s1; f_219 = f_218 + v3f_217.s2; i_220 = isless(f_219, 0.8F); if(i_220 == 1) { // BLOCK 13 f_282 = 0.0F; f_283 = 0.0F; f_284 = 0.0F; f_285 = 0.0F; f_286 = 0.0F; f_287 = 0.0F; f_288 = 0.0F; f_289 = -5.0F; v8f_281 = (float8)(f_282, f_283, f_284, f_285, f_286, f_287, f_288, f_289); vstore8(v8f_281, 0, (__global float *) ul_49); } // B13 else { // BLOCK 14 f_221 = v3f_110.s1 * v3f_177.s2; f_222 = v3f_110.s2 * v3f_177.s1; f_223 = f_221 - f_222; f_224 = v3f_110.s2 * v3f_177.s0; f_225 = v3f_110.s0 * v3f_177.s2; f_226 = f_224 - f_225; f_227 = v3f_110.s0 * v3f_177.s1; f_228 = v3f_110.s1 * v3f_177.s0; f_229 = f_227 - f_228; v3f_230 = (float3)(f_223, f_226, f_229); f_231 = v3f_177.s0 * v3f_186.s0; f_232 = v3f_186.s1 * v3f_177.s1; f_233 = v3f_186.s2 * v3f_177.s2; v3f_234 = (float3)(f_231, f_232, f_233); f_235 = v3f_234.s0 + v3f_234.s1; f_236 = f_235 + v3f_234.s2; f_238 = v3f_177.s0; f_239 = v3f_177.s1; f_240 = v3f_177.s2; f_241 = v3f_230.s0; f_242 = v3f_230.s1; f_243 = v3f_230.s2; f_244 = 1.0F; v8f_237 = (float8)(f_238, f_239, f_240, f_241, f_242, f_243, f_236, f_244); vstore8(v8f_237, 0, (__global float *) ul_49); } // B14 } // B12 } // B10 } // B8 } // B6 // BLOCK 15 MERGES [5 14 13 11 9 7 ] i_290 = i_38; i_36 = i_290; } // B15 // BLOCK 16 i_291 = get_global_size(1); i_292 = i_291 + i_34; i_34 = i_292; } // B16 // BLOCK 17 return; } // kernel #pragma OPENCL EXTENSION cl_khr_fp64 : enable #pragma OPENCL EXTENSION cl_khr_int64_base_atomics : enable void kfusion_tornado_algorithms_IterativeClosestPoint_reduceValues(__global uchar *_heap_base, ulong _frame_base, __constant uchar *_constant_region, __local uchar *_local_region, __global int *_atomics, ulong sums, int startIndex, ulong trackingResults, int resultIndex) { long l_235, l_234, l_233, l_226, l_225, l_224, l_217, l_216, l_208, l_215, l_201, l_200, l_207, l_206, l_194, l_193, l_192, l_199, l_187, l_186, l_185, l_179, l_178, l_180, l_171, l_173, l_172, l_166, l_165, l_164, l_152, l_159, l_158, l_157, l_145, l_144, l_151, l_150, l_138, l_137, l_136, l_143, l_131, l_130, l_129, l_123, l_122, l_124, l_115, l_117, l_116, l_110, l_109, l_108, l_96, l_103, l_102, l_101, l_89, l_88, l_95, l_94, l_82, l_81, l_80, l_87, l_75, l_74, l_73, l_67, l_66, l_68, l_59, l_61, l_60, l_54, l_53, l_52, l_40, l_47, l_46, l_45, l_33, l_32, l_39, l_38, l_26, l_25, l_24, l_31, l_19, l_18, l_17, l_11, l_10, l_12, l_3, l_5, l_4; ulong ul_20, ul_153, ul_27, ul_90, ul_218, ul_97, ul_160, ul_227, ul_34, ul_69, ul_132, ul_6, ul_139, ul_202, ul_13, ul_76, ul_209, ul_83, ul_146, ul_181, ul_55, ul_118, ul_125, ul_188, ul_62, ul_1, ul_0, ul_195, ul_167, ul_41, ul_104, ul_236, ul_111, ul_174, ul_48; float f_141, f_140, f_15, f_14, f_133, f_134, f_127, f_126, f_120, f_119, f_113, f_112, f_237, f_238, f_105, f_106, f_229, f_228, f_231, f_99, f_98, f_92, f_220, f_222, f_91, f_219, f_85, f_213, f_84, f_211, f_210, f_77, f_204, f_78, f_203, f_197, f_196, f_71, f_70, f_64, f_189, f_63, f_190, f_57, f_56, f_183, f_182, f_49, f_176, f_50, f_175, f_169, f_168, f_43, f_42, f_36, f_161, f_35, f_162, f_29, f_28, f_155, f_154, f_21, f_148, f_22, f_147; int i_177, i_114, i_51, i_170, i_232, i_107, i_44, i_223, i_37, i_163, i_100, i_23, i_93, i_30, i_156, i_79, i_16, i_149, i_86, i_214, i_135, i_8, i_72, i_205, i_142, i_65, i_2, i_191, i_128, i_198, i_121, i_58, i_184; float8 v8f_7; bool z_221, z_9, z_230, z_212; // BLOCK 0 ul_0 = trackingResults + 32L; ul_1 = *((__global ulong *) ul_0); i_2 = resultIndex << 3; l_3 = (long) i_2; l_4 = l_3 << 2; l_5 = l_4 + 24L; ul_6 = ul_1 + l_5; v8f_7 = vload8(0, (__global float *) ul_6); i_8 = isnan(v8f_7.s7)? 0 : (int) v8f_7.s7; z_9 = i_8 < 1; if(z_9) { // BLOCK 1 z_212 = i_8 == -4; if(z_212) { // BLOCK 2 f_213 = 1.0F; } // B2 else { // BLOCK 3 f_213 = 0.0F; } // B3 // BLOCK 4 MERGES [2 3 ] i_214 = startIndex + 29; l_215 = (long) i_214; l_216 = l_215 << 2; l_217 = l_216 + 24L; ul_218 = sums + l_217; f_219 = *((__global float *) ul_218); f_220 = f_213 + f_219; *((__global float *) ul_218) = f_220; f_219 = f_220; z_221 = i_8 == -5; if(z_221) { // BLOCK 5 f_222 = 1.0F; } // B5 else { // BLOCK 6 f_222 = 0.0F; } // B6 // BLOCK 7 MERGES [5 6 ] i_223 = startIndex + 30; l_224 = (long) i_223; l_225 = l_224 << 2; l_226 = l_225 + 24L; ul_227 = sums + l_226; f_228 = *((__global float *) ul_227); f_229 = f_222 + f_228; *((__global float *) ul_227) = f_229; f_228 = f_229; z_230 = i_8 < -3; if(z_230) { // BLOCK 8 f_231 = 0.0F; } // B8 else { // BLOCK 9 f_231 = 1.0F; } // B9 // BLOCK 10 MERGES [9 8 ] i_232 = startIndex + 31; l_233 = (long) i_232; l_234 = l_233 << 2; l_235 = l_234 + 24L; ul_236 = sums + l_235; f_237 = *((__global float *) ul_236); f_238 = f_231 + f_237; *((__global float *) ul_236) = f_238; f_237 = f_238; return; } // B10 else { // BLOCK 11 l_10 = (long) startIndex; l_11 = l_10 << 2; l_12 = l_11 + 24L; ul_13 = sums + l_12; f_14 = *((__global float *) ul_13); f_15 = fma(v8f_7.s6, v8f_7.s6, f_14); *((__global float *) ul_13) = f_15; f_14 = f_15; i_16 = startIndex + 1; l_17 = (long) i_16; l_18 = l_17 << 2; l_19 = l_18 + 24L; ul_20 = sums + l_19; f_21 = *((__global float *) ul_20); f_22 = fma(v8f_7.s6, v8f_7.s0, f_21); *((__global float *) ul_20) = f_22; f_21 = f_22; i_23 = startIndex + 2; l_24 = (long) i_23; l_25 = l_24 << 2; l_26 = l_25 + 24L; ul_27 = sums + l_26; f_28 = *((__global float *) ul_27); f_29 = fma(v8f_7.s6, v8f_7.s1, f_28); *((__global float *) ul_27) = f_29; f_28 = f_29; i_30 = startIndex + 3; l_31 = (long) i_30; l_32 = l_31 << 2; l_33 = l_32 + 24L; ul_34 = sums + l_33; f_35 = *((__global float *) ul_34); f_36 = fma(v8f_7.s6, v8f_7.s2, f_35); *((__global float *) ul_34) = f_36; f_35 = f_36; i_37 = startIndex + 4; l_38 = (long) i_37; l_39 = l_38 << 2; l_40 = l_39 + 24L; ul_41 = sums + l_40; f_42 = *((__global float *) ul_41); f_43 = fma(v8f_7.s6, v8f_7.s3, f_42); *((__global float *) ul_41) = f_43; f_42 = f_43; i_44 = startIndex + 5; l_45 = (long) i_44; l_46 = l_45 << 2; l_47 = l_46 + 24L; ul_48 = sums + l_47; f_49 = *((__global float *) ul_48); f_50 = fma(v8f_7.s6, v8f_7.s4, f_49); *((__global float *) ul_48) = f_50; f_49 = f_50; i_51 = startIndex + 6; l_52 = (long) i_51; l_53 = l_52 << 2; l_54 = l_53 + 24L; ul_55 = sums + l_54; f_56 = *((__global float *) ul_55); f_57 = fma(v8f_7.s6, v8f_7.s5, f_56); *((__global float *) ul_55) = f_57; f_56 = f_57; i_58 = startIndex + 7; l_59 = (long) i_58; l_60 = l_59 << 2; l_61 = l_60 + 24L; ul_62 = sums + l_61; f_63 = *((__global float *) ul_62); f_64 = fma(v8f_7.s0, v8f_7.s0, f_63); *((__global float *) ul_62) = f_64; f_63 = f_64; i_65 = startIndex + 8; l_66 = (long) i_65; l_67 = l_66 << 2; l_68 = l_67 + 24L; ul_69 = sums + l_68; f_70 = *((__global float *) ul_69); f_71 = fma(v8f_7.s0, v8f_7.s1, f_70); *((__global float *) ul_69) = f_71; f_70 = f_71; i_72 = startIndex + 9; l_73 = (long) i_72; l_74 = l_73 << 2; l_75 = l_74 + 24L; ul_76 = sums + l_75; f_77 = *((__global float *) ul_76); f_78 = fma(v8f_7.s0, v8f_7.s2, f_77); *((__global float *) ul_76) = f_78; f_77 = f_78; i_79 = startIndex + 10; l_80 = (long) i_79; l_81 = l_80 << 2; l_82 = l_81 + 24L; ul_83 = sums + l_82; f_84 = *((__global float *) ul_83); f_85 = fma(v8f_7.s0, v8f_7.s3, f_84); *((__global float *) ul_83) = f_85; f_84 = f_85; i_86 = startIndex + 11; l_87 = (long) i_86; l_88 = l_87 << 2; l_89 = l_88 + 24L; ul_90 = sums + l_89; f_91 = *((__global float *) ul_90); f_92 = fma(v8f_7.s0, v8f_7.s4, f_91); *((__global float *) ul_90) = f_92; f_91 = f_92; i_93 = startIndex + 12; l_94 = (long) i_93; l_95 = l_94 << 2; l_96 = l_95 + 24L; ul_97 = sums + l_96; f_98 = *((__global float *) ul_97); f_99 = fma(v8f_7.s0, v8f_7.s5, f_98); *((__global float *) ul_97) = f_99; f_98 = f_99; i_100 = startIndex + 13; l_101 = (long) i_100; l_102 = l_101 << 2; l_103 = l_102 + 24L; ul_104 = sums + l_103; f_105 = *((__global float *) ul_104); f_106 = fma(v8f_7.s1, v8f_7.s1, f_105); *((__global float *) ul_104) = f_106; f_105 = f_106; i_107 = startIndex + 14; l_108 = (long) i_107; l_109 = l_108 << 2; l_110 = l_109 + 24L; ul_111 = sums + l_110; f_112 = *((__global float *) ul_111); f_113 = fma(v8f_7.s1, v8f_7.s2, f_112); *((__global float *) ul_111) = f_113; f_112 = f_113; i_114 = startIndex + 15; l_115 = (long) i_114; l_116 = l_115 << 2; l_117 = l_116 + 24L; ul_118 = sums + l_117; f_119 = *((__global float *) ul_118); f_120 = fma(v8f_7.s1, v8f_7.s3, f_119); *((__global float *) ul_118) = f_120; f_119 = f_120; i_121 = startIndex + 16; l_122 = (long) i_121; l_123 = l_122 << 2; l_124 = l_123 + 24L; ul_125 = sums + l_124; f_126 = *((__global float *) ul_125); f_127 = fma(v8f_7.s1, v8f_7.s4, f_126); *((__global float *) ul_125) = f_127; f_126 = f_127; i_128 = startIndex + 17; l_129 = (long) i_128; l_130 = l_129 << 2; l_131 = l_130 + 24L; ul_132 = sums + l_131; f_133 = *((__global float *) ul_132); f_134 = fma(v8f_7.s1, v8f_7.s5, f_133); *((__global float *) ul_132) = f_134; f_133 = f_134; i_135 = startIndex + 18; l_136 = (long) i_135; l_137 = l_136 << 2; l_138 = l_137 + 24L; ul_139 = sums + l_138; f_140 = *((__global float *) ul_139); f_141 = fma(v8f_7.s2, v8f_7.s2, f_140); *((__global float *) ul_139) = f_141; f_140 = f_141; i_142 = startIndex + 19; l_143 = (long) i_142; l_144 = l_143 << 2; l_145 = l_144 + 24L; ul_146 = sums + l_145; f_147 = *((__global float *) ul_146); f_148 = fma(v8f_7.s2, v8f_7.s3, f_147); *((__global float *) ul_146) = f_148; f_147 = f_148; i_149 = startIndex + 20; l_150 = (long) i_149; l_151 = l_150 << 2; l_152 = l_151 + 24L; ul_153 = sums + l_152; f_154 = *((__global float *) ul_153); f_155 = fma(v8f_7.s2, v8f_7.s4, f_154); *((__global float *) ul_153) = f_155; f_154 = f_155; i_156 = startIndex + 21; l_157 = (long) i_156; l_158 = l_157 << 2; l_159 = l_158 + 24L; ul_160 = sums + l_159; f_161 = *((__global float *) ul_160); f_162 = fma(v8f_7.s2, v8f_7.s5, f_161); *((__global float *) ul_160) = f_162; f_161 = f_162; i_163 = startIndex + 22; l_164 = (long) i_163; l_165 = l_164 << 2; l_166 = l_165 + 24L; ul_167 = sums + l_166; f_168 = *((__global float *) ul_167); f_169 = fma(v8f_7.s3, v8f_7.s3, f_168); *((__global float *) ul_167) = f_169; f_168 = f_169; i_170 = startIndex + 23; l_171 = (long) i_170; l_172 = l_171 << 2; l_173 = l_172 + 24L; ul_174 = sums + l_173; f_175 = *((__global float *) ul_174); f_176 = fma(v8f_7.s3, v8f_7.s4, f_175); *((__global float *) ul_174) = f_176; f_175 = f_176; i_177 = startIndex + 24; l_178 = (long) i_177; l_179 = l_178 << 2; l_180 = l_179 + 24L; ul_181 = sums + l_180; f_182 = *((__global float *) ul_181); f_183 = fma(v8f_7.s3, v8f_7.s5, f_182); *((__global float *) ul_181) = f_183; f_182 = f_183; i_184 = startIndex + 25; l_185 = (long) i_184; l_186 = l_185 << 2; l_187 = l_186 + 24L; ul_188 = sums + l_187; f_189 = *((__global float *) ul_188); f_190 = fma(v8f_7.s4, v8f_7.s4, f_189); *((__global float *) ul_188) = f_190; f_189 = f_190; i_191 = startIndex + 26; l_192 = (long) i_191; l_193 = l_192 << 2; l_194 = l_193 + 24L; ul_195 = sums + l_194; f_196 = *((__global float *) ul_195); f_197 = fma(v8f_7.s4, v8f_7.s5, f_196); *((__global float *) ul_195) = f_197; f_196 = f_197; i_198 = startIndex + 27; l_199 = (long) i_198; l_200 = l_199 << 2; l_201 = l_200 + 24L; ul_202 = sums + l_201; f_203 = *((__global float *) ul_202); f_204 = fma(v8f_7.s5, v8f_7.s5, f_203); *((__global float *) ul_202) = f_204; f_203 = f_204; i_205 = startIndex + 28; l_206 = (long) i_205; l_207 = l_206 << 2; l_208 = l_207 + 24L; ul_209 = sums + l_208; f_210 = *((__global float *) ul_209); f_211 = f_210 + 1.0F; *((__global float *) ul_209) = f_211; f_210 = f_211; return; } // B11 } // kernel #pragma OPENCL EXTENSION cl_khr_fp64 : enable #pragma OPENCL EXTENSION cl_khr_int64_base_atomics : enable __kernel void mapReduce(__global uchar *_heap_base, ulong _frame_base, __constant uchar *_constant_region, __local uchar *_local_region, __global int *_atomics) { long l_122, l_121, l_120, l_127, l_126, l_125, l_115, l_112, l_117, l_116, l_107, l_106, l_105, l_111, l_110, l_97, l_96, l_102, l_101, l_100, l_91, l_90, l_95, l_92, l_82, l_81, l_80, l_87, l_86, l_85, l_75, l_72, l_77, l_76, l_67, l_66, l_65, l_71, l_70, l_57, l_56, l_62, l_61, l_60, l_51, l_50, l_55, l_52, l_42, l_41, l_40, l_47, l_46, l_45, l_35, l_162, l_161, l_32, l_160, l_37, l_36, l_27, l_155, l_26, l_25, l_152, l_31, l_30, l_157, l_156, l_147, l_146, l_17, l_145, l_16, l_151, l_22, l_150, l_21, l_20, l_11, l_10, l_137, l_136, l_15, l_142, l_141, l_12, l_140, l_131, l_130, l_7, l_135, l_6, l_5, l_132; ulong ul_148, ul_23, ul_153, ul_88, ul_93, ul_28, ul_158, ul_33, ul_163, ul_98, ul_133, ul_68, ul_73, ul_8, ul_138, ul_13, ul_143, ul_78, ul_83, ul_18, ul_53, ul_118, ul_123, ul_58, ul_63, ul_1, ul_0, ul_128, ul_103, ul_38, ul_43, ul_108, ul_113, ul_48; int i_49, i_114, i_54, i_39, i_167, i_104, i_109, i_44, i_34, i_159, i_165, i_166, i_99, i_164, i_89, i_154, i_24, i_29, i_94, i_79, i_144, i_149, i_19, i_84, i_9, i_74, i_14, i_139, i_129, i_2, i_64, i_69, i_134, i_3, i_4, i_119, i_59, i_124; __global ulong *_frame = (__global ulong *) &_heap_base[_frame_base]; // BLOCK 0 ul_0 = (ulong) _frame[3]; ul_1 = (ulong) _frame[4]; i_2 = get_global_id(0); // BLOCK 1 MERGES [0 5 ] i_3 = i_2; for(;i_3 < 1024;) { // BLOCK 2 i_4 = i_3 << 5; l_5 = (long) i_4; l_6 = l_5 << 2; l_7 = l_6 + 24L; ul_8 = ul_0 + l_7; *((__global float *) ul_8) = 0.0F; i_9 = i_4 + 1; l_10 = (long) i_9; l_11 = l_10 << 2; l_12 = l_11 + 24L; ul_13 = ul_0 + l_12; *((__global float *) ul_13) = 0.0F; i_14 = i_4 + 2; l_15 = (long) i_14; l_16 = l_15 << 2; l_17 = l_16 + 24L; ul_18 = ul_0 + l_17; *((__global float *) ul_18) = 0.0F; i_19 = i_4 + 3; l_20 = (long) i_19; l_21 = l_20 << 2; l_22 = l_21 + 24L; ul_23 = ul_0 + l_22; *((__global float *) ul_23) = 0.0F; i_24 = i_4 + 4; l_25 = (long) i_24; l_26 = l_25 << 2; l_27 = l_26 + 24L; ul_28 = ul_0 + l_27; *((__global float *) ul_28) = 0.0F; i_29 = i_4 + 5; l_30 = (long) i_29; l_31 = l_30 << 2; l_32 = l_31 + 24L; ul_33 = ul_0 + l_32; *((__global float *) ul_33) = 0.0F; i_34 = i_4 + 6; l_35 = (long) i_34; l_36 = l_35 << 2; l_37 = l_36 + 24L; ul_38 = ul_0 + l_37; *((__global float *) ul_38) = 0.0F; i_39 = i_4 + 7; l_40 = (long) i_39; l_41 = l_40 << 2; l_42 = l_41 + 24L; ul_43 = ul_0 + l_42; *((__global float *) ul_43) = 0.0F; i_44 = i_4 + 8; l_45 = (long) i_44; l_46 = l_45 << 2; l_47 = l_46 + 24L; ul_48 = ul_0 + l_47; *((__global float *) ul_48) = 0.0F; i_49 = i_4 + 9; l_50 = (long) i_49; l_51 = l_50 << 2; l_52 = l_51 + 24L; ul_53 = ul_0 + l_52; *((__global float *) ul_53) = 0.0F; i_54 = i_4 + 10; l_55 = (long) i_54; l_56 = l_55 << 2; l_57 = l_56 + 24L; ul_58 = ul_0 + l_57; *((__global float *) ul_58) = 0.0F; i_59 = i_4 + 11; l_60 = (long) i_59; l_61 = l_60 << 2; l_62 = l_61 + 24L; ul_63 = ul_0 + l_62; *((__global float *) ul_63) = 0.0F; i_64 = i_4 + 12; l_65 = (long) i_64; l_66 = l_65 << 2; l_67 = l_66 + 24L; ul_68 = ul_0 + l_67; *((__global float *) ul_68) = 0.0F; i_69 = i_4 + 13; l_70 = (long) i_69; l_71 = l_70 << 2; l_72 = l_71 + 24L; ul_73 = ul_0 + l_72; *((__global float *) ul_73) = 0.0F; i_74 = i_4 + 14; l_75 = (long) i_74; l_76 = l_75 << 2; l_77 = l_76 + 24L; ul_78 = ul_0 + l_77; *((__global float *) ul_78) = 0.0F; i_79 = i_4 + 15; l_80 = (long) i_79; l_81 = l_80 << 2; l_82 = l_81 + 24L; ul_83 = ul_0 + l_82; *((__global float *) ul_83) = 0.0F; i_84 = i_4 + 16; l_85 = (long) i_84; l_86 = l_85 << 2; l_87 = l_86 + 24L; ul_88 = ul_0 + l_87; *((__global float *) ul_88) = 0.0F; i_89 = i_4 + 17; l_90 = (long) i_89; l_91 = l_90 << 2; l_92 = l_91 + 24L; ul_93 = ul_0 + l_92; *((__global float *) ul_93) = 0.0F; i_94 = i_4 + 18; l_95 = (long) i_94; l_96 = l_95 << 2; l_97 = l_96 + 24L; ul_98 = ul_0 + l_97; *((__global float *) ul_98) = 0.0F; i_99 = i_4 + 19; l_100 = (long) i_99; l_101 = l_100 << 2; l_102 = l_101 + 24L; ul_103 = ul_0 + l_102; *((__global float *) ul_103) = 0.0F; i_104 = i_4 + 20; l_105 = (long) i_104; l_106 = l_105 << 2; l_107 = l_106 + 24L; ul_108 = ul_0 + l_107; *((__global float *) ul_108) = 0.0F; i_109 = i_4 + 21; l_110 = (long) i_109; l_111 = l_110 << 2; l_112 = l_111 + 24L; ul_113 = ul_0 + l_112; *((__global float *) ul_113) = 0.0F; i_114 = i_4 + 22; l_115 = (long) i_114; l_116 = l_115 << 2; l_117 = l_116 + 24L; ul_118 = ul_0 + l_117; *((__global float *) ul_118) = 0.0F; i_119 = i_4 + 23; l_120 = (long) i_119; l_121 = l_120 << 2; l_122 = l_121 + 24L; ul_123 = ul_0 + l_122; *((__global float *) ul_123) = 0.0F; i_124 = i_4 + 24; l_125 = (long) i_124; l_126 = l_125 << 2; l_127 = l_126 + 24L; ul_128 = ul_0 + l_127; *((__global float *) ul_128) = 0.0F; i_129 = i_4 + 25; l_130 = (long) i_129; l_131 = l_130 << 2; l_132 = l_131 + 24L; ul_133 = ul_0 + l_132; *((__global float *) ul_133) = 0.0F; i_134 = i_4 + 26; l_135 = (long) i_134; l_136 = l_135 << 2; l_137 = l_136 + 24L; ul_138 = ul_0 + l_137; *((__global float *) ul_138) = 0.0F; i_139 = i_4 + 27; l_140 = (long) i_139; l_141 = l_140 << 2; l_142 = l_141 + 24L; ul_143 = ul_0 + l_142; *((__global float *) ul_143) = 0.0F; i_144 = i_4 + 28; l_145 = (long) i_144; l_146 = l_145 << 2; l_147 = l_146 + 24L; ul_148 = ul_0 + l_147; *((__global float *) ul_148) = 0.0F; i_149 = i_4 + 29; l_150 = (long) i_149; l_151 = l_150 << 2; l_152 = l_151 + 24L; ul_153 = ul_0 + l_152; *((__global float *) ul_153) = 0.0F; i_154 = i_4 + 30; l_155 = (long) i_154; l_156 = l_155 << 2; l_157 = l_156 + 24L; ul_158 = ul_0 + l_157; *((__global float *) ul_158) = 0.0F; i_159 = i_4 + 31; l_160 = (long) i_159; l_161 = l_160 << 2; l_162 = l_161 + 24L; ul_163 = ul_0 + l_162; *((__global float *) ul_163) = 0.0F; // BLOCK 3 MERGES [2 4 ] i_164 = i_3; for(;i_164 < 19200;) { // BLOCK 4 kfusion_tornado_algorithms_IterativeClosestPoint_reduceValues(_heap_base, _frame_base, _constant_region, _local_region, _atomics, ul_0, i_4, ul_1, i_164); i_165 = i_164 + 1024; i_164 = i_165; } // B4 // BLOCK 5 i_166 = get_global_size(0); i_167 = i_166 + i_3; i_3 = i_167; } // B5 // BLOCK 6 return; } // kernel #pragma OPENCL EXTENSION cl_khr_fp64 : enable #pragma OPENCL EXTENSION cl_khr_int64_base_atomics : enable __kernel void trackPose(__global uchar *_heap_base, ulong _frame_base, __constant uchar *_constant_region, __local uchar *_local_region, __global int *_atomics) { long l_59, l_58, l_47, l_175, l_46, l_174, l_173, l_60, l_48; ulong ul_21, ul_23, ul_25, ul_24, ul_27, ul_29, ul_31, ul_163, ul_162, ul_5, ul_4, ul_7, ul_6, ul_9, ul_8, ul_11, ul_75, ul_74, ul_13, ul_76, ul_15, ul_17, ul_19, ul_117, ul_181, ul_180, ul_61, ul_1, ul_129, ul_0, ul_64, ul_3, ul_2, ul_39, ul_40, ul_49, ul_176, ul_51, ul_179, ul_50; float f_269, f_268, f_271, f_270, f_265, f_264, f_267, f_266, f_261, f_260, f_262, f_257, f_256, f_259, f_258, f_253, f_252, f_255, f_249, f_248, f_251, f_250, f_244, f_247, f_246, f_241, f_240, f_243, f_242, f_236, f_239, f_238, f_233, f_232, f_235, f_229, f_228, f_231, f_225, f_224, f_227, f_226, f_221, f_223, f_222, f_216, f_219, f_218, f_212, f_215, f_214, f_209, f_208, f_211, f_79, f_78, f_73, f_72, f_69, f_68, f_71, f_67, f_289, f_32, f_288, f_285, f_28, f_284, f_287, f_30, f_286, f_280, f_283, f_26, f_282, f_277, f_20, f_276, f_279, f_22, f_278, f_273, f_16, f_275, f_18, f_274, f_140, f_137, f_136, f_139, f_133, f_132, f_135, f_134, f_128, f_125, f_124, f_127, f_121, f_120, f_123, f_122, f_116, f_113, f_112, f_115, f_109, f_108, f_111, f_107, f_100, f_103, f_102, f_97, f_96, f_99, f_98, f_93, f_92, f_95, f_89, f_88, f_90, f_85, f_87, f_86, f_80, f_83, f_82, f_205, f_207, f_206, f_201, f_200, f_203, f_202, f_197, f_196, f_199, f_193, f_192, f_195, f_189, f_188, f_191, f_185, f_184, f_187, f_183, f_156, f_153, f_152, f_155, f_148, f_151, f_150, f_145, f_144, f_146; float2 v2f_154, v2f_157, v2f_149; float4 v4f_14, v4f_142, v4f_65, v4f_130, v4f_118, v4f_105, v4f_10, v4f_12; float3 v3f_94, v3f_217, v3f_91, v3f_213, v3f_177, v3f_114, v3f_110, v3f_106, v3f_234, v3f_101, v3f_230, v3f_104, v3f_66, v3f_131, v3f_62, v3f_126, v3f_190, v3f_186, v3f_182, v3f_119, v3f_81, v3f_210, v3f_147, v3f_84, v3f_77, v3f_141, v3f_143, v3f_138, v3f_204, v3f_70, v3f_198; int i_178, i_53, i_54, i_52, i_41, i_169, i_42, i_170, i_167, i_168, i_45, i_43, i_171, i_44, i_172, i_33, i_34, i_290, i_37, i_165, i_38, i_35, i_291, i_36, i_164, i_292, i_220, i_194, i_63, i_57, i_55, i_56; int2 v2i_166; bool z_160, z_161, z_158, z_159; float8 v8f_245, v8f_263, v8f_281, v8f_254, v8f_237, v8f_272; __global ulong *_frame = (__global ulong *) &_heap_base[_frame_base]; // BLOCK 0 ul_0 = (ulong) _frame[3]; ul_1 = (ulong) _frame[4]; ul_2 = (ulong) _frame[5]; ul_3 = (ulong) _frame[6]; ul_4 = (ulong) _frame[7]; ul_5 = (ulong) _frame[8]; ul_6 = (ulong) _frame[9]; ul_7 = ul_5 + 24L; ul_8 = *((__global ulong *) ul_7); ul_9 = ul_8 + 24L; v4f_10 = vload4(0, (__global float *) ul_9); ul_11 = ul_8 + 40L; v4f_12 = vload4(0, (__global float *) ul_11); ul_13 = ul_8 + 56L; v4f_14 = vload4(0, (__global float *) ul_13); ul_15 = ul_8 + 36L; f_16 = *((__global float *) ul_15); ul_17 = ul_8 + 52L; f_18 = *((__global float *) ul_17); ul_19 = ul_8 + 68L; f_20 = *((__global float *) ul_19); ul_21 = ul_8 + 84L; f_22 = *((__global float *) ul_21); ul_23 = ul_6 + 24L; ul_24 = *((__global ulong *) ul_23); ul_25 = ul_24 + 36L; f_26 = *((__global float *) ul_25); ul_27 = ul_24 + 52L; f_28 = *((__global float *) ul_27); ul_29 = ul_24 + 68L; f_30 = *((__global float *) ul_29); ul_31 = ul_24 + 84L; f_32 = *((__global float *) ul_31); i_33 = get_global_id(1); // BLOCK 1 MERGES [0 16 ] i_34 = i_33; for(;i_34 < 60;) { // BLOCK 2 i_35 = get_global_id(0); // BLOCK 3 MERGES [2 15 ] i_36 = i_35; for(;i_36 < 80;) { // BLOCK 4 i_37 = get_global_size(0); i_38 = i_37 + i_36; ul_39 = ul_0 + 32L; ul_40 = *((__global ulong *) ul_39); i_41 = i_36 << 3; i_42 = i_34 << 9; i_43 = i_34 << 7; i_44 = i_42 + i_43; i_45 = i_41 + i_44; l_46 = (long) i_45; l_47 = l_46 << 2; l_48 = l_47 + 24L; ul_49 = ul_40 + l_48; ul_50 = ul_2 + 32L; ul_51 = *((__global ulong *) ul_50); i_52 = i_34 << 6; i_53 = i_34 << 4; i_54 = i_52 + i_53; i_55 = i_54 + i_36; i_56 = i_55 << 1; i_57 = i_56 + i_55; l_58 = (long) i_57; l_59 = l_58 << 2; l_60 = l_59 + 24L; ul_61 = ul_51 + l_60; v3f_62 = vload3(0, (__global float *) ul_61); i_63 = isequal(v3f_62.s0, -2.0F); if(i_63 == 1) { // BLOCK 5 f_246 = 0.0F; f_247 = 0.0F; f_248 = 0.0F; f_249 = 0.0F; f_250 = 0.0F; f_251 = 0.0F; f_252 = 0.0F; f_253 = -1.0F; v8f_245 = (float8)(f_246, f_247, f_248, f_249, f_250, f_251, f_252, f_253); vstore8(v8f_245, 0, (__global float *) ul_49); } // B5 else { // BLOCK 6 ul_64 = ul_24 + 24L; v4f_65 = vload4(0, (__global float *) ul_64); f_67 = v4f_65.s0; f_68 = v4f_65.s1; f_69 = v4f_65.s2; v3f_66 = (float3)(f_67, f_68, f_69); f_71 = v4f_10.s0; f_72 = v4f_10.s1; f_73 = v4f_10.s2; v3f_70 = (float3)(f_71, f_72, f_73); ul_74 = ul_1 + 32L; ul_75 = *((__global ulong *) ul_74); ul_76 = ul_75 + l_60; v3f_77 = vload3(0, (__global float *) ul_76); f_78 = v3f_70.s0 * v3f_77.s0; f_79 = v3f_70.s1 * v3f_77.s1; f_80 = v3f_70.s2 * v3f_77.s2; v3f_81 = (float3)(f_78, f_79, f_80); f_82 = v3f_81.s0 + v3f_81.s1; f_83 = f_82 + v3f_81.s2; f_85 = v4f_12.s0; f_86 = v4f_12.s1; f_87 = v4f_12.s2; v3f_84 = (float3)(f_85, f_86, f_87); f_88 = v3f_84.s0 * v3f_77.s0; f_89 = v3f_84.s1 * v3f_77.s1; f_90 = v3f_84.s2 * v3f_77.s2; v3f_91 = (float3)(f_88, f_89, f_90); f_92 = v3f_91.s0 + v3f_91.s1; f_93 = f_92 + v3f_91.s2; f_95 = v4f_14.s0; f_96 = v4f_14.s1; f_97 = v4f_14.s2; v3f_94 = (float3)(f_95, f_96, f_97); f_98 = v3f_94.s0 * v3f_77.s0; f_99 = v3f_94.s1 * v3f_77.s1; f_100 = v3f_94.s2 * v3f_77.s2; v3f_101 = (float3)(f_98, f_99, f_100); f_102 = v3f_101.s0 + v3f_101.s1; f_103 = f_102 + v3f_101.s2; v3f_104 = (float3)(f_83, f_93, f_103); v4f_105 = (float4)(f_16, f_18, f_20, f_22); f_107 = v4f_105.s0; f_108 = v4f_105.s1; f_109 = v4f_105.s2; v3f_106 = (float3)(f_107, f_108, f_109); v3f_110 = v3f_104 + v3f_106; f_111 = v3f_66.s0 * v3f_110.s0; f_112 = v3f_66.s1 * v3f_110.s1; f_113 = v3f_66.s2 * v3f_110.s2; v3f_114 = (float3)(f_111, f_112, f_113); f_115 = v3f_114.s0 + v3f_114.s1; f_116 = f_115 + v3f_114.s2; ul_117 = ul_24 + 40L; v4f_118 = vload4(0, (__global float *) ul_117); f_120 = v4f_118.s0; f_121 = v4f_118.s1; f_122 = v4f_118.s2; v3f_119 = (float3)(f_120, f_121, f_122); f_123 = v3f_119.s0 * v3f_110.s0; f_124 = v3f_119.s1 * v3f_110.s1; f_125 = v3f_119.s2 * v3f_110.s2; v3f_126 = (float3)(f_123, f_124, f_125); f_127 = v3f_126.s0 + v3f_126.s1; f_128 = f_127 + v3f_126.s2; ul_129 = ul_24 + 56L; v4f_130 = vload4(0, (__global float *) ul_129); f_132 = v4f_130.s0; f_133 = v4f_130.s1; f_134 = v4f_130.s2; v3f_131 = (float3)(f_132, f_133, f_134); f_135 = v3f_131.s0 * v3f_110.s0; f_136 = v3f_131.s1 * v3f_110.s1; f_137 = v3f_131.s2 * v3f_110.s2; v3f_138 = (float3)(f_135, f_136, f_137); f_139 = v3f_138.s0 + v3f_138.s1; f_140 = f_139 + v3f_138.s2; v3f_141 = (float3)(f_116, f_128, f_140); v4f_142 = (float4)(f_26, f_28, f_30, f_32); f_144 = v4f_142.s0; f_145 = v4f_142.s1; f_146 = v4f_142.s2; v3f_143 = (float3)(f_144, f_145, f_146); v3f_147 = v3f_141 + v3f_143; f_148 = 1.0F / v3f_147.s2; f_150 = v3f_147.s0; f_151 = v3f_147.s1; v2f_149 = (float2)(f_150, f_151); f_152 = f_148 * v2f_149.s0; f_153 = v2f_149.s1 * f_148; v2f_154 = (float2)(f_152, f_153); f_155 = v2f_154.s0 + 0.5F; f_156 = v2f_154.s1 + 0.5F; v2f_157 = (float2)(f_155, f_156); z_158 = isless(v2f_157.s1, 0.0F) || isless(239.0F, v2f_157.s1); z_159 = isless(319.0F, v2f_157.s0) || z_158; z_160 = isless(v2f_157.s0, 0.0F) || z_159; z_161 = isless(v2f_157.s0, 0.0F) || z_159; if(z_161) { // BLOCK 7 f_255 = 0.0F; f_256 = 0.0F; f_257 = 0.0F; f_258 = 0.0F; f_259 = 0.0F; f_260 = 0.0F; f_261 = 0.0F; f_262 = -2.0F; v8f_254 = (float8)(f_255, f_256, f_257, f_258, f_259, f_260, f_261, f_262); vstore8(v8f_254, 0, (__global float *) ul_49); } // B7 else { // BLOCK 8 ul_162 = ul_4 + 32L; ul_163 = *((__global ulong *) ul_162); i_164 = isnan(v2f_157.s0)? 0 : (int) v2f_157.s0; i_165 = isnan(v2f_157.s1)? 0 : (int) v2f_157.s1; v2i_166 = (int2)(i_164, i_165); i_167 = v2i_166.s1 << 8; i_168 = v2i_166.s1 << 6; i_169 = i_167 + i_168; i_170 = v2i_166.s0 + i_169; i_171 = i_170 << 1; i_172 = i_171 + i_170; l_173 = (long) i_172; l_174 = l_173 << 2; l_175 = l_174 + 24L; ul_176 = ul_163 + l_175; v3f_177 = vload3(0, (__global float *) ul_176); i_178 = isequal(v3f_177.s0, -2.0F); if(i_178 == 1) { // BLOCK 9 f_264 = 0.0F; f_265 = 0.0F; f_266 = 0.0F; f_267 = 0.0F; f_268 = 0.0F; f_269 = 0.0F; f_270 = 0.0F; f_271 = -3.0F; v8f_263 = (float8)(f_264, f_265, f_266, f_267, f_268, f_269, f_270, f_271); vstore8(v8f_263, 0, (__global float *) ul_49); } // B9 else { // BLOCK 10 ul_179 = ul_3 + 32L; ul_180 = *((__global ulong *) ul_179); ul_181 = ul_180 + l_175; v3f_182 = vload3(0, (__global float *) ul_181); f_183 = v3f_182.s0 - v3f_110.s0; f_184 = v3f_182.s1 - v3f_110.s1; f_185 = v3f_182.s2 - v3f_110.s2; v3f_186 = (float3)(f_183, f_184, f_185); f_187 = v3f_186.s0 * v3f_186.s0; f_188 = v3f_186.s1 * v3f_186.s1; f_189 = v3f_186.s2 * v3f_186.s2; v3f_190 = (float3)(f_187, f_188, f_189); f_191 = v3f_190.s0 + v3f_190.s1; f_192 = f_191 + v3f_190.s2; f_193 = sqrt(f_192); i_194 = isless(0.1F, f_193); if(i_194 == 1) { // BLOCK 11 f_273 = 0.0F; f_274 = 0.0F; f_275 = 0.0F; f_276 = 0.0F; f_277 = 0.0F; f_278 = 0.0F; f_279 = 0.0F; f_280 = -4.0F; v8f_272 = (float8)(f_273, f_274, f_275, f_276, f_277, f_278, f_279, f_280); vstore8(v8f_272, 0, (__global float *) ul_49); } // B11 else { // BLOCK 12 f_195 = v3f_70.s0 * v3f_62.s0; f_196 = v3f_62.s1 * v3f_70.s1; f_197 = v3f_62.s2 * v3f_70.s2; v3f_198 = (float3)(f_195, f_196, f_197); f_199 = v3f_198.s0 + v3f_198.s1; f_200 = f_199 + v3f_198.s2; f_201 = v3f_84.s0 * v3f_62.s0; f_202 = v3f_84.s1 * v3f_62.s1; f_203 = v3f_84.s2 * v3f_62.s2; v3f_204 = (float3)(f_201, f_202, f_203); f_205 = v3f_204.s0 + v3f_204.s1; f_206 = f_205 + v3f_204.s2; f_207 = v3f_94.s0 * v3f_62.s0; f_208 = v3f_94.s1 * v3f_62.s1; f_209 = v3f_94.s2 * v3f_62.s2; v3f_210 = (float3)(f_207, f_208, f_209); f_211 = v3f_210.s0 + v3f_210.s1; f_212 = f_211 + v3f_210.s2; v3f_213 = (float3)(f_200, f_206, f_212); f_214 = v3f_213.s0 * v3f_177.s0; f_215 = v3f_213.s1 * v3f_177.s1; f_216 = v3f_213.s2 * v3f_177.s2; v3f_217 = (float3)(f_214, f_215, f_216); f_218 = v3f_217.s0 + v3f_217.s1; f_219 = f_218 + v3f_217.s2; i_220 = isless(f_219, 0.8F); if(i_220 == 1) { // BLOCK 13 f_282 = 0.0F; f_283 = 0.0F; f_284 = 0.0F; f_285 = 0.0F; f_286 = 0.0F; f_287 = 0.0F; f_288 = 0.0F; f_289 = -5.0F; v8f_281 = (float8)(f_282, f_283, f_284, f_285, f_286, f_287, f_288, f_289); vstore8(v8f_281, 0, (__global float *) ul_49); } // B13 else { // BLOCK 14 f_221 = v3f_110.s1 * v3f_177.s2; f_222 = v3f_110.s2 * v3f_177.s1; f_223 = f_221 - f_222; f_224 = v3f_110.s2 * v3f_177.s0; f_225 = v3f_110.s0 * v3f_177.s2; f_226 = f_224 - f_225; f_227 = v3f_110.s0 * v3f_177.s1; f_228 = v3f_110.s1 * v3f_177.s0; f_229 = f_227 - f_228; v3f_230 = (float3)(f_223, f_226, f_229); f_231 = v3f_177.s0 * v3f_186.s0; f_232 = v3f_186.s1 * v3f_177.s1; f_233 = v3f_186.s2 * v3f_177.s2; v3f_234 = (float3)(f_231, f_232, f_233); f_235 = v3f_234.s0 + v3f_234.s1; f_236 = f_235 + v3f_234.s2; f_238 = v3f_177.s0; f_239 = v3f_177.s1; f_240 = v3f_177.s2; f_241 = v3f_230.s0; f_242 = v3f_230.s1; f_243 = v3f_230.s2; f_244 = 1.0F; v8f_237 = (float8)(f_238, f_239, f_240, f_241, f_242, f_243, f_236, f_244); vstore8(v8f_237, 0, (__global float *) ul_49); } // B14 } // B12 } // B10 } // B8 } // B6 // BLOCK 15 MERGES [5 14 13 11 9 7 ] i_290 = i_38; i_36 = i_290; } // B15 // BLOCK 16 i_291 = get_global_size(1); i_292 = i_291 + i_34; i_34 = i_292; } // B16 // BLOCK 17 return; } // kernel #pragma OPENCL EXTENSION cl_khr_fp64 : enable #pragma OPENCL EXTENSION cl_khr_int64_base_atomics : enable void kfusion_tornado_algorithms_IterativeClosestPoint_reduceValues(__global uchar *_heap_base, ulong _frame_base, __constant uchar *_constant_region, __local uchar *_local_region, __global int *_atomics, ulong sums, int startIndex, ulong trackingResults, int resultIndex) { long l_235, l_234, l_233, l_226, l_225, l_224, l_217, l_216, l_208, l_215, l_201, l_200, l_207, l_206, l_194, l_193, l_192, l_199, l_187, l_186, l_185, l_179, l_178, l_180, l_171, l_173, l_172, l_166, l_165, l_164, l_152, l_159, l_158, l_157, l_145, l_144, l_151, l_150, l_138, l_137, l_136, l_143, l_131, l_130, l_129, l_123, l_122, l_124, l_115, l_117, l_116, l_110, l_109, l_108, l_96, l_103, l_102, l_101, l_89, l_88, l_95, l_94, l_82, l_81, l_80, l_87, l_75, l_74, l_73, l_67, l_66, l_68, l_59, l_61, l_60, l_54, l_53, l_52, l_40, l_47, l_46, l_45, l_33, l_32, l_39, l_38, l_26, l_25, l_24, l_31, l_19, l_18, l_17, l_11, l_10, l_12, l_3, l_5, l_4; ulong ul_20, ul_153, ul_27, ul_90, ul_218, ul_97, ul_160, ul_227, ul_34, ul_69, ul_132, ul_6, ul_139, ul_202, ul_13, ul_76, ul_209, ul_83, ul_146, ul_181, ul_55, ul_118, ul_125, ul_188, ul_62, ul_1, ul_0, ul_195, ul_167, ul_41, ul_104, ul_236, ul_111, ul_174, ul_48; float f_141, f_140, f_15, f_14, f_133, f_134, f_127, f_126, f_120, f_119, f_113, f_112, f_237, f_238, f_105, f_106, f_229, f_228, f_231, f_99, f_98, f_92, f_220, f_222, f_91, f_219, f_85, f_213, f_84, f_211, f_210, f_77, f_204, f_78, f_203, f_197, f_196, f_71, f_70, f_64, f_189, f_63, f_190, f_57, f_56, f_183, f_182, f_49, f_176, f_50, f_175, f_169, f_168, f_43, f_42, f_36, f_161, f_35, f_162, f_29, f_28, f_155, f_154, f_21, f_148, f_22, f_147; int i_177, i_114, i_51, i_170, i_232, i_107, i_44, i_223, i_37, i_163, i_100, i_23, i_93, i_30, i_156, i_79, i_16, i_149, i_86, i_214, i_135, i_8, i_72, i_205, i_142, i_65, i_2, i_191, i_128, i_198, i_121, i_58, i_184; float8 v8f_7; bool z_221, z_9, z_230, z_212; // BLOCK 0 ul_0 = trackingResults + 32L; ul_1 = *((__global ulong *) ul_0); i_2 = resultIndex << 3; l_3 = (long) i_2; l_4 = l_3 << 2; l_5 = l_4 + 24L; ul_6 = ul_1 + l_5; v8f_7 = vload8(0, (__global float *) ul_6); i_8 = isnan(v8f_7.s7)? 0 : (int) v8f_7.s7; z_9 = i_8 < 1; if(z_9) { // BLOCK 1 z_212 = i_8 == -4; if(z_212) { // BLOCK 2 f_213 = 1.0F; } // B2 else { // BLOCK 3 f_213 = 0.0F; } // B3 // BLOCK 4 MERGES [2 3 ] i_214 = startIndex + 29; l_215 = (long) i_214; l_216 = l_215 << 2; l_217 = l_216 + 24L; ul_218 = sums + l_217; f_219 = *((__global float *) ul_218); f_220 = f_213 + f_219; *((__global float *) ul_218) = f_220; f_219 = f_220; z_221 = i_8 == -5; if(z_221) { // BLOCK 5 f_222 = 1.0F; } // B5 else { // BLOCK 6 f_222 = 0.0F; } // B6 // BLOCK 7 MERGES [5 6 ] i_223 = startIndex + 30; l_224 = (long) i_223; l_225 = l_224 << 2; l_226 = l_225 + 24L; ul_227 = sums + l_226; f_228 = *((__global float *) ul_227); f_229 = f_222 + f_228; *((__global float *) ul_227) = f_229; f_228 = f_229; z_230 = i_8 < -3; if(z_230) { // BLOCK 8 f_231 = 0.0F; } // B8 else { // BLOCK 9 f_231 = 1.0F; } // B9 // BLOCK 10 MERGES [9 8 ] i_232 = startIndex + 31; l_233 = (long) i_232; l_234 = l_233 << 2; l_235 = l_234 + 24L; ul_236 = sums + l_235; f_237 = *((__global float *) ul_236); f_238 = f_231 + f_237; *((__global float *) ul_236) = f_238; f_237 = f_238; return; } // B10 else { // BLOCK 11 l_10 = (long) startIndex; l_11 = l_10 << 2; l_12 = l_11 + 24L; ul_13 = sums + l_12; f_14 = *((__global float *) ul_13); f_15 = fma(v8f_7.s6, v8f_7.s6, f_14); *((__global float *) ul_13) = f_15; f_14 = f_15; i_16 = startIndex + 1; l_17 = (long) i_16; l_18 = l_17 << 2; l_19 = l_18 + 24L; ul_20 = sums + l_19; f_21 = *((__global float *) ul_20); f_22 = fma(v8f_7.s6, v8f_7.s0, f_21); *((__global float *) ul_20) = f_22; f_21 = f_22; i_23 = startIndex + 2; l_24 = (long) i_23; l_25 = l_24 << 2; l_26 = l_25 + 24L; ul_27 = sums + l_26; f_28 = *((__global float *) ul_27); f_29 = fma(v8f_7.s6, v8f_7.s1, f_28); *((__global float *) ul_27) = f_29; f_28 = f_29; i_30 = startIndex + 3; l_31 = (long) i_30; l_32 = l_31 << 2; l_33 = l_32 + 24L; ul_34 = sums + l_33; f_35 = *((__global float *) ul_34); f_36 = fma(v8f_7.s6, v8f_7.s2, f_35); *((__global float *) ul_34) = f_36; f_35 = f_36; i_37 = startIndex + 4; l_38 = (long) i_37; l_39 = l_38 << 2; l_40 = l_39 + 24L; ul_41 = sums + l_40; f_42 = *((__global float *) ul_41); f_43 = fma(v8f_7.s6, v8f_7.s3, f_42); *((__global float *) ul_41) = f_43; f_42 = f_43; i_44 = startIndex + 5; l_45 = (long) i_44; l_46 = l_45 << 2; l_47 = l_46 + 24L; ul_48 = sums + l_47; f_49 = *((__global float *) ul_48); f_50 = fma(v8f_7.s6, v8f_7.s4, f_49); *((__global float *) ul_48) = f_50; f_49 = f_50; i_51 = startIndex + 6; l_52 = (long) i_51; l_53 = l_52 << 2; l_54 = l_53 + 24L; ul_55 = sums + l_54; f_56 = *((__global float *) ul_55); f_57 = fma(v8f_7.s6, v8f_7.s5, f_56); *((__global float *) ul_55) = f_57; f_56 = f_57; i_58 = startIndex + 7; l_59 = (long) i_58; l_60 = l_59 << 2; l_61 = l_60 + 24L; ul_62 = sums + l_61; f_63 = *((__global float *) ul_62); f_64 = fma(v8f_7.s0, v8f_7.s0, f_63); *((__global float *) ul_62) = f_64; f_63 = f_64; i_65 = startIndex + 8; l_66 = (long) i_65; l_67 = l_66 << 2; l_68 = l_67 + 24L; ul_69 = sums + l_68; f_70 = *((__global float *) ul_69); f_71 = fma(v8f_7.s0, v8f_7.s1, f_70); *((__global float *) ul_69) = f_71; f_70 = f_71; i_72 = startIndex + 9; l_73 = (long) i_72; l_74 = l_73 << 2; l_75 = l_74 + 24L; ul_76 = sums + l_75; f_77 = *((__global float *) ul_76); f_78 = fma(v8f_7.s0, v8f_7.s2, f_77); *((__global float *) ul_76) = f_78; f_77 = f_78; i_79 = startIndex + 10; l_80 = (long) i_79; l_81 = l_80 << 2; l_82 = l_81 + 24L; ul_83 = sums + l_82; f_84 = *((__global float *) ul_83); f_85 = fma(v8f_7.s0, v8f_7.s3, f_84); *((__global float *) ul_83) = f_85; f_84 = f_85; i_86 = startIndex + 11; l_87 = (long) i_86; l_88 = l_87 << 2; l_89 = l_88 + 24L; ul_90 = sums + l_89; f_91 = *((__global float *) ul_90); f_92 = fma(v8f_7.s0, v8f_7.s4, f_91); *((__global float *) ul_90) = f_92; f_91 = f_92; i_93 = startIndex + 12; l_94 = (long) i_93; l_95 = l_94 << 2; l_96 = l_95 + 24L; ul_97 = sums + l_96; f_98 = *((__global float *) ul_97); f_99 = fma(v8f_7.s0, v8f_7.s5, f_98); *((__global float *) ul_97) = f_99; f_98 = f_99; i_100 = startIndex + 13; l_101 = (long) i_100; l_102 = l_101 << 2; l_103 = l_102 + 24L; ul_104 = sums + l_103; f_105 = *((__global float *) ul_104); f_106 = fma(v8f_7.s1, v8f_7.s1, f_105); *((__global float *) ul_104) = f_106; f_105 = f_106; i_107 = startIndex + 14; l_108 = (long) i_107; l_109 = l_108 << 2; l_110 = l_109 + 24L; ul_111 = sums + l_110; f_112 = *((__global float *) ul_111); f_113 = fma(v8f_7.s1, v8f_7.s2, f_112); *((__global float *) ul_111) = f_113; f_112 = f_113; i_114 = startIndex + 15; l_115 = (long) i_114; l_116 = l_115 << 2; l_117 = l_116 + 24L; ul_118 = sums + l_117; f_119 = *((__global float *) ul_118); f_120 = fma(v8f_7.s1, v8f_7.s3, f_119); *((__global float *) ul_118) = f_120; f_119 = f_120; i_121 = startIndex + 16; l_122 = (long) i_121; l_123 = l_122 << 2; l_124 = l_123 + 24L; ul_125 = sums + l_124; f_126 = *((__global float *) ul_125); f_127 = fma(v8f_7.s1, v8f_7.s4, f_126); *((__global float *) ul_125) = f_127; f_126 = f_127; i_128 = startIndex + 17; l_129 = (long) i_128; l_130 = l_129 << 2; l_131 = l_130 + 24L; ul_132 = sums + l_131; f_133 = *((__global float *) ul_132); f_134 = fma(v8f_7.s1, v8f_7.s5, f_133); *((__global float *) ul_132) = f_134; f_133 = f_134; i_135 = startIndex + 18; l_136 = (long) i_135; l_137 = l_136 << 2; l_138 = l_137 + 24L; ul_139 = sums + l_138; f_140 = *((__global float *) ul_139); f_141 = fma(v8f_7.s2, v8f_7.s2, f_140); *((__global float *) ul_139) = f_141; f_140 = f_141; i_142 = startIndex + 19; l_143 = (long) i_142; l_144 = l_143 << 2; l_145 = l_144 + 24L; ul_146 = sums + l_145; f_147 = *((__global float *) ul_146); f_148 = fma(v8f_7.s2, v8f_7.s3, f_147); *((__global float *) ul_146) = f_148; f_147 = f_148; i_149 = startIndex + 20; l_150 = (long) i_149; l_151 = l_150 << 2; l_152 = l_151 + 24L; ul_153 = sums + l_152; f_154 = *((__global float *) ul_153); f_155 = fma(v8f_7.s2, v8f_7.s4, f_154); *((__global float *) ul_153) = f_155; f_154 = f_155; i_156 = startIndex + 21; l_157 = (long) i_156; l_158 = l_157 << 2; l_159 = l_158 + 24L; ul_160 = sums + l_159; f_161 = *((__global float *) ul_160); f_162 = fma(v8f_7.s2, v8f_7.s5, f_161); *((__global float *) ul_160) = f_162; f_161 = f_162; i_163 = startIndex + 22; l_164 = (long) i_163; l_165 = l_164 << 2; l_166 = l_165 + 24L; ul_167 = sums + l_166; f_168 = *((__global float *) ul_167); f_169 = fma(v8f_7.s3, v8f_7.s3, f_168); *((__global float *) ul_167) = f_169; f_168 = f_169; i_170 = startIndex + 23; l_171 = (long) i_170; l_172 = l_171 << 2; l_173 = l_172 + 24L; ul_174 = sums + l_173; f_175 = *((__global float *) ul_174); f_176 = fma(v8f_7.s3, v8f_7.s4, f_175); *((__global float *) ul_174) = f_176; f_175 = f_176; i_177 = startIndex + 24; l_178 = (long) i_177; l_179 = l_178 << 2; l_180 = l_179 + 24L; ul_181 = sums + l_180; f_182 = *((__global float *) ul_181); f_183 = fma(v8f_7.s3, v8f_7.s5, f_182); *((__global float *) ul_181) = f_183; f_182 = f_183; i_184 = startIndex + 25; l_185 = (long) i_184; l_186 = l_185 << 2; l_187 = l_186 + 24L; ul_188 = sums + l_187; f_189 = *((__global float *) ul_188); f_190 = fma(v8f_7.s4, v8f_7.s4, f_189); *((__global float *) ul_188) = f_190; f_189 = f_190; i_191 = startIndex + 26; l_192 = (long) i_191; l_193 = l_192 << 2; l_194 = l_193 + 24L; ul_195 = sums + l_194; f_196 = *((__global float *) ul_195); f_197 = fma(v8f_7.s4, v8f_7.s5, f_196); *((__global float *) ul_195) = f_197; f_196 = f_197; i_198 = startIndex + 27; l_199 = (long) i_198; l_200 = l_199 << 2; l_201 = l_200 + 24L; ul_202 = sums + l_201; f_203 = *((__global float *) ul_202); f_204 = fma(v8f_7.s5, v8f_7.s5, f_203); *((__global float *) ul_202) = f_204; f_203 = f_204; i_205 = startIndex + 28; l_206 = (long) i_205; l_207 = l_206 << 2; l_208 = l_207 + 24L; ul_209 = sums + l_208; f_210 = *((__global float *) ul_209); f_211 = f_210 + 1.0F; *((__global float *) ul_209) = f_211; f_210 = f_211; return; } // B11 } // kernel #pragma OPENCL EXTENSION cl_khr_fp64 : enable #pragma OPENCL EXTENSION cl_khr_int64_base_atomics : enable __kernel void mapReduce(__global uchar *_heap_base, ulong _frame_base, __constant uchar *_constant_region, __local uchar *_local_region, __global int *_atomics) { long l_122, l_121, l_120, l_127, l_126, l_125, l_115, l_112, l_117, l_116, l_107, l_106, l_105, l_111, l_110, l_97, l_96, l_102, l_101, l_100, l_91, l_90, l_95, l_92, l_82, l_81, l_80, l_87, l_86, l_85, l_75, l_72, l_77, l_76, l_67, l_66, l_65, l_71, l_70, l_57, l_56, l_62, l_61, l_60, l_51, l_50, l_55, l_52, l_42, l_41, l_40, l_47, l_46, l_45, l_35, l_162, l_161, l_32, l_160, l_37, l_36, l_27, l_155, l_26, l_25, l_152, l_31, l_30, l_157, l_156, l_147, l_146, l_17, l_145, l_16, l_151, l_22, l_150, l_21, l_20, l_11, l_10, l_137, l_136, l_15, l_142, l_141, l_12, l_140, l_131, l_130, l_7, l_135, l_6, l_5, l_132; ulong ul_148, ul_23, ul_153, ul_88, ul_93, ul_28, ul_158, ul_33, ul_163, ul_98, ul_133, ul_68, ul_73, ul_8, ul_138, ul_13, ul_143, ul_78, ul_83, ul_18, ul_53, ul_118, ul_123, ul_58, ul_63, ul_1, ul_0, ul_128, ul_103, ul_38, ul_43, ul_108, ul_113, ul_48; int i_49, i_114, i_54, i_39, i_167, i_104, i_109, i_44, i_34, i_159, i_165, i_166, i_99, i_164, i_89, i_154, i_24, i_29, i_94, i_79, i_144, i_149, i_19, i_84, i_9, i_74, i_14, i_139, i_129, i_2, i_64, i_69, i_134, i_3, i_4, i_119, i_59, i_124; __global ulong *_frame = (__global ulong *) &_heap_base[_frame_base]; // BLOCK 0 ul_0 = (ulong) _frame[3]; ul_1 = (ulong) _frame[4]; i_2 = get_global_id(0); // BLOCK 1 MERGES [0 5 ] i_3 = i_2; for(;i_3 < 1024;) { // BLOCK 2 i_4 = i_3 << 5; l_5 = (long) i_4; l_6 = l_5 << 2; l_7 = l_6 + 24L; ul_8 = ul_0 + l_7; *((__global float *) ul_8) = 0.0F; i_9 = i_4 + 1; l_10 = (long) i_9; l_11 = l_10 << 2; l_12 = l_11 + 24L; ul_13 = ul_0 + l_12; *((__global float *) ul_13) = 0.0F; i_14 = i_4 + 2; l_15 = (long) i_14; l_16 = l_15 << 2; l_17 = l_16 + 24L; ul_18 = ul_0 + l_17; *((__global float *) ul_18) = 0.0F; i_19 = i_4 + 3; l_20 = (long) i_19; l_21 = l_20 << 2; l_22 = l_21 + 24L; ul_23 = ul_0 + l_22; *((__global float *) ul_23) = 0.0F; i_24 = i_4 + 4; l_25 = (long) i_24; l_26 = l_25 << 2; l_27 = l_26 + 24L; ul_28 = ul_0 + l_27; *((__global float *) ul_28) = 0.0F; i_29 = i_4 + 5; l_30 = (long) i_29; l_31 = l_30 << 2; l_32 = l_31 + 24L; ul_33 = ul_0 + l_32; *((__global float *) ul_33) = 0.0F; i_34 = i_4 + 6; l_35 = (long) i_34; l_36 = l_35 << 2; l_37 = l_36 + 24L; ul_38 = ul_0 + l_37; *((__global float *) ul_38) = 0.0F; i_39 = i_4 + 7; l_40 = (long) i_39; l_41 = l_40 << 2; l_42 = l_41 + 24L; ul_43 = ul_0 + l_42; *((__global float *) ul_43) = 0.0F; i_44 = i_4 + 8; l_45 = (long) i_44; l_46 = l_45 << 2; l_47 = l_46 + 24L; ul_48 = ul_0 + l_47; *((__global float *) ul_48) = 0.0F; i_49 = i_4 + 9; l_50 = (long) i_49; l_51 = l_50 << 2; l_52 = l_51 + 24L; ul_53 = ul_0 + l_52; *((__global float *) ul_53) = 0.0F; i_54 = i_4 + 10; l_55 = (long) i_54; l_56 = l_55 << 2; l_57 = l_56 + 24L; ul_58 = ul_0 + l_57; *((__global float *) ul_58) = 0.0F; i_59 = i_4 + 11; l_60 = (long) i_59; l_61 = l_60 << 2; l_62 = l_61 + 24L; ul_63 = ul_0 + l_62; *((__global float *) ul_63) = 0.0F; i_64 = i_4 + 12; l_65 = (long) i_64; l_66 = l_65 << 2; l_67 = l_66 + 24L; ul_68 = ul_0 + l_67; *((__global float *) ul_68) = 0.0F; i_69 = i_4 + 13; l_70 = (long) i_69; l_71 = l_70 << 2; l_72 = l_71 + 24L; ul_73 = ul_0 + l_72; *((__global float *) ul_73) = 0.0F; i_74 = i_4 + 14; l_75 = (long) i_74; l_76 = l_75 << 2; l_77 = l_76 + 24L; ul_78 = ul_0 + l_77; *((__global float *) ul_78) = 0.0F; i_79 = i_4 + 15; l_80 = (long) i_79; l_81 = l_80 << 2; l_82 = l_81 + 24L; ul_83 = ul_0 + l_82; *((__global float *) ul_83) = 0.0F; i_84 = i_4 + 16; l_85 = (long) i_84; l_86 = l_85 << 2; l_87 = l_86 + 24L; ul_88 = ul_0 + l_87; *((__global float *) ul_88) = 0.0F; i_89 = i_4 + 17; l_90 = (long) i_89; l_91 = l_90 << 2; l_92 = l_91 + 24L; ul_93 = ul_0 + l_92; *((__global float *) ul_93) = 0.0F; i_94 = i_4 + 18; l_95 = (long) i_94; l_96 = l_95 << 2; l_97 = l_96 + 24L; ul_98 = ul_0 + l_97; *((__global float *) ul_98) = 0.0F; i_99 = i_4 + 19; l_100 = (long) i_99; l_101 = l_100 << 2; l_102 = l_101 + 24L; ul_103 = ul_0 + l_102; *((__global float *) ul_103) = 0.0F; i_104 = i_4 + 20; l_105 = (long) i_104; l_106 = l_105 << 2; l_107 = l_106 + 24L; ul_108 = ul_0 + l_107; *((__global float *) ul_108) = 0.0F; i_109 = i_4 + 21; l_110 = (long) i_109; l_111 = l_110 << 2; l_112 = l_111 + 24L; ul_113 = ul_0 + l_112; *((__global float *) ul_113) = 0.0F; i_114 = i_4 + 22; l_115 = (long) i_114; l_116 = l_115 << 2; l_117 = l_116 + 24L; ul_118 = ul_0 + l_117; *((__global float *) ul_118) = 0.0F; i_119 = i_4 + 23; l_120 = (long) i_119; l_121 = l_120 << 2; l_122 = l_121 + 24L; ul_123 = ul_0 + l_122; *((__global float *) ul_123) = 0.0F; i_124 = i_4 + 24; l_125 = (long) i_124; l_126 = l_125 << 2; l_127 = l_126 + 24L; ul_128 = ul_0 + l_127; *((__global float *) ul_128) = 0.0F; i_129 = i_4 + 25; l_130 = (long) i_129; l_131 = l_130 << 2; l_132 = l_131 + 24L; ul_133 = ul_0 + l_132; *((__global float *) ul_133) = 0.0F; i_134 = i_4 + 26; l_135 = (long) i_134; l_136 = l_135 << 2; l_137 = l_136 + 24L; ul_138 = ul_0 + l_137; *((__global float *) ul_138) = 0.0F; i_139 = i_4 + 27; l_140 = (long) i_139; l_141 = l_140 << 2; l_142 = l_141 + 24L; ul_143 = ul_0 + l_142; *((__global float *) ul_143) = 0.0F; i_144 = i_4 + 28; l_145 = (long) i_144; l_146 = l_145 << 2; l_147 = l_146 + 24L; ul_148 = ul_0 + l_147; *((__global float *) ul_148) = 0.0F; i_149 = i_4 + 29; l_150 = (long) i_149; l_151 = l_150 << 2; l_152 = l_151 + 24L; ul_153 = ul_0 + l_152; *((__global float *) ul_153) = 0.0F; i_154 = i_4 + 30; l_155 = (long) i_154; l_156 = l_155 << 2; l_157 = l_156 + 24L; ul_158 = ul_0 + l_157; *((__global float *) ul_158) = 0.0F; i_159 = i_4 + 31; l_160 = (long) i_159; l_161 = l_160 << 2; l_162 = l_161 + 24L; ul_163 = ul_0 + l_162; *((__global float *) ul_163) = 0.0F; // BLOCK 3 MERGES [2 4 ] i_164 = i_3; for(;i_164 < 4800;) { // BLOCK 4 kfusion_tornado_algorithms_IterativeClosestPoint_reduceValues(_heap_base, _frame_base, _constant_region, _local_region, _atomics, ul_0, i_4, ul_1, i_164); i_165 = i_164 + 1024; i_164 = i_165; } // B4 // BLOCK 5 i_166 = get_global_size(0); i_167 = i_166 + i_3; i_3 = i_167; } // B5 // BLOCK 6 return; } // kernel #pragma OPENCL EXTENSION cl_khr_fp64 : enable #pragma OPENCL EXTENSION cl_khr_int64_base_atomics : enable __kernel void integrate(__global uchar *_heap_base, ulong _frame_base, __constant uchar *_constant_region, __local uchar *_local_region, __global int *_atomics) { long l_219, l_200, l_221, l_220, l_199, l_198; short2 v2s_254, v2s_223; short s_252, s_249; ulong ul_213, ul_20, ul_212, ul_92, ul_222, ul_5, ul_201, ul_72, ul_11, ul_10, ul_74, ul_12, ul_76, ul_78, ul_19, ul_18, ul_117, ul_119, ul_121, ul_59, ul_123, ul_189, ul_190, ul_1, ul_0, ul_3, ul_2, ul_104, ul_47; float f_15, f_245, f_244, f_246, f_240, f_243, f_237, f_236, f_239, f_238, f_233, f_235, f_234, f_229, f_228, f_231, f_230, f_225, f_224, f_209, f_208, f_210, f_77, f_79, f_73, f_75, f_69, f_70, f_65, f_64, f_67, f_66, f_63, f_62, f_57, f_58, f_53, f_52, f_55, f_54, f_51, f_50, f_45, f_46, f_41, f_43, f_42, f_37, f_36, f_39, f_38, f_33, f_32, f_35, f_34, f_29, f_28, f_31, f_30, f_25, f_24, f_23, f_17, f_16, f_141, f_140, f_143, f_137, f_139, f_138, f_135, f_129, f_128, f_124, f_127, f_120, f_122, f_118, f_112, f_115, f_114, f_109, f_108, f_111, f_110, f_107, f_100, f_103, f_102, f_97, f_96, f_99, f_98, f_95, f_88, f_91, f_90, f_84, f_87, f_86, f_83, f_82, f_205, f_204, f_207, f_206, f_202, f_181, f_180, f_183, f_182, f_172, f_175, f_174, f_169, f_168, f_171, f_170, f_165, f_164, f_166, f_160, f_163, f_162, f_156, f_159, f_158, f_153, f_152, f_155, f_149, f_151, f_150, f_145, f_144, f_147, f_146; float2 v2f_241, v2f_227, v2f_226, v2f_242, v2f_247, v2f_184, v2f_232; int3 v3i_26; float3 v3f_161, v3f_157, v3f_94, v3f_89, v3f_154, v3f_85, v3f_22, v3f_49, v3f_113, v3f_177, v3f_178, v3f_116, v3f_173, v3f_176, v3f_106, v3f_44, v3f_101, v3f_167, v3f_40, v3f_130, v3f_131, v3f_4, v3f_68, v3f_132, v3f_61, v3f_126, v3f_255, v3f_256, v3f_56, v3f_81, v3f_148, v3f_14, v3f_142, v3f_71, v3f_136; float4 v4f_13, v4f_93, v4f_125, v4f_48, v4f_80, v4f_21, v4f_105, v4f_60; int i_179, i_217, i_218, i_215, i_216, i_27, i_214, i_211, i_9, i_7, i_8, i_203, i_257, i_194, i_258, i_191, i_192, i_133, i_197, i_261, i_6, i_134, i_195, i_259, i_196, i_260, i_185, i_186, i_250, i_248, i_253, i_187, i_251, i_188; int2 v2i_193; __global ulong *_frame = (__global ulong *) &_heap_base[_frame_base]; // BLOCK 0 ul_0 = (ulong) _frame[3]; ul_1 = (ulong) _frame[4]; ul_2 = (ulong) _frame[5]; ul_3 = (ulong) _frame[6]; v3f_4 = vload3(0, (__global float *) ul_3); ul_5 = (ulong) _frame[7]; i_6 = get_global_id(1); // BLOCK 1 MERGES [0 23 ] i_7 = i_6; for(;i_7 < 256;) { // BLOCK 2 i_8 = get_global_id(0); // BLOCK 3 MERGES [2 22 ] i_9 = i_8; for(;i_9 < 256;) { // BLOCK 4 ul_10 = ul_2 + 24L; ul_11 = *((__global ulong *) ul_10); ul_12 = ul_11 + 24L; v4f_13 = vload4(0, (__global float *) ul_12); f_15 = v4f_13.s0; f_16 = v4f_13.s1; f_17 = v4f_13.s2; v3f_14 = (float3)(f_15, f_16, f_17); ul_18 = ul_1 + 24L; ul_19 = *((__global ulong *) ul_18); ul_20 = ul_19 + 24L; v4f_21 = vload4(0, (__global float *) ul_20); f_23 = v4f_21.s0; f_24 = v4f_21.s1; f_25 = v4f_21.s2; v3f_22 = (float3)(f_23, f_24, f_25); i_27 = 0; v3i_26 = (int3)(i_9, i_7, i_27); f_28 = (float) v3i_26.s0; f_29 = f_28 + 0.5F; f_30 = f_29 * v3f_4.s0; f_31 = f_30 / 256.0F; f_32 = (float) v3i_26.s1; f_33 = f_32 + 0.5F; f_34 = f_33 * v3f_4.s1; f_35 = f_34 / 256.0F; f_36 = (float) v3i_26.s2; f_37 = f_36 + 0.5F; f_38 = v3f_4.s2 * f_37; f_39 = f_38 / 256.0F; v3f_40 = (float3)(f_31, f_35, f_39); f_41 = v3f_22.s0 * v3f_40.s0; f_42 = v3f_22.s1 * v3f_40.s1; f_43 = v3f_22.s2 * v3f_40.s2; v3f_44 = (float3)(f_41, f_42, f_43); f_45 = v3f_44.s0 + v3f_44.s1; f_46 = f_45 + v3f_44.s2; ul_47 = ul_19 + 40L; v4f_48 = vload4(0, (__global float *) ul_47); f_50 = v4f_48.s0; f_51 = v4f_48.s1; f_52 = v4f_48.s2; v3f_49 = (float3)(f_50, f_51, f_52); f_53 = v3f_49.s0 * v3f_40.s0; f_54 = v3f_49.s1 * v3f_40.s1; f_55 = v3f_49.s2 * v3f_40.s2; v3f_56 = (float3)(f_53, f_54, f_55); f_57 = v3f_56.s0 + v3f_56.s1; f_58 = f_57 + v3f_56.s2; ul_59 = ul_19 + 56L; v4f_60 = vload4(0, (__global float *) ul_59); f_62 = v4f_60.s0; f_63 = v4f_60.s1; f_64 = v4f_60.s2; v3f_61 = (float3)(f_62, f_63, f_64); f_65 = v3f_61.s0 * v3f_40.s0; f_66 = v3f_61.s1 * v3f_40.s1; f_67 = v3f_61.s2 * v3f_40.s2; v3f_68 = (float3)(f_65, f_66, f_67); f_69 = v3f_68.s0 + v3f_68.s1; f_70 = f_69 + v3f_68.s2; v3f_71 = (float3)(f_46, f_58, f_70); ul_72 = ul_19 + 36L; f_73 = *((__global float *) ul_72); ul_74 = ul_19 + 52L; f_75 = *((__global float *) ul_74); ul_76 = ul_19 + 68L; f_77 = *((__global float *) ul_76); ul_78 = ul_19 + 84L; f_79 = *((__global float *) ul_78); v4f_80 = (float4)(f_73, f_75, f_77, f_79); f_82 = v4f_80.s0; f_83 = v4f_80.s1; f_84 = v4f_80.s2; v3f_81 = (float3)(f_82, f_83, f_84); v3f_85 = v3f_71 + v3f_81; f_86 = v3f_14.s0 * v3f_85.s0; f_87 = v3f_14.s1 * v3f_85.s1; f_88 = v3f_14.s2 * v3f_85.s2; v3f_89 = (float3)(f_86, f_87, f_88); f_90 = v3f_89.s0 + v3f_89.s1; f_91 = f_90 + v3f_89.s2; ul_92 = ul_11 + 40L; v4f_93 = vload4(0, (__global float *) ul_92); f_95 = v4f_93.s0; f_96 = v4f_93.s1; f_97 = v4f_93.s2; v3f_94 = (float3)(f_95, f_96, f_97); f_98 = v3f_94.s0 * v3f_85.s0; f_99 = v3f_94.s1 * v3f_85.s1; f_100 = v3f_94.s2 * v3f_85.s2; v3f_101 = (float3)(f_98, f_99, f_100); f_102 = v3f_101.s0 + v3f_101.s1; f_103 = f_102 + v3f_101.s2; ul_104 = ul_11 + 56L; v4f_105 = vload4(0, (__global float *) ul_104); f_107 = v4f_105.s0; f_108 = v4f_105.s1; f_109 = v4f_105.s2; v3f_106 = (float3)(f_107, f_108, f_109); f_110 = v3f_106.s0 * v3f_85.s0; f_111 = v3f_106.s1 * v3f_85.s1; f_112 = v3f_106.s2 * v3f_85.s2; v3f_113 = (float3)(f_110, f_111, f_112); f_114 = v3f_113.s0 + v3f_113.s1; f_115 = f_114 + v3f_113.s2; v3f_116 = (float3)(f_91, f_103, f_115); ul_117 = ul_11 + 36L; f_118 = *((__global float *) ul_117); ul_119 = ul_11 + 52L; f_120 = *((__global float *) ul_119); ul_121 = ul_11 + 68L; f_122 = *((__global float *) ul_121); ul_123 = ul_11 + 84L; f_124 = *((__global float *) ul_123); v4f_125 = (float4)(f_118, f_120, f_122, f_124); f_127 = v4f_125.s0; f_128 = v4f_125.s1; f_129 = v4f_125.s2; v3f_126 = (float3)(f_127, f_128, f_129); v3f_130 = v3f_116 + v3f_126; // BLOCK 5 MERGES [4 21 ] v3f_131 = v3f_85; v3f_132 = v3f_130; i_133 = 0; for(;i_133 < 256;) { // BLOCK 6 i_134 = i_133 + 1; f_135 = v3f_4.s2 / 256.0F; f_137 = 0.0F; f_138 = 0.0F; v3f_136 = (float3)(f_137, f_138, f_135); f_139 = v3f_136.s0 * v3f_22.s0; f_140 = v3f_136.s1 * v3f_22.s1; f_141 = v3f_136.s2 * v3f_22.s2; v3f_142 = (float3)(f_139, f_140, f_141); f_143 = v3f_142.s0 + v3f_142.s1; f_144 = f_143 + v3f_142.s2; f_145 = v3f_136.s0 * v3f_49.s0; f_146 = v3f_136.s1 * v3f_49.s1; f_147 = v3f_136.s2 * v3f_49.s2; v3f_148 = (float3)(f_145, f_146, f_147); f_149 = v3f_148.s0 + v3f_148.s1; f_150 = f_149 + v3f_148.s2; f_151 = v3f_136.s0 * v3f_61.s0; f_152 = v3f_136.s1 * v3f_61.s1; f_153 = v3f_136.s2 * v3f_61.s2; v3f_154 = (float3)(f_151, f_152, f_153); f_155 = v3f_154.s0 + v3f_154.s1; f_156 = f_155 + v3f_154.s2; v3f_157 = (float3)(f_144, f_150, f_156); f_158 = v3f_157.s0 * v3f_14.s0; f_159 = v3f_157.s1 * v3f_14.s1; f_160 = v3f_157.s2 * v3f_14.s2; v3f_161 = (float3)(f_158, f_159, f_160); f_162 = v3f_161.s0 + v3f_161.s1; f_163 = f_162 + v3f_161.s2; f_164 = v3f_157.s0 * v3f_94.s0; f_165 = v3f_157.s1 * v3f_94.s1; f_166 = v3f_157.s2 * v3f_94.s2; v3f_167 = (float3)(f_164, f_165, f_166); f_168 = v3f_167.s0 + v3f_167.s1; f_169 = f_168 + v3f_167.s2; f_170 = v3f_157.s0 * v3f_106.s0; f_171 = v3f_157.s1 * v3f_106.s1; f_172 = v3f_157.s2 * v3f_106.s2; v3f_173 = (float3)(f_170, f_171, f_172); f_174 = v3f_173.s0 + v3f_173.s1; f_175 = f_174 + v3f_173.s2; v3f_176 = (float3)(f_163, f_169, f_175); v3f_177 = v3f_132 + v3f_176; v3f_178 = v3f_131 + v3f_157; i_179 = isless(v3f_131.s2, 1.0E-4F); if(i_179 == 1) { // BLOCK 7 } // B7 else { // BLOCK 8 f_180 = v3f_132.s0 / v3f_132.s2; f_181 = f_180 + 0.5F; f_182 = v3f_132.s1 / v3f_132.s2; f_183 = f_182 + 0.5F; v2f_184 = (float2)(f_181, f_183); i_185 = isless(v2f_184.s0, 0.0F); if(i_185 == 1) { // BLOCK 9 } // B9 else { // BLOCK 10 i_186 = isless(319.0F, v2f_184.s0); if(i_186 == 1) { // BLOCK 11 } // B11 else { // BLOCK 12 i_187 = isless(v2f_184.s1, 0.0F); if(i_187 == 1) { // BLOCK 13 } // B13 else { // BLOCK 14 i_188 = isless(239.0F, v2f_184.s1); if(i_188 == 1) { // BLOCK 15 } // B15 else { // BLOCK 16 ul_189 = ul_0 + 32L; ul_190 = *((__global ulong *) ul_189); i_191 = isnan(v2f_184.s0)? 0 : (int) v2f_184.s0; i_192 = isnan(v2f_184.s1)? 0 : (int) v2f_184.s1; v2i_193 = (int2)(i_191, i_192); i_194 = v2i_193.s1 << 8; i_195 = v2i_193.s1 << 6; i_196 = i_194 + i_195; i_197 = v2i_193.s0 + i_196; l_198 = (long) i_197; l_199 = l_198 << 2; l_200 = l_199 + 24L; ul_201 = ul_190 + l_200; f_202 = *((__global float *) ul_201); i_203 = isequal(f_202, 0.0F); if(i_203 == 1) { // BLOCK 17 } // B17 else { // BLOCK 18 f_204 = f_202 - v3f_132.s2; f_205 = v3f_131.s1 / v3f_131.s2; f_206 = v3f_131.s0 / v3f_131.s2; f_207 = fma(f_206, f_206, 1.0F); f_208 = fma(f_205, f_205, f_207); f_209 = sqrt(f_208); f_210 = f_204 * f_209; i_211 = isless(-0.1F, f_210); if(i_211 == 1) { // BLOCK 19 ul_212 = ul_5 + 32L; ul_213 = *((__global ulong *) ul_212); i_214 = i_133 << 17; i_215 = i_9 << 1; i_216 = i_7 << 9; i_217 = i_215 + i_216; i_218 = i_214 + i_217; l_219 = (long) i_218; l_220 = l_219 << 1; l_221 = l_220 + 24L; ul_222 = ul_213 + l_221; v2s_223 = vload2(0, (__global short *) ul_222); f_224 = (float) v2s_223.s0; f_225 = (float) v2s_223.s1; v2f_226 = (float2)(f_224, f_225); f_228 = 3.051944E-5F; f_229 = 1.0F; v2f_227 = (float2)(f_228, f_229); f_230 = v2f_226.s0 * v2f_227.s0; f_231 = v2f_226.s1 * v2f_227.s1; v2f_232 = (float2)(f_230, f_231); f_233 = f_210 / 0.1F; f_234 = fmin(1.0F, f_233); f_235 = fma(v2f_232.s1, v2f_232.s0, f_234); f_236 = v2f_232.s1 + 1.0F; f_237 = f_235 / f_236; f_238 = fmin(1.0F, f_237); f_239 = fmax(-1.0F, f_238); f_240 = fmin(f_236, 100.0F); v2f_241 = (float2)(f_239, f_240); f_243 = 32766.0F; f_244 = 1.0F; v2f_242 = (float2)(f_243, f_244); f_245 = v2f_241.s0 * v2f_242.s0; f_246 = v2f_241.s1 * v2f_242.s1; v2f_247 = (float2)(f_245, f_246); i_248 = isnan(v2f_247.s0)? 0 : (int) v2f_247.s0; s_249 = (short) i_248; i_250 = (int) s_249; i_251 = isnan(v2f_247.s1)? 0 : (int) v2f_247.s1; s_252 = (short) i_251; i_253 = (int) s_252; v2s_254 = (short2)(i_250, i_253); vstore2(v2s_254, 0, (__global short *) ul_222); } // B19 else { // BLOCK 20 } // B20 } // B18 } // B16 } // B14 } // B12 } // B10 } // B8 // BLOCK 21 MERGES [7 19 20 17 15 13 11 9 ] v3f_255 = v3f_178; v3f_256 = v3f_177; i_257 = i_134; v3f_131 = v3f_255; v3f_132 = v3f_256; i_133 = i_257; } // B21 // BLOCK 22 i_258 = get_global_size(0); i_259 = i_258 + i_9; i_9 = i_259; } // B22 // BLOCK 23 i_260 = get_global_size(1); i_261 = i_260 + i_7; i_7 = i_261; } // B23 // BLOCK 24 return; } // kernel #pragma OPENCL EXTENSION cl_khr_fp64 : enable #pragma OPENCL EXTENSION cl_khr_int64_base_atomics : enable float4 uk_ac_manchester_tornado_api_collections_graphics_GraphicsMath_raycastPoint(__global uchar *_heap_base, ulong _frame_base, __constant uchar *_constant_region, __local uchar *_local_region, __global int *_atomics, ulong volume, float3 dim, int x, int y, ulong view, float nearPlane, float farPlane, float smallStep, float largeStep) { long l_314, l_313, l_312, l_191, l_190, l_179, l_371, l_178, l_370, l_369, l_180, l_363, l_298, l_362, l_297, l_296, l_238, l_237, l_236, l_364, l_354, l_353, l_352, l_231, l_230, l_229, l_219, l_347, l_346, l_345, l_159, l_158, l_157, l_221, l_220, l_214, l_213, l_212, l_331, l_333, l_332, l_192, l_199, l_198, l_326, l_197, l_325, l_324; short2 v2s_356, v2s_194, v2s_328, v2s_201, v2s_233, v2s_300, v2s_240, v2s_366, v2s_335, v2s_373, v2s_216, v2s_182, v2s_316, v2s_349, v2s_161, v2s_223; ulong ul_215, ul_27, ul_348, ul_222, ul_160, ul_355, ul_135, ul_327, ul_134, ul_9, ul_200, ul_11, ul_10, ul_334, ul_117, ul_181, ul_372, ul_56, ul_315, ul_58, ul_60, ul_62, ul_193, ul_39, ul_105, ul_232, ul_299, ul_365, ul_111, ul_239; float f_269, f_15, f_271, f_14, f_270, f_265, f_8, f_264, f_267, f_266, f_261, f_4, f_260, f_7, f_263, f_6, f_262, f_1, f_256, f_3, f_259, f_2, f_253, f_252, f_255, f_254, f_248, f_251, f_250, f_245, f_244, f_247, f_246, f_241, f_243, f_242, f_234, f_225, f_224, f_226, f_217, f_77, f_79, f_78, f_73, f_329, f_75, f_74, f_69, f_68, f_71, f_70, f_67, f_66, f_61, f_317, f_63, f_319, f_318, f_57, f_59, f_53, f_52, f_54, f_49, f_50, f_45, f_301, f_44, f_47, f_46, f_43, f_42, f_37, f_38, f_33, f_32, f_35, f_34, f_31, f_30, f_25, f_26, f_21, f_277, f_20, f_276, f_23, f_22, f_278, f_17, f_273, f_16, f_272, f_18, f_274, f_399, f_398, f_393, f_392, f_394, f_133, f_389, f_132, f_388, f_391, f_390, f_129, f_385, f_128, f_384, f_131, f_386, f_125, f_381, f_124, f_380, f_127, f_126, f_121, f_377, f_120, f_376, f_379, f_122, f_378, f_116, f_119, f_375, f_374, f_113, f_115, f_114, f_109, f_108, f_367, f_110, f_107, f_101, f_357, f_100, f_359, f_102, f_358, f_97, f_96, f_98, f_93, f_92, f_94, f_350, f_89, f_91, f_90, f_85, f_340, f_87, f_86, f_81, f_337, f_336, f_83, f_339, f_82, f_338, f_205, f_204, f_206, f_203, f_202, f_195, f_185, f_184, f_183, f_162, f_400; int3 v3i_305, v3i_148, v3i_163, v3i_141, v3i_175, v3i_287, v3i_140, v3i_171, v3i_283, v3i_309, v3i_167; float4 v4f_397, v4f_0, v4f_64, v4f_40, v4f_12, v4f_28; float3 v3f_36, v3f_29, v3f_95, v3f_279, v3f_24, v3f_88, v3f_51, v3f_48, v3f_41, v3f_103, v3f_104, v3f_65, v3f_257, v3f_130, v3f_258, v3f_123, v3f_55, v3f_19, v3f_275, v3f_84, v3f_13, v3f_80, v3f_395, v3f_76, v3f_268, v3f_396, v3f_5, v3f_72, v3f_136; int i_112, i_368, i_118, i_361, i_106, i_360, i_235, i_351, i_99, i_227, i_228, i_218, i_343, i_344, i_145, i_146, i_143, i_144, i_149, i_150, i_147, i_137, i_138, i_142, i_139, i_383, i_387, i_249, i_382, i_177, i_306, i_303, i_176, i_304, i_310, i_307, i_308, i_169, i_170, i_295, i_168, i_173, i_174, i_302, i_172, i_289, i_290, i_288, i_165, i_293, i_166, i_294, i_291, i_164, i_292, i_153, i_281, i_154, i_282, i_151, i_152, i_280, i_285, i_286, i_155, i_156, i_284, i_209, i_210, i_207, i_208, i_341, i_342, i_211, i_330, i_321, i_322, i_320, i_323, i_196, i_186, i_311, i_189, i_187, i_188; // BLOCK 0 f_1 = 0.0F; f_2 = 0.0F; f_3 = 0.0F; f_4 = 0.0F; v4f_0 = (float4)(f_1, f_2, f_3, f_4); f_6 = 1.0F; f_7 = 1.0F; f_8 = 1.0F; v3f_5 = (float3)(f_6, f_7, f_8); ul_9 = view + 24L; ul_10 = *((__global ulong *) ul_9); ul_11 = ul_10 + 24L; v4f_12 = vload4(0, (__global float *) ul_11); f_14 = v4f_12.s0; f_15 = v4f_12.s1; f_16 = v4f_12.s2; v3f_13 = (float3)(f_14, f_15, f_16); f_17 = (float) x; f_18 = (float) y; f_20 = 1.0F; v3f_19 = (float3)(f_17, f_18, f_20); f_21 = v3f_13.s0 * v3f_19.s0; f_22 = v3f_13.s1 * v3f_19.s1; f_23 = v3f_13.s2 * v3f_19.s2; v3f_24 = (float3)(f_21, f_22, f_23); f_25 = v3f_24.s0 + v3f_24.s1; f_26 = f_25 + v3f_24.s2; ul_27 = ul_10 + 40L; v4f_28 = vload4(0, (__global float *) ul_27); f_30 = v4f_28.s0; f_31 = v4f_28.s1; f_32 = v4f_28.s2; v3f_29 = (float3)(f_30, f_31, f_32); f_33 = v3f_29.s0 * v3f_19.s0; f_34 = v3f_29.s1 * v3f_19.s1; f_35 = v3f_29.s2 * v3f_19.s2; v3f_36 = (float3)(f_33, f_34, f_35); f_37 = v3f_36.s0 + v3f_36.s1; f_38 = f_37 + v3f_36.s2; ul_39 = ul_10 + 56L; v4f_40 = vload4(0, (__global float *) ul_39); f_42 = v4f_40.s0; f_43 = v4f_40.s1; f_44 = v4f_40.s2; v3f_41 = (float3)(f_42, f_43, f_44); f_45 = v3f_41.s0 * v3f_19.s0; f_46 = v3f_41.s1 * v3f_19.s1; f_47 = v3f_41.s2 * v3f_19.s2; v3f_48 = (float3)(f_45, f_46, f_47); f_49 = v3f_48.s0 + v3f_48.s1; f_50 = f_49 + v3f_48.s2; v3f_51 = (float3)(f_26, f_38, f_50); f_52 = v3f_5.s0 / v3f_51.s0; f_53 = v3f_5.s1 / v3f_51.s1; f_54 = v3f_5.s2 / v3f_51.s2; v3f_55 = (float3)(f_52, f_53, f_54); ul_56 = ul_10 + 36L; f_57 = *((__global float *) ul_56); ul_58 = ul_10 + 52L; f_59 = *((__global float *) ul_58); ul_60 = ul_10 + 68L; f_61 = *((__global float *) ul_60); ul_62 = ul_10 + 84L; f_63 = *((__global float *) ul_62); v4f_64 = (float4)(f_57, f_59, f_61, f_63); f_66 = v4f_64.s0; f_67 = v4f_64.s1; f_68 = v4f_64.s2; v3f_65 = (float3)(f_66, f_67, f_68); f_69 = dim.s0 - v3f_65.s0; f_70 = dim.s1 - v3f_65.s1; f_71 = dim.s2 - v3f_65.s2; v3f_72 = (float3)(f_69, f_70, f_71); f_73 = v3f_55.s0 * v3f_72.s0; f_74 = v3f_55.s1 * v3f_72.s1; f_75 = v3f_55.s2 * v3f_72.s2; v3f_76 = (float3)(f_73, f_74, f_75); f_77 = v3f_55.s0 * v3f_65.s0; f_78 = v3f_55.s1 * v3f_65.s1; f_79 = v3f_55.s2 * v3f_65.s2; v3f_80 = (float3)(f_77, f_78, f_79); f_81 = v3f_80.s0 * -1.0F; f_82 = v3f_80.s1 * -1.0F; f_83 = v3f_80.s2 * -1.0F; v3f_84 = (float3)(f_81, f_82, f_83); f_85 = fmin(v3f_76.s0, v3f_84.s0); f_86 = fmin(v3f_76.s1, v3f_84.s1); f_87 = fmin(v3f_76.s2, v3f_84.s2); v3f_88 = (float3)(f_85, f_86, f_87); f_89 = fmax(v3f_88.s1, v3f_88.s2); f_90 = fmax(v3f_88.s0, f_89); f_91 = fmax(f_90, nearPlane); f_92 = fmax(v3f_76.s0, v3f_84.s0); f_93 = fmax(v3f_76.s1, v3f_84.s1); f_94 = fmax(v3f_76.s2, v3f_84.s2); v3f_95 = (float3)(f_92, f_93, f_94); f_96 = fmin(v3f_95.s1, v3f_95.s2); f_97 = fmin(v3f_95.s0, f_96); f_98 = fmin(f_97, farPlane); i_99 = isless(f_91, f_98); if(i_99 == 1) { // BLOCK 1 f_100 = f_91 * v3f_51.s0; f_101 = f_91 * v3f_51.s1; f_102 = f_91 * v3f_51.s2; v3f_103 = (float3)(f_100, f_101, f_102); v3f_104 = v3f_103 + v3f_65; ul_105 = volume + 24L; i_106 = *((__global int *) ul_105); f_107 = (float) i_106; f_108 = v3f_104.s0 * f_107; f_109 = f_108 / dim.s0; f_110 = f_109 - 0.5F; ul_111 = volume + 20L; i_112 = *((__global int *) ul_111); f_113 = (float) i_112; f_114 = v3f_104.s1 * f_113; f_115 = f_114 / dim.s1; f_116 = f_115 - 0.5F; ul_117 = volume + 28L; i_118 = *((__global int *) ul_117); f_119 = (float) i_118; f_120 = v3f_104.s2 * f_119; f_121 = f_120 / dim.s2; f_122 = f_121 - 0.5F; v3f_123 = (float3)(f_110, f_116, f_122); f_124 = floor(v3f_123.s0); f_125 = v3f_123.s0 - f_124; f_126 = floor(v3f_123.s1); f_127 = v3f_123.s1 - f_126; f_128 = floor(v3f_123.s2); f_129 = v3f_123.s2 - f_128; v3f_130 = (float3)(f_125, f_127, f_129); f_131 = 1.0F - v3f_130.s2; f_132 = 1.0F - v3f_130.s1; f_133 = 1.0F - v3f_130.s0; ul_134 = volume + 32L; ul_135 = *((__global ulong *) ul_134); v3f_136 = (float3)(f_124, f_126, f_128); i_137 = isnan(v3f_136.s0)? 0 : (int) v3f_136.s0; i_138 = isnan(v3f_136.s1)? 0 : (int) v3f_136.s1; i_139 = isnan(v3f_136.s2)? 0 : (int) v3f_136.s2; v3i_140 = (int3)(i_137, i_138, i_139); i_142 = 0; i_143 = 0; i_144 = 0; v3i_141 = (int3)(i_142, i_143, i_144); i_145 = max(v3i_140.s0, v3i_141.s0); i_146 = max(v3i_140.s1, v3i_141.s1); i_147 = max(v3i_140.s2, v3i_141.s2); v3i_148 = (int3)(i_145, i_146, i_147); i_149 = v3i_148.s2 * i_106; i_150 = i_149 * i_112; i_151 = i_150 << 1; i_152 = v3i_148.s1 << 1; i_153 = i_152 * i_106; i_154 = i_151 + i_153; i_155 = v3i_148.s0 << 1; i_156 = i_154 + i_155; l_157 = (long) i_156; l_158 = l_157 << 1; l_159 = l_158 + 24L; ul_160 = ul_135 + l_159; v2s_161 = vload2(0, (__global short *) ul_160); f_162 = (float) v2s_161.s0; v3i_163 = (int3)(i_106, i_112, i_118); i_164 = v3i_163.s0 + -1; i_165 = v3i_163.s1 + -1; i_166 = v3i_163.s2 + -1; v3i_167 = (int3)(i_164, i_165, i_166); i_168 = v3i_140.s0 + 1; i_169 = v3i_140.s1 + 1; i_170 = v3i_140.s2 + 1; v3i_171 = (int3)(i_168, i_169, i_170); i_172 = min(v3i_167.s0, v3i_171.s0); i_173 = min(v3i_167.s1, v3i_171.s1); i_174 = min(v3i_167.s2, v3i_171.s2); v3i_175 = (int3)(i_172, i_173, i_174); i_176 = v3i_175.s0 << 1; i_177 = i_176 + i_154; l_178 = (long) i_177; l_179 = l_178 << 1; l_180 = l_179 + 24L; ul_181 = ul_135 + l_180; v2s_182 = vload2(0, (__global short *) ul_181); f_183 = (float) v2s_182.s0; f_184 = f_183 * v3f_130.s0; f_185 = fma(f_133, f_162, f_184); i_186 = v3i_175.s1 << 1; i_187 = i_186 * i_106; i_188 = i_187 + i_151; i_189 = i_188 + i_155; l_190 = (long) i_189; l_191 = l_190 << 1; l_192 = l_191 + 24L; ul_193 = ul_135 + l_192; v2s_194 = vload2(0, (__global short *) ul_193); f_195 = (float) v2s_194.s0; i_196 = i_176 + i_188; l_197 = (long) i_196; l_198 = l_197 << 1; l_199 = l_198 + 24L; ul_200 = ul_135 + l_199; v2s_201 = vload2(0, (__global short *) ul_200); f_202 = (float) v2s_201.s0; f_203 = f_202 * v3f_130.s0; f_204 = fma(f_133, f_195, f_203); f_205 = f_204 * v3f_130.s1; f_206 = fma(f_132, f_185, f_205); i_207 = v3i_175.s2 * i_106; i_208 = i_207 * i_112; i_209 = i_208 << 1; i_210 = i_209 + i_153; i_211 = i_210 + i_155; l_212 = (long) i_211; l_213 = l_212 << 1; l_214 = l_213 + 24L; ul_215 = ul_135 + l_214; v2s_216 = vload2(0, (__global short *) ul_215); f_217 = (float) v2s_216.s0; i_218 = i_176 + i_210; l_219 = (long) i_218; l_220 = l_219 << 1; l_221 = l_220 + 24L; ul_222 = ul_135 + l_221; v2s_223 = vload2(0, (__global short *) ul_222); f_224 = (float) v2s_223.s0; f_225 = f_224 * v3f_130.s0; f_226 = fma(f_133, f_217, f_225); i_227 = i_187 + i_209; i_228 = i_227 + i_155; l_229 = (long) i_228; l_230 = l_229 << 1; l_231 = l_230 + 24L; ul_232 = ul_135 + l_231; v2s_233 = vload2(0, (__global short *) ul_232); f_234 = (float) v2s_233.s0; i_235 = i_176 + i_227; l_236 = (long) i_235; l_237 = l_236 << 1; l_238 = l_237 + 24L; ul_239 = ul_135 + l_238; v2s_240 = vload2(0, (__global short *) ul_239); f_241 = (float) v2s_240.s0; f_242 = f_241 * v3f_130.s0; f_243 = fma(f_133, f_234, f_242); f_244 = f_243 * v3f_130.s1; f_245 = fma(f_132, f_226, f_244); f_246 = f_245 * v3f_130.s2; f_247 = fma(f_131, f_206, f_246); f_248 = f_247 * 3.051944E-5F; i_249 = isless(0.0F, f_248); if(i_249 == 1) { // BLOCK 2 // BLOCK 3 MERGES [2 9 ] f_250 = f_91; f_251 = largeStep; f_252 = f_248; f_253 = 0.0F; for(;isless(f_250, f_98) == 1;) { // BLOCK 4 f_254 = f_250 * v3f_51.s0; f_255 = f_250 * v3f_51.s1; f_256 = f_250 * v3f_51.s2; v3f_257 = (float3)(f_254, f_255, f_256); v3f_258 = v3f_257 + v3f_65; f_259 = v3f_258.s0 * f_107; f_260 = f_259 / dim.s0; f_261 = f_260 - 0.5F; f_262 = v3f_258.s1 * f_113; f_263 = f_262 / dim.s1; f_264 = f_263 - 0.5F; f_265 = v3f_258.s2 * f_119; f_266 = f_265 / dim.s2; f_267 = f_266 - 0.5F; v3f_268 = (float3)(f_261, f_264, f_267); f_269 = floor(v3f_268.s0); f_270 = v3f_268.s0 - f_269; f_271 = floor(v3f_268.s1); f_272 = v3f_268.s1 - f_271; f_273 = floor(v3f_268.s2); f_274 = v3f_268.s2 - f_273; v3f_275 = (float3)(f_270, f_272, f_274); f_276 = 1.0F - v3f_275.s2; f_277 = 1.0F - v3f_275.s1; f_278 = 1.0F - v3f_275.s0; v3f_279 = (float3)(f_269, f_271, f_273); i_280 = isnan(v3f_279.s0)? 0 : (int) v3f_279.s0; i_281 = isnan(v3f_279.s1)? 0 : (int) v3f_279.s1; i_282 = isnan(v3f_279.s2)? 0 : (int) v3f_279.s2; v3i_283 = (int3)(i_280, i_281, i_282); i_284 = max(v3i_283.s0, v3i_141.s0); i_285 = max(v3i_283.s1, v3i_141.s1); i_286 = max(v3i_283.s2, v3i_141.s2); v3i_287 = (int3)(i_284, i_285, i_286); i_288 = i_106 * i_112; i_289 = v3i_287.s2 * i_288; i_290 = i_289 << 1; i_291 = v3i_287.s1 << 1; i_292 = i_291 * i_106; i_293 = i_290 + i_292; i_294 = v3i_287.s0 << 1; i_295 = i_293 + i_294; l_296 = (long) i_295; l_297 = l_296 << 1; l_298 = l_297 + 24L; ul_299 = ul_135 + l_298; v2s_300 = vload2(0, (__global short *) ul_299); f_301 = (float) v2s_300.s0; i_302 = v3i_283.s0 + 1; i_303 = v3i_283.s1 + 1; i_304 = v3i_283.s2 + 1; v3i_305 = (int3)(i_302, i_303, i_304); i_306 = min(v3i_167.s0, v3i_305.s0); i_307 = min(v3i_167.s1, v3i_305.s1); i_308 = min(v3i_167.s2, v3i_305.s2); v3i_309 = (int3)(i_306, i_307, i_308); i_310 = v3i_309.s0 << 1; i_311 = i_310 + i_293; l_312 = (long) i_311; l_313 = l_312 << 1; l_314 = l_313 + 24L; ul_315 = ul_135 + l_314; v2s_316 = vload2(0, (__global short *) ul_315); f_317 = (float) v2s_316.s0; f_318 = f_317 * v3f_275.s0; f_319 = fma(f_278, f_301, f_318); i_320 = v3i_309.s1 << 1; i_321 = i_320 * i_106; i_322 = i_321 + i_290; i_323 = i_322 + i_294; l_324 = (long) i_323; l_325 = l_324 << 1; l_326 = l_325 + 24L; ul_327 = ul_135 + l_326; v2s_328 = vload2(0, (__global short *) ul_327); f_329 = (float) v2s_328.s0; i_330 = i_310 + i_322; l_331 = (long) i_330; l_332 = l_331 << 1; l_333 = l_332 + 24L; ul_334 = ul_135 + l_333; v2s_335 = vload2(0, (__global short *) ul_334); f_336 = (float) v2s_335.s0; f_337 = f_336 * v3f_275.s0; f_338 = fma(f_278, f_329, f_337); f_339 = f_338 * v3f_275.s1; f_340 = fma(f_277, f_319, f_339); i_341 = v3i_309.s2 * i_288; i_342 = i_341 << 1; i_343 = i_342 + i_292; i_344 = i_343 + i_294; l_345 = (long) i_344; l_346 = l_345 << 1; l_347 = l_346 + 24L; ul_348 = ul_135 + l_347; v2s_349 = vload2(0, (__global short *) ul_348); f_350 = (float) v2s_349.s0; i_351 = i_310 + i_343; l_352 = (long) i_351; l_353 = l_352 << 1; l_354 = l_353 + 24L; ul_355 = ul_135 + l_354; v2s_356 = vload2(0, (__global short *) ul_355); f_357 = (float) v2s_356.s0; f_358 = f_357 * v3f_275.s0; f_359 = fma(f_278, f_350, f_358); i_360 = i_321 + i_342; i_361 = i_360 + i_294; l_362 = (long) i_361; l_363 = l_362 << 1; l_364 = l_363 + 24L; ul_365 = ul_135 + l_364; v2s_366 = vload2(0, (__global short *) ul_365); f_367 = (float) v2s_366.s0; i_368 = i_310 + i_360; l_369 = (long) i_368; l_370 = l_369 << 1; l_371 = l_370 + 24L; ul_372 = ul_135 + l_371; v2s_373 = vload2(0, (__global short *) ul_372); f_374 = (float) v2s_373.s0; f_375 = f_374 * v3f_275.s0; f_376 = fma(f_278, f_367, f_375); f_377 = f_376 * v3f_275.s1; f_378 = fma(f_277, f_359, f_377); f_379 = f_378 * v3f_275.s2; f_380 = fma(f_276, f_340, f_379); f_381 = f_380 * 3.051944E-5F; i_382 = isless(f_381, 0.0F); if(i_382 == 1) { // BLOCK 5 f_386 = f_381; break; } // B5 else { // BLOCK 6 i_383 = isless(f_381, 0.8F); if(i_383 == 1) { // BLOCK 7 f_384 = smallStep; } // B7 else { // BLOCK 8 f_384 = f_251; } // B8 // BLOCK 9 MERGES [8 7 ] f_385 = f_250 + f_384; f_250 = f_385; f_251 = f_384; f_252 = f_381; f_253 = f_381; } // B9 // BLOCK 10 f_386 = f_253; } // B10 // BLOCK 11 MERGES [10 5 ] f_386 = f_381; i_387 = isless(f_386, 0.0F); if(i_387 == 1) { // BLOCK 12 f_388 = f_251 * f_386; f_389 = f_252 - f_386; f_390 = f_388 / f_389; f_391 = f_390 + f_250; f_392 = f_391 * v3f_51.s0; f_393 = f_391 * v3f_51.s1; f_394 = f_391 * v3f_51.s2; v3f_395 = (float3)(f_392, f_393, f_394); v3f_396 = v3f_395 + v3f_65; f_398 = v3f_396.s0; f_399 = v3f_396.s1; f_400 = v3f_396.s2; v4f_397 = (float4)(f_398, f_399, f_400, f_391); return v4f_397; } // B12 else { // BLOCK 13 return v4f_0; } // B13 } // B2 else { // BLOCK 14 return v4f_0; } // B14 } // B1 else { // BLOCK 15 return v4f_0; } // B15 } // kernel #pragma OPENCL EXTENSION cl_khr_fp64 : enable #pragma OPENCL EXTENSION cl_khr_int64_base_atomics : enable float3 uk_ac_manchester_tornado_api_collections_types_VolumeOps_grad(__global uchar *_heap_base, ulong _frame_base, __constant uchar *_constant_region, __local uchar *_local_region, __global int *_atomics, ulong volume, float3 dim, float3 point) { long l_251, l_379, l_250, l_378, l_120, l_127, l_126, l_125, l_252, l_380, l_369, l_368, l_119, l_118, l_106, l_105, l_361, l_104, l_360, l_239, l_367, l_238, l_237, l_98, l_97, l_96, l_231, l_359, l_230, l_229, l_345, l_344, l_337, l_336, l_343, l_214, l_213, l_212, l_75, l_74, l_207, l_335, l_206, l_205, l_76, l_192, l_199, l_198, l_326, l_197, l_325, l_324, l_59, l_58, l_191, l_190, l_318, l_317, l_60, l_316, l_179, l_181, l_180, l_299, l_298, l_174, l_173, l_172, l_300, l_291, l_290, l_166, l_165, l_164, l_292, l_281, l_280, l_159, l_158, l_157, l_273, l_272, l_279, l_271, l_142, l_141, l_140, l_259, l_387, l_258, l_386, l_135, l_134, l_133, l_260, l_388; short2 v2s_194, v2s_328, v2s_137, v2s_201, v2s_262, v2s_390, v2s_144, v2s_209, v2s_78, v2s_275, v2s_339, v2s_216, v2s_283, v2s_347, v2s_161, v2s_100, v2s_168, v2s_233, v2s_294, v2s_108, v2s_363, v2s_176, v2s_241, v2s_302, v2s_371, v2s_183, v2s_122, v2s_320, v2s_129, v2s_62, v2s_254, v2s_382; ulong ul_215, ul_282, ul_346, ul_160, ul_99, ul_261, ul_389, ul_327, ul_6, ul_136, ul_200, ul_77, ul_12, ul_143, ul_208, ul_18, ul_274, ul_338, ul_182, ul_121, ul_61, ul_253, ul_381, ul_319, ul_1, ul_193, ul_0, ul_128, ul_293, ul_167, ul_232, ul_107, ul_362, ul_301, ul_175, ul_240, ul_370; float f_268, f_15, f_14, f_9, f_265, f_8, f_264, f_11, f_267, f_10, f_266, f_263, f_256, f_255, f_245, f_244, f_243, f_242, f_235, f_234, f_224, f_221, f_220, f_223, f_222, f_217, f_219, f_218, f_210, f_332, f_79, f_329, f_331, f_330, f_321, f_322, f_63, f_309, f_308, f_310, f_305, f_304, f_307, f_306, f_303, f_296, f_295, f_285, f_284, f_287, f_286, f_25, f_27, f_26, f_21, f_277, f_20, f_276, f_23, f_22, f_17, f_16, f_397, f_396, f_398, f_393, f_392, f_395, f_138, f_394, f_391, f_384, f_131, f_130, f_383, f_123, f_373, f_372, f_375, f_374, f_113, f_112, f_109, f_365, f_364, f_111, f_110, f_101, f_353, f_352, f_349, f_348, f_351, f_350, f_85, f_341, f_340, f_81, f_80, f_83, f_82, f_203, f_202, f_195, f_185, f_184, f_187, f_186, f_177, f_169, f_170, f_162, f_409, f_408, f_410, f_149, f_405, f_148, f_404, f_151, f_150, f_406, f_145, f_401, f_400, f_147, f_146, f_402; int3 v3i_2, v3i_36, v3i_51, v3i_67, v3i_93, v3i_32, v3i_47, v3i_89, v3i_43, v3i_55, v3i_71; float3 v3f_403, v3f_84, v3f_399, v3f_411, v3f_28, v3f_407, v3f_24; int i_246, i_236, i_225, i_226, i_227, i_228, i_278, i_19, i_7, i_13, i_269, i_270, i_257, i_5, i_3, i_4, i_249, i_247, i_248, i_178, i_171, i_163, i_153, i_154, i_152, i_155, i_156, i_211, i_204, i_196, i_189, i_188, i_114, i_117, i_115, i_116, i_103, i_366, i_354, i_95, i_357, i_102, i_358, i_355, i_356, i_90, i_87, i_88, i_94, i_91, i_92, i_139, i_385, i_132, i_377, i_376, i_124, i_49, i_50, i_48, i_53, i_54, i_52, i_41, i_297, i_42, i_39, i_40, i_45, i_46, i_44, i_33, i_289, i_34, i_31, i_288, i_37, i_38, i_35, i_29, i_30, i_86, i_342, i_73, i_72, i_333, i_334, i_65, i_66, i_64, i_69, i_70, i_323, i_68, i_57, i_313, i_314, i_311, i_56, i_312, i_315; // BLOCK 0 ul_0 = volume + 32L; ul_1 = *((__global ulong *) ul_0); i_3 = 0; i_4 = 0; i_5 = 0; v3i_2 = (int3)(i_3, i_4, i_5); ul_6 = volume + 24L; i_7 = *((__global int *) ul_6); f_8 = (float) i_7; f_9 = point.s0 * f_8; f_10 = f_9 / dim.s0; f_11 = f_10 - 0.5F; ul_12 = volume + 20L; i_13 = *((__global int *) ul_12); f_14 = (float) i_13; f_15 = point.s1 * f_14; f_16 = f_15 / dim.s1; f_17 = f_16 - 0.5F; ul_18 = volume + 28L; i_19 = *((__global int *) ul_18); f_20 = (float) i_19; f_21 = point.s2 * f_20; f_22 = f_21 / dim.s2; f_23 = f_22 - 0.5F; v3f_24 = (float3)(f_11, f_17, f_23); f_25 = floor(v3f_24.s0); f_26 = floor(v3f_24.s1); f_27 = floor(v3f_24.s2); v3f_28 = (float3)(f_25, f_26, f_27); i_29 = isnan(v3f_28.s0)? 0 : (int) v3f_28.s0; i_30 = isnan(v3f_28.s1)? 0 : (int) v3f_28.s1; i_31 = isnan(v3f_28.s2)? 0 : (int) v3f_28.s2; v3i_32 = (int3)(i_29, i_30, i_31); i_33 = max(v3i_2.s0, v3i_32.s0); i_34 = max(v3i_2.s1, v3i_32.s1); i_35 = max(v3i_2.s2, v3i_32.s2); v3i_36 = (int3)(i_33, i_34, i_35); i_37 = v3i_36.s2 * i_7; i_38 = i_37 * i_13; i_39 = i_38 << 1; i_40 = v3i_36.s1 << 1; i_41 = i_40 * i_7; i_42 = i_39 + i_41; v3i_43 = (int3)(i_7, i_13, i_19); i_44 = v3i_43.s0 + -1; i_45 = v3i_43.s1 + -1; i_46 = v3i_43.s2 + -1; v3i_47 = (int3)(i_44, i_45, i_46); i_48 = v3i_32.s0 + 1; i_49 = v3i_32.s1 + 1; i_50 = v3i_32.s2 + 1; v3i_51 = (int3)(i_48, i_49, i_50); i_52 = min(v3i_47.s0, v3i_51.s0); i_53 = min(v3i_47.s1, v3i_51.s1); i_54 = min(v3i_47.s2, v3i_51.s2); v3i_55 = (int3)(i_52, i_53, i_54); i_56 = v3i_55.s0 << 1; i_57 = i_42 + i_56; l_58 = (long) i_57; l_59 = l_58 << 1; l_60 = l_59 + 24L; ul_61 = ul_1 + l_60; v2s_62 = vload2(0, (__global short *) ul_61); f_63 = (float) v2s_62.s0; i_64 = v3i_32.s0 + -1; i_65 = v3i_32.s1 + -1; i_66 = v3i_32.s2 + -1; v3i_67 = (int3)(i_64, i_65, i_66); i_68 = max(v3i_2.s0, v3i_67.s0); i_69 = max(v3i_2.s1, v3i_67.s1); i_70 = max(v3i_2.s2, v3i_67.s2); v3i_71 = (int3)(i_68, i_69, i_70); i_72 = v3i_71.s0 << 1; i_73 = i_72 + i_42; l_74 = (long) i_73; l_75 = l_74 << 1; l_76 = l_75 + 24L; ul_77 = ul_1 + l_76; v2s_78 = vload2(0, (__global short *) ul_77); f_79 = (float) v2s_78.s0; f_80 = f_63 - f_79; f_81 = v3f_24.s0 - f_25; f_82 = v3f_24.s1 - f_26; f_83 = v3f_24.s2 - f_27; v3f_84 = (float3)(f_81, f_82, f_83); f_85 = 1.0F - v3f_84.s0; i_86 = v3i_32.s0 + 2; i_87 = v3i_32.s1 + 2; i_88 = v3i_32.s2 + 2; v3i_89 = (int3)(i_86, i_87, i_88); i_90 = min(v3i_47.s0, v3i_89.s0); i_91 = min(v3i_47.s1, v3i_89.s1); i_92 = min(v3i_47.s2, v3i_89.s2); v3i_93 = (int3)(i_90, i_91, i_92); i_94 = v3i_93.s0 << 1; i_95 = i_94 + i_42; l_96 = (long) i_95; l_97 = l_96 << 1; l_98 = l_97 + 24L; ul_99 = ul_1 + l_98; v2s_100 = vload2(0, (__global short *) ul_99); f_101 = (float) v2s_100.s0; i_102 = v3i_36.s0 << 1; i_103 = i_102 + i_42; l_104 = (long) i_103; l_105 = l_104 << 1; l_106 = l_105 + 24L; ul_107 = ul_1 + l_106; v2s_108 = vload2(0, (__global short *) ul_107); f_109 = (float) v2s_108.s0; f_110 = f_101 - f_109; f_111 = f_110 * v3f_84.s0; f_112 = fma(f_80, f_85, f_111); f_113 = 1.0F - v3f_84.s1; i_114 = v3i_55.s1 << 1; i_115 = i_114 * i_7; i_116 = i_115 + i_39; i_117 = i_116 + i_56; l_118 = (long) i_117; l_119 = l_118 << 1; l_120 = l_119 + 24L; ul_121 = ul_1 + l_120; v2s_122 = vload2(0, (__global short *) ul_121); f_123 = (float) v2s_122.s0; i_124 = i_72 + i_116; l_125 = (long) i_124; l_126 = l_125 << 1; l_127 = l_126 + 24L; ul_128 = ul_1 + l_127; v2s_129 = vload2(0, (__global short *) ul_128); f_130 = (float) v2s_129.s0; f_131 = f_123 - f_130; i_132 = i_94 + i_116; l_133 = (long) i_132; l_134 = l_133 << 1; l_135 = l_134 + 24L; ul_136 = ul_1 + l_135; v2s_137 = vload2(0, (__global short *) ul_136); f_138 = (float) v2s_137.s0; i_139 = i_102 + i_116; l_140 = (long) i_139; l_141 = l_140 << 1; l_142 = l_141 + 24L; ul_143 = ul_1 + l_142; v2s_144 = vload2(0, (__global short *) ul_143); f_145 = (float) v2s_144.s0; f_146 = f_138 - f_145; f_147 = f_146 * v3f_84.s0; f_148 = fma(f_85, f_131, f_147); f_149 = f_148 * v3f_84.s1; f_150 = fma(f_112, f_113, f_149); f_151 = 1.0F - v3f_84.s2; i_152 = v3i_55.s2 * i_7; i_153 = i_152 * i_13; i_154 = i_153 << 1; i_155 = i_154 + i_41; i_156 = i_155 + i_56; l_157 = (long) i_156; l_158 = l_157 << 1; l_159 = l_158 + 24L; ul_160 = ul_1 + l_159; v2s_161 = vload2(0, (__global short *) ul_160); f_162 = (float) v2s_161.s0; i_163 = i_72 + i_155; l_164 = (long) i_163; l_165 = l_164 << 1; l_166 = l_165 + 24L; ul_167 = ul_1 + l_166; v2s_168 = vload2(0, (__global short *) ul_167); f_169 = (float) v2s_168.s0; f_170 = f_162 - f_169; i_171 = i_94 + i_155; l_172 = (long) i_171; l_173 = l_172 << 1; l_174 = l_173 + 24L; ul_175 = ul_1 + l_174; v2s_176 = vload2(0, (__global short *) ul_175); f_177 = (float) v2s_176.s0; i_178 = i_102 + i_155; l_179 = (long) i_178; l_180 = l_179 << 1; l_181 = l_180 + 24L; ul_182 = ul_1 + l_181; v2s_183 = vload2(0, (__global short *) ul_182); f_184 = (float) v2s_183.s0; f_185 = f_177 - f_184; f_186 = f_185 * v3f_84.s0; f_187 = fma(f_85, f_170, f_186); i_188 = i_115 + i_154; i_189 = i_188 + i_56; l_190 = (long) i_189; l_191 = l_190 << 1; l_192 = l_191 + 24L; ul_193 = ul_1 + l_192; v2s_194 = vload2(0, (__global short *) ul_193); f_195 = (float) v2s_194.s0; i_196 = i_72 + i_188; l_197 = (long) i_196; l_198 = l_197 << 1; l_199 = l_198 + 24L; ul_200 = ul_1 + l_199; v2s_201 = vload2(0, (__global short *) ul_200); f_202 = (float) v2s_201.s0; f_203 = f_195 - f_202; i_204 = i_94 + i_188; l_205 = (long) i_204; l_206 = l_205 << 1; l_207 = l_206 + 24L; ul_208 = ul_1 + l_207; v2s_209 = vload2(0, (__global short *) ul_208); f_210 = (float) v2s_209.s0; i_211 = i_102 + i_188; l_212 = (long) i_211; l_213 = l_212 << 1; l_214 = l_213 + 24L; ul_215 = ul_1 + l_214; v2s_216 = vload2(0, (__global short *) ul_215); f_217 = (float) v2s_216.s0; f_218 = f_210 - f_217; f_219 = f_218 * v3f_84.s0; f_220 = fma(f_85, f_203, f_219); f_221 = f_220 * v3f_84.s1; f_222 = fma(f_113, f_187, f_221); f_223 = f_222 * v3f_84.s2; f_224 = fma(f_150, f_151, f_223); i_225 = v3i_71.s1 << 1; i_226 = i_225 * i_7; i_227 = i_226 + i_39; i_228 = i_227 + i_102; l_229 = (long) i_228; l_230 = l_229 << 1; l_231 = l_230 + 24L; ul_232 = ul_1 + l_231; v2s_233 = vload2(0, (__global short *) ul_232); f_234 = (float) v2s_233.s0; f_235 = f_145 - f_234; i_236 = i_56 + i_227; l_237 = (long) i_236; l_238 = l_237 << 1; l_239 = l_238 + 24L; ul_240 = ul_1 + l_239; v2s_241 = vload2(0, (__global short *) ul_240); f_242 = (float) v2s_241.s0; f_243 = f_123 - f_242; f_244 = f_243 * v3f_84.s0; f_245 = fma(f_85, f_235, f_244); i_246 = v3i_93.s1 << 1; i_247 = i_246 * i_7; i_248 = i_247 + i_39; i_249 = i_248 + i_102; l_250 = (long) i_249; l_251 = l_250 << 1; l_252 = l_251 + 24L; ul_253 = ul_1 + l_252; v2s_254 = vload2(0, (__global short *) ul_253); f_255 = (float) v2s_254.s0; f_256 = f_255 - f_109; i_257 = i_56 + i_248; l_258 = (long) i_257; l_259 = l_258 << 1; l_260 = l_259 + 24L; ul_261 = ul_1 + l_260; v2s_262 = vload2(0, (__global short *) ul_261); f_263 = (float) v2s_262.s0; f_264 = f_263 - f_63; f_265 = f_264 * v3f_84.s0; f_266 = fma(f_85, f_256, f_265); f_267 = f_266 * v3f_84.s1; f_268 = fma(f_113, f_245, f_267); i_269 = i_154 + i_226; i_270 = i_269 + i_102; l_271 = (long) i_270; l_272 = l_271 << 1; l_273 = l_272 + 24L; ul_274 = ul_1 + l_273; v2s_275 = vload2(0, (__global short *) ul_274); f_276 = (float) v2s_275.s0; f_277 = f_217 - f_276; i_278 = i_56 + i_269; l_279 = (long) i_278; l_280 = l_279 << 1; l_281 = l_280 + 24L; ul_282 = ul_1 + l_281; v2s_283 = vload2(0, (__global short *) ul_282); f_284 = (float) v2s_283.s0; f_285 = f_195 - f_284; f_286 = f_285 * v3f_84.s0; f_287 = fma(f_85, f_277, f_286); i_288 = i_154 + i_247; i_289 = i_288 + i_102; l_290 = (long) i_289; l_291 = l_290 << 1; l_292 = l_291 + 24L; ul_293 = ul_1 + l_292; v2s_294 = vload2(0, (__global short *) ul_293); f_295 = (float) v2s_294.s0; f_296 = f_295 - f_184; i_297 = i_56 + i_288; l_298 = (long) i_297; l_299 = l_298 << 1; l_300 = l_299 + 24L; ul_301 = ul_1 + l_300; v2s_302 = vload2(0, (__global short *) ul_301); f_303 = (float) v2s_302.s0; f_304 = f_303 - f_162; f_305 = f_304 * v3f_84.s0; f_306 = fma(f_85, f_296, f_305); f_307 = f_306 * v3f_84.s1; f_308 = fma(f_113, f_287, f_307); f_309 = f_308 * v3f_84.s2; f_310 = fma(f_151, f_268, f_309); i_311 = v3i_71.s2 * i_7; i_312 = i_311 * i_13; i_313 = i_312 << 1; i_314 = i_313 + i_41; i_315 = i_314 + i_102; l_316 = (long) i_315; l_317 = l_316 << 1; l_318 = l_317 + 24L; ul_319 = ul_1 + l_318; v2s_320 = vload2(0, (__global short *) ul_319); f_321 = (float) v2s_320.s0; f_322 = f_184 - f_321; i_323 = i_56 + i_314; l_324 = (long) i_323; l_325 = l_324 << 1; l_326 = l_325 + 24L; ul_327 = ul_1 + l_326; v2s_328 = vload2(0, (__global short *) ul_327); f_329 = (float) v2s_328.s0; f_330 = f_162 - f_329; f_331 = f_330 * v3f_84.s0; f_332 = fma(f_85, f_322, f_331); i_333 = i_115 + i_313; i_334 = i_333 + i_102; l_335 = (long) i_334; l_336 = l_335 << 1; l_337 = l_336 + 24L; ul_338 = ul_1 + l_337; v2s_339 = vload2(0, (__global short *) ul_338); f_340 = (float) v2s_339.s0; f_341 = f_217 - f_340; i_342 = i_56 + i_333; l_343 = (long) i_342; l_344 = l_343 << 1; l_345 = l_344 + 24L; ul_346 = ul_1 + l_345; v2s_347 = vload2(0, (__global short *) ul_346); f_348 = (float) v2s_347.s0; f_349 = f_195 - f_348; f_350 = f_349 * v3f_84.s0; f_351 = fma(f_85, f_341, f_350); f_352 = f_351 * v3f_84.s1; f_353 = fma(f_113, f_332, f_352); i_354 = v3i_93.s2 * i_7; i_355 = i_354 * i_13; i_356 = i_355 << 1; i_357 = i_356 + i_41; i_358 = i_357 + i_102; l_359 = (long) i_358; l_360 = l_359 << 1; l_361 = l_360 + 24L; ul_362 = ul_1 + l_361; v2s_363 = vload2(0, (__global short *) ul_362); f_364 = (float) v2s_363.s0; f_365 = f_364 - f_109; i_366 = i_56 + i_357; l_367 = (long) i_366; l_368 = l_367 << 1; l_369 = l_368 + 24L; ul_370 = ul_1 + l_369; v2s_371 = vload2(0, (__global short *) ul_370); f_372 = (float) v2s_371.s0; f_373 = f_372 - f_63; f_374 = f_373 * v3f_84.s0; f_375 = fma(f_85, f_365, f_374); i_376 = i_115 + i_356; i_377 = i_376 + i_102; l_378 = (long) i_377; l_379 = l_378 << 1; l_380 = l_379 + 24L; ul_381 = ul_1 + l_380; v2s_382 = vload2(0, (__global short *) ul_381); f_383 = (float) v2s_382.s0; f_384 = f_383 - f_145; i_385 = i_56 + i_376; l_386 = (long) i_385; l_387 = l_386 << 1; l_388 = l_387 + 24L; ul_389 = ul_1 + l_388; v2s_390 = vload2(0, (__global short *) ul_389); f_391 = (float) v2s_390.s0; f_392 = f_391 - f_123; f_393 = f_392 * v3f_84.s0; f_394 = fma(f_85, f_384, f_393); f_395 = f_394 * v3f_84.s1; f_396 = fma(f_113, f_375, f_395); f_397 = f_396 * v3f_84.s2; f_398 = fma(f_151, f_353, f_397); v3f_399 = (float3)(f_224, f_310, f_398); f_400 = dim.s0 / f_8; f_401 = dim.s1 / f_14; f_402 = dim.s2 / f_20; v3f_403 = (float3)(f_400, f_401, f_402); f_404 = v3f_403.s0 * 1.525972E-5F; f_405 = v3f_403.s1 * 1.525972E-5F; f_406 = v3f_403.s2 * 1.525972E-5F; v3f_407 = (float3)(f_404, f_405, f_406); f_408 = v3f_399.s0 * v3f_407.s0; f_409 = v3f_399.s1 * v3f_407.s1; f_410 = v3f_399.s2 * v3f_407.s2; v3f_411 = (float3)(f_408, f_409, f_410); return v3f_411; } // kernel #pragma OPENCL EXTENSION cl_khr_fp64 : enable #pragma OPENCL EXTENSION cl_khr_int64_base_atomics : enable __kernel void raycast(__global uchar *_heap_base, ulong _frame_base, __constant uchar *_constant_region, __local uchar *_local_region, __global int *_atomics) { long l_50, l_49, l_48; ulong ul_5, ul_53, ul_52, ul_7, ul_6, ul_54, ul_1, ul_0, ul_3, ul_51, ul_2; float f_15, f_14, f_40, f_37, f_39, f_38, f_33, f_35, f_34, f_29, f_31, f_30, f_25, f_27, f_26, f_21, f_20, f_16, f_19; float3 v3f_18, v3f_4, v3f_13, v3f_32, v3f_41, v3f_28, v3f_22, v3f_23, v3f_24; float4 v4f_12; int i_17, i_47, i_9, i_10, i_42, i_8, i_45, i_46, i_11, i_43, i_44, i_36, i_57, i_58, i_55, i_56; __global ulong *_frame = (__global ulong *) &_heap_base[_frame_base]; // BLOCK 0 ul_0 = (ulong) _frame[3]; ul_1 = (ulong) _frame[4]; ul_2 = (ulong) _frame[5]; ul_3 = (ulong) _frame[6]; v3f_4 = vload3(0, (__global float *) ul_3); ul_5 = (ulong) _frame[7]; ul_6 = ul_0 + 32L; ul_7 = *((__global ulong *) ul_6); i_8 = get_global_id(1); // BLOCK 1 MERGES [0 10 ] i_9 = i_8; for(;i_9 < 240;) { // BLOCK 2 i_10 = get_global_id(0); // BLOCK 3 MERGES [2 9 ] i_11 = i_10; for(;i_11 < 320;) { // BLOCK 4 v4f_12 = uk_ac_manchester_tornado_api_collections_graphics_GraphicsMath_raycastPoint(_heap_base, _frame_base, _constant_region, _local_region, _atomics, ul_2, v3f_4, i_11, i_9, ul_5, 0.4F, 4.0F, 0.01875F, 0.075F); f_14 = -2.0F; f_15 = 0.0F; f_16 = 0.0F; v3f_13 = (float3)(f_14, f_15, f_16); i_17 = isless(0.0F, v4f_12.s3); if(i_17 == 1) { // BLOCK 5 f_25 = v4f_12.s0; f_26 = v4f_12.s1; f_27 = v4f_12.s2; v3f_24 = (float3)(f_25, f_26, f_27); v3f_28 = uk_ac_manchester_tornado_api_collections_types_VolumeOps_grad(_heap_base, _frame_base, _constant_region, _local_region, _atomics, ul_2, v3f_4, v3f_24); f_29 = v3f_28.s0 * v3f_28.s0; f_30 = v3f_28.s1 * v3f_28.s1; f_31 = v3f_28.s2 * v3f_28.s2; v3f_32 = (float3)(f_29, f_30, f_31); f_33 = v3f_32.s0 + v3f_32.s1; f_34 = f_33 + v3f_32.s2; f_35 = sqrt(f_34); i_36 = isequal(f_35, 0.0F); if(i_36 == 1) { // BLOCK 6 v3f_22 = v3f_13; v3f_23 = v3f_24; } // B6 else { // BLOCK 7 f_37 = 1.0F / f_35; f_38 = f_37 * v3f_28.s0; f_39 = v3f_28.s1 * f_37; f_40 = v3f_28.s2 * f_37; v3f_41 = (float3)(f_38, f_39, f_40); v3f_22 = v3f_41; v3f_23 = v3f_24; } // B7 } // B5 else { // BLOCK 8 f_19 = 0.0F; f_20 = 0.0F; f_21 = 0.0F; v3f_18 = (float3)(f_19, f_20, f_21); v3f_22 = v3f_13; v3f_23 = v3f_18; } // B8 // BLOCK 9 MERGES [7 8 6 ] i_42 = i_9 << 8; i_43 = i_9 << 6; i_44 = i_42 + i_43; i_45 = i_44 + i_11; i_46 = i_45 << 1; i_47 = i_46 + i_45; l_48 = (long) i_47; l_49 = l_48 << 2; l_50 = l_49 + 24L; ul_51 = ul_7 + l_50; vstore3(v3f_23, 0, (__global float *) ul_51); ul_52 = ul_1 + 32L; ul_53 = *((__global ulong *) ul_52); ul_54 = ul_53 + l_50; vstore3(v3f_22, 0, (__global float *) ul_54); i_55 = get_global_size(0); i_56 = i_55 + i_11; i_11 = i_56; } // B9 // BLOCK 10 i_57 = get_global_size(1); i_58 = i_57 + i_9; i_9 = i_58; } // B10 // BLOCK 11 return; } // kernel #pragma OPENCL EXTENSION cl_khr_fp64 : enable #pragma OPENCL EXTENSION cl_khr_int64_base_atomics : enable __kernel void renderTrack(__global uchar *_heap_base, ulong _frame_base, __constant uchar *_constant_region, __local uchar *_local_region, __global int *_atomics) { long l_59, l_58, l_15, l_14, l_13; ulong ul_7, ul_6, ul_60, ul_1, ul_49, ul_0, ul_16, ul_48; char3 v3c_24, v3c_40, v3c_28, v3c_44, v3c_32, v3c_19, v3c_36, v3c_23; int i_50, i_47, i_53, i_54, i_51, i_52, i_41, i_42, i_39, i_45, i_46, i_43, i_33, i_34, i_31, i_37, i_38, i_35, i_25, i_26, i_29, i_30, i_27, i_18, i_21, i_22, i_20, i_9, i_10, i_8, i_11, i_12, i_2, i_63, i_64, i_5, i_3, i_4, i_57, i_55, i_56, i_61, i_62; float8 v8f_17; __global ulong *_frame = (__global ulong *) &_heap_base[_frame_base]; // BLOCK 0 ul_0 = (ulong) _frame[3]; ul_1 = (ulong) _frame[4]; i_2 = get_global_id(1); // BLOCK 1 MERGES [0 13 ] i_3 = i_2; for(;i_3 < 240;) { // BLOCK 2 i_4 = get_global_id(0); // BLOCK 3 MERGES [2 12 ] i_5 = i_4; for(;i_5 < 320;) { // BLOCK 4 ul_6 = ul_1 + 32L; ul_7 = *((__global ulong *) ul_6); i_8 = i_5 << 3; i_9 = i_3 << 11; i_10 = i_3 << 9; i_11 = i_9 + i_10; i_12 = i_8 + i_11; l_13 = (long) i_12; l_14 = l_13 << 2; l_15 = l_14 + 24L; ul_16 = ul_7 + l_15; v8f_17 = vload8(0, (__global float *) ul_16); i_18 = isnan(v8f_17.s7)? 0 : (int) v8f_17.s7; switch(i_18) { case -5: // BLOCK 5 i_25 = -1; i_26 = -1; i_27 = 0; v3c_24 = (char3)(i_25, i_26, i_27); v3c_23 = v3c_24; break; case -4: // BLOCK 6 i_37 = 0; i_38 = 0; i_39 = -1; v3c_36 = (char3)(i_37, i_38, i_39); v3c_23 = v3c_36; break; case -3: // BLOCK 7 i_41 = 0; i_42 = -1; i_43 = 0; v3c_40 = (char3)(i_41, i_42, i_43); v3c_23 = v3c_40; break; case -2: // BLOCK 8 i_29 = -1; i_30 = 0; i_31 = 0; v3c_28 = (char3)(i_29, i_30, i_31); v3c_23 = v3c_28; break; case -1: // BLOCK 9 i_33 = 0; i_34 = 0; i_35 = 0; v3c_32 = (char3)(i_33, i_34, i_35); v3c_23 = v3c_32; break; default: // BLOCK 10 i_20 = -1; i_21 = -128; i_22 = -128; v3c_19 = (char3)(i_20, i_21, i_22); v3c_23 = v3c_19; break; // BLOCK 11 i_45 = -128; i_46 = -128; i_47 = -128; v3c_44 = (char3)(i_45, i_46, i_47); v3c_23 = v3c_44; break; } // B11 // BLOCK 12 MERGES [10 5 6 7 8 9 11 ] ul_48 = ul_0 + 32L; ul_49 = *((__global ulong *) ul_48); i_50 = i_5 << 1; i_51 = i_50 + i_5; i_52 = i_3 << 1; i_53 = i_52 + i_3; i_54 = i_53 << 8; i_55 = i_53 << 6; i_56 = i_54 + i_55; i_57 = i_51 + i_56; l_58 = (long) i_57; l_59 = l_58 + 24L; ul_60 = ul_49 + l_59; vstore3(v3c_23, 0, (__global char *) ul_60); i_61 = get_global_size(0); i_62 = i_61 + i_5; i_5 = i_62; } // B12 // BLOCK 13 i_63 = get_global_size(1); i_64 = i_63 + i_3; i_3 = i_64; } // B13 // BLOCK 14 return; } // kernel #pragma OPENCL EXTENSION cl_khr_fp64 : enable #pragma OPENCL EXTENSION cl_khr_int64_base_atomics : enable float4 uk_ac_manchester_tornado_api_collections_graphics_GraphicsMath_raycastPoint(__global uchar *_heap_base, ulong _frame_base, __constant uchar *_constant_region, __local uchar *_local_region, __global int *_atomics, ulong volume, float3 dim, int x, int y, ulong view, float nearPlane, float farPlane, float smallStep, float largeStep) { long l_314, l_313, l_312, l_191, l_190, l_179, l_371, l_178, l_370, l_369, l_180, l_363, l_298, l_362, l_297, l_296, l_238, l_237, l_236, l_364, l_354, l_353, l_352, l_231, l_230, l_229, l_219, l_347, l_346, l_345, l_159, l_158, l_157, l_221, l_220, l_214, l_213, l_212, l_331, l_333, l_332, l_192, l_199, l_198, l_326, l_197, l_325, l_324; short2 v2s_356, v2s_194, v2s_328, v2s_201, v2s_233, v2s_300, v2s_240, v2s_366, v2s_335, v2s_373, v2s_216, v2s_182, v2s_316, v2s_349, v2s_161, v2s_223; ulong ul_215, ul_27, ul_348, ul_222, ul_160, ul_355, ul_135, ul_327, ul_134, ul_9, ul_200, ul_11, ul_10, ul_334, ul_117, ul_181, ul_372, ul_56, ul_315, ul_58, ul_60, ul_62, ul_193, ul_39, ul_105, ul_232, ul_299, ul_365, ul_111, ul_239; float f_269, f_15, f_271, f_14, f_270, f_265, f_8, f_264, f_267, f_266, f_261, f_4, f_260, f_7, f_263, f_6, f_262, f_1, f_256, f_3, f_259, f_2, f_253, f_252, f_255, f_254, f_248, f_251, f_250, f_245, f_244, f_247, f_246, f_241, f_243, f_242, f_234, f_225, f_224, f_226, f_217, f_77, f_79, f_78, f_73, f_329, f_75, f_74, f_69, f_68, f_71, f_70, f_67, f_66, f_61, f_317, f_63, f_319, f_318, f_57, f_59, f_53, f_52, f_54, f_49, f_50, f_45, f_301, f_44, f_47, f_46, f_43, f_42, f_37, f_38, f_33, f_32, f_35, f_34, f_31, f_30, f_25, f_26, f_21, f_277, f_20, f_276, f_23, f_22, f_278, f_17, f_273, f_16, f_272, f_18, f_274, f_399, f_398, f_393, f_392, f_394, f_133, f_389, f_132, f_388, f_391, f_390, f_129, f_385, f_128, f_384, f_131, f_386, f_125, f_381, f_124, f_380, f_127, f_126, f_121, f_377, f_120, f_376, f_379, f_122, f_378, f_116, f_119, f_375, f_374, f_113, f_115, f_114, f_109, f_108, f_367, f_110, f_107, f_101, f_357, f_100, f_359, f_102, f_358, f_97, f_96, f_98, f_93, f_92, f_94, f_350, f_89, f_91, f_90, f_85, f_340, f_87, f_86, f_81, f_337, f_336, f_83, f_339, f_82, f_338, f_205, f_204, f_206, f_203, f_202, f_195, f_185, f_184, f_183, f_162, f_400; int3 v3i_305, v3i_148, v3i_163, v3i_141, v3i_175, v3i_287, v3i_140, v3i_171, v3i_283, v3i_309, v3i_167; float4 v4f_397, v4f_0, v4f_64, v4f_40, v4f_12, v4f_28; float3 v3f_36, v3f_29, v3f_95, v3f_279, v3f_24, v3f_88, v3f_51, v3f_48, v3f_41, v3f_103, v3f_104, v3f_65, v3f_257, v3f_130, v3f_258, v3f_123, v3f_55, v3f_19, v3f_275, v3f_84, v3f_13, v3f_80, v3f_395, v3f_76, v3f_268, v3f_396, v3f_5, v3f_72, v3f_136; int i_112, i_368, i_118, i_361, i_106, i_360, i_235, i_351, i_99, i_227, i_228, i_218, i_343, i_344, i_145, i_146, i_143, i_144, i_149, i_150, i_147, i_137, i_138, i_142, i_139, i_383, i_387, i_249, i_382, i_177, i_306, i_303, i_176, i_304, i_310, i_307, i_308, i_169, i_170, i_295, i_168, i_173, i_174, i_302, i_172, i_289, i_290, i_288, i_165, i_293, i_166, i_294, i_291, i_164, i_292, i_153, i_281, i_154, i_282, i_151, i_152, i_280, i_285, i_286, i_155, i_156, i_284, i_209, i_210, i_207, i_208, i_341, i_342, i_211, i_330, i_321, i_322, i_320, i_323, i_196, i_186, i_311, i_189, i_187, i_188; // BLOCK 0 f_1 = 0.0F; f_2 = 0.0F; f_3 = 0.0F; f_4 = 0.0F; v4f_0 = (float4)(f_1, f_2, f_3, f_4); f_6 = 1.0F; f_7 = 1.0F; f_8 = 1.0F; v3f_5 = (float3)(f_6, f_7, f_8); ul_9 = view + 24L; ul_10 = *((__global ulong *) ul_9); ul_11 = ul_10 + 24L; v4f_12 = vload4(0, (__global float *) ul_11); f_14 = v4f_12.s0; f_15 = v4f_12.s1; f_16 = v4f_12.s2; v3f_13 = (float3)(f_14, f_15, f_16); f_17 = (float) x; f_18 = (float) y; f_20 = 1.0F; v3f_19 = (float3)(f_17, f_18, f_20); f_21 = v3f_13.s0 * v3f_19.s0; f_22 = v3f_13.s1 * v3f_19.s1; f_23 = v3f_13.s2 * v3f_19.s2; v3f_24 = (float3)(f_21, f_22, f_23); f_25 = v3f_24.s0 + v3f_24.s1; f_26 = f_25 + v3f_24.s2; ul_27 = ul_10 + 40L; v4f_28 = vload4(0, (__global float *) ul_27); f_30 = v4f_28.s0; f_31 = v4f_28.s1; f_32 = v4f_28.s2; v3f_29 = (float3)(f_30, f_31, f_32); f_33 = v3f_29.s0 * v3f_19.s0; f_34 = v3f_29.s1 * v3f_19.s1; f_35 = v3f_29.s2 * v3f_19.s2; v3f_36 = (float3)(f_33, f_34, f_35); f_37 = v3f_36.s0 + v3f_36.s1; f_38 = f_37 + v3f_36.s2; ul_39 = ul_10 + 56L; v4f_40 = vload4(0, (__global float *) ul_39); f_42 = v4f_40.s0; f_43 = v4f_40.s1; f_44 = v4f_40.s2; v3f_41 = (float3)(f_42, f_43, f_44); f_45 = v3f_41.s0 * v3f_19.s0; f_46 = v3f_41.s1 * v3f_19.s1; f_47 = v3f_41.s2 * v3f_19.s2; v3f_48 = (float3)(f_45, f_46, f_47); f_49 = v3f_48.s0 + v3f_48.s1; f_50 = f_49 + v3f_48.s2; v3f_51 = (float3)(f_26, f_38, f_50); f_52 = v3f_5.s0 / v3f_51.s0; f_53 = v3f_5.s1 / v3f_51.s1; f_54 = v3f_5.s2 / v3f_51.s2; v3f_55 = (float3)(f_52, f_53, f_54); ul_56 = ul_10 + 36L; f_57 = *((__global float *) ul_56); ul_58 = ul_10 + 52L; f_59 = *((__global float *) ul_58); ul_60 = ul_10 + 68L; f_61 = *((__global float *) ul_60); ul_62 = ul_10 + 84L; f_63 = *((__global float *) ul_62); v4f_64 = (float4)(f_57, f_59, f_61, f_63); f_66 = v4f_64.s0; f_67 = v4f_64.s1; f_68 = v4f_64.s2; v3f_65 = (float3)(f_66, f_67, f_68); f_69 = dim.s0 - v3f_65.s0; f_70 = dim.s1 - v3f_65.s1; f_71 = dim.s2 - v3f_65.s2; v3f_72 = (float3)(f_69, f_70, f_71); f_73 = v3f_55.s0 * v3f_72.s0; f_74 = v3f_55.s1 * v3f_72.s1; f_75 = v3f_55.s2 * v3f_72.s2; v3f_76 = (float3)(f_73, f_74, f_75); f_77 = v3f_55.s0 * v3f_65.s0; f_78 = v3f_55.s1 * v3f_65.s1; f_79 = v3f_55.s2 * v3f_65.s2; v3f_80 = (float3)(f_77, f_78, f_79); f_81 = v3f_80.s0 * -1.0F; f_82 = v3f_80.s1 * -1.0F; f_83 = v3f_80.s2 * -1.0F; v3f_84 = (float3)(f_81, f_82, f_83); f_85 = fmin(v3f_76.s0, v3f_84.s0); f_86 = fmin(v3f_76.s1, v3f_84.s1); f_87 = fmin(v3f_76.s2, v3f_84.s2); v3f_88 = (float3)(f_85, f_86, f_87); f_89 = fmax(v3f_88.s1, v3f_88.s2); f_90 = fmax(v3f_88.s0, f_89); f_91 = fmax(f_90, nearPlane); f_92 = fmax(v3f_76.s0, v3f_84.s0); f_93 = fmax(v3f_76.s1, v3f_84.s1); f_94 = fmax(v3f_76.s2, v3f_84.s2); v3f_95 = (float3)(f_92, f_93, f_94); f_96 = fmin(v3f_95.s1, v3f_95.s2); f_97 = fmin(v3f_95.s0, f_96); f_98 = fmin(f_97, farPlane); i_99 = isless(f_91, f_98); if(i_99 == 1) { // BLOCK 1 f_100 = f_91 * v3f_51.s0; f_101 = f_91 * v3f_51.s1; f_102 = f_91 * v3f_51.s2; v3f_103 = (float3)(f_100, f_101, f_102); v3f_104 = v3f_103 + v3f_65; ul_105 = volume + 24L; i_106 = *((__global int *) ul_105); f_107 = (float) i_106; f_108 = v3f_104.s0 * f_107; f_109 = f_108 / dim.s0; f_110 = f_109 - 0.5F; ul_111 = volume + 20L; i_112 = *((__global int *) ul_111); f_113 = (float) i_112; f_114 = v3f_104.s1 * f_113; f_115 = f_114 / dim.s1; f_116 = f_115 - 0.5F; ul_117 = volume + 28L; i_118 = *((__global int *) ul_117); f_119 = (float) i_118; f_120 = v3f_104.s2 * f_119; f_121 = f_120 / dim.s2; f_122 = f_121 - 0.5F; v3f_123 = (float3)(f_110, f_116, f_122); f_124 = floor(v3f_123.s0); f_125 = v3f_123.s0 - f_124; f_126 = floor(v3f_123.s1); f_127 = v3f_123.s1 - f_126; f_128 = floor(v3f_123.s2); f_129 = v3f_123.s2 - f_128; v3f_130 = (float3)(f_125, f_127, f_129); f_131 = 1.0F - v3f_130.s2; f_132 = 1.0F - v3f_130.s1; f_133 = 1.0F - v3f_130.s0; ul_134 = volume + 32L; ul_135 = *((__global ulong *) ul_134); v3f_136 = (float3)(f_124, f_126, f_128); i_137 = isnan(v3f_136.s0)? 0 : (int) v3f_136.s0; i_138 = isnan(v3f_136.s1)? 0 : (int) v3f_136.s1; i_139 = isnan(v3f_136.s2)? 0 : (int) v3f_136.s2; v3i_140 = (int3)(i_137, i_138, i_139); i_142 = 0; i_143 = 0; i_144 = 0; v3i_141 = (int3)(i_142, i_143, i_144); i_145 = max(v3i_140.s0, v3i_141.s0); i_146 = max(v3i_140.s1, v3i_141.s1); i_147 = max(v3i_140.s2, v3i_141.s2); v3i_148 = (int3)(i_145, i_146, i_147); i_149 = v3i_148.s2 * i_106; i_150 = i_149 * i_112; i_151 = i_150 << 1; i_152 = v3i_148.s1 << 1; i_153 = i_152 * i_106; i_154 = i_151 + i_153; i_155 = v3i_148.s0 << 1; i_156 = i_154 + i_155; l_157 = (long) i_156; l_158 = l_157 << 1; l_159 = l_158 + 24L; ul_160 = ul_135 + l_159; v2s_161 = vload2(0, (__global short *) ul_160); f_162 = (float) v2s_161.s0; v3i_163 = (int3)(i_106, i_112, i_118); i_164 = v3i_163.s0 + -1; i_165 = v3i_163.s1 + -1; i_166 = v3i_163.s2 + -1; v3i_167 = (int3)(i_164, i_165, i_166); i_168 = v3i_140.s0 + 1; i_169 = v3i_140.s1 + 1; i_170 = v3i_140.s2 + 1; v3i_171 = (int3)(i_168, i_169, i_170); i_172 = min(v3i_167.s0, v3i_171.s0); i_173 = min(v3i_167.s1, v3i_171.s1); i_174 = min(v3i_167.s2, v3i_171.s2); v3i_175 = (int3)(i_172, i_173, i_174); i_176 = v3i_175.s0 << 1; i_177 = i_176 + i_154; l_178 = (long) i_177; l_179 = l_178 << 1; l_180 = l_179 + 24L; ul_181 = ul_135 + l_180; v2s_182 = vload2(0, (__global short *) ul_181); f_183 = (float) v2s_182.s0; f_184 = f_183 * v3f_130.s0; f_185 = fma(f_133, f_162, f_184); i_186 = v3i_175.s1 << 1; i_187 = i_186 * i_106; i_188 = i_187 + i_151; i_189 = i_188 + i_155; l_190 = (long) i_189; l_191 = l_190 << 1; l_192 = l_191 + 24L; ul_193 = ul_135 + l_192; v2s_194 = vload2(0, (__global short *) ul_193); f_195 = (float) v2s_194.s0; i_196 = i_176 + i_188; l_197 = (long) i_196; l_198 = l_197 << 1; l_199 = l_198 + 24L; ul_200 = ul_135 + l_199; v2s_201 = vload2(0, (__global short *) ul_200); f_202 = (float) v2s_201.s0; f_203 = f_202 * v3f_130.s0; f_204 = fma(f_133, f_195, f_203); f_205 = f_204 * v3f_130.s1; f_206 = fma(f_132, f_185, f_205); i_207 = v3i_175.s2 * i_106; i_208 = i_207 * i_112; i_209 = i_208 << 1; i_210 = i_209 + i_153; i_211 = i_210 + i_155; l_212 = (long) i_211; l_213 = l_212 << 1; l_214 = l_213 + 24L; ul_215 = ul_135 + l_214; v2s_216 = vload2(0, (__global short *) ul_215); f_217 = (float) v2s_216.s0; i_218 = i_176 + i_210; l_219 = (long) i_218; l_220 = l_219 << 1; l_221 = l_220 + 24L; ul_222 = ul_135 + l_221; v2s_223 = vload2(0, (__global short *) ul_222); f_224 = (float) v2s_223.s0; f_225 = f_224 * v3f_130.s0; f_226 = fma(f_133, f_217, f_225); i_227 = i_187 + i_209; i_228 = i_227 + i_155; l_229 = (long) i_228; l_230 = l_229 << 1; l_231 = l_230 + 24L; ul_232 = ul_135 + l_231; v2s_233 = vload2(0, (__global short *) ul_232); f_234 = (float) v2s_233.s0; i_235 = i_176 + i_227; l_236 = (long) i_235; l_237 = l_236 << 1; l_238 = l_237 + 24L; ul_239 = ul_135 + l_238; v2s_240 = vload2(0, (__global short *) ul_239); f_241 = (float) v2s_240.s0; f_242 = f_241 * v3f_130.s0; f_243 = fma(f_133, f_234, f_242); f_244 = f_243 * v3f_130.s1; f_245 = fma(f_132, f_226, f_244); f_246 = f_245 * v3f_130.s2; f_247 = fma(f_131, f_206, f_246); f_248 = f_247 * 3.051944E-5F; i_249 = isless(0.0F, f_248); if(i_249 == 1) { // BLOCK 2 // BLOCK 3 MERGES [2 9 ] f_250 = f_91; f_251 = largeStep; f_252 = f_248; f_253 = 0.0F; for(;isless(f_250, f_98) == 1;) { // BLOCK 4 f_254 = f_250 * v3f_51.s0; f_255 = f_250 * v3f_51.s1; f_256 = f_250 * v3f_51.s2; v3f_257 = (float3)(f_254, f_255, f_256); v3f_258 = v3f_257 + v3f_65; f_259 = v3f_258.s0 * f_107; f_260 = f_259 / dim.s0; f_261 = f_260 - 0.5F; f_262 = v3f_258.s1 * f_113; f_263 = f_262 / dim.s1; f_264 = f_263 - 0.5F; f_265 = v3f_258.s2 * f_119; f_266 = f_265 / dim.s2; f_267 = f_266 - 0.5F; v3f_268 = (float3)(f_261, f_264, f_267); f_269 = floor(v3f_268.s0); f_270 = v3f_268.s0 - f_269; f_271 = floor(v3f_268.s1); f_272 = v3f_268.s1 - f_271; f_273 = floor(v3f_268.s2); f_274 = v3f_268.s2 - f_273; v3f_275 = (float3)(f_270, f_272, f_274); f_276 = 1.0F - v3f_275.s2; f_277 = 1.0F - v3f_275.s1; f_278 = 1.0F - v3f_275.s0; v3f_279 = (float3)(f_269, f_271, f_273); i_280 = isnan(v3f_279.s0)? 0 : (int) v3f_279.s0; i_281 = isnan(v3f_279.s1)? 0 : (int) v3f_279.s1; i_282 = isnan(v3f_279.s2)? 0 : (int) v3f_279.s2; v3i_283 = (int3)(i_280, i_281, i_282); i_284 = max(v3i_283.s0, v3i_141.s0); i_285 = max(v3i_283.s1, v3i_141.s1); i_286 = max(v3i_283.s2, v3i_141.s2); v3i_287 = (int3)(i_284, i_285, i_286); i_288 = i_106 * i_112; i_289 = v3i_287.s2 * i_288; i_290 = i_289 << 1; i_291 = v3i_287.s1 << 1; i_292 = i_291 * i_106; i_293 = i_290 + i_292; i_294 = v3i_287.s0 << 1; i_295 = i_293 + i_294; l_296 = (long) i_295; l_297 = l_296 << 1; l_298 = l_297 + 24L; ul_299 = ul_135 + l_298; v2s_300 = vload2(0, (__global short *) ul_299); f_301 = (float) v2s_300.s0; i_302 = v3i_283.s0 + 1; i_303 = v3i_283.s1 + 1; i_304 = v3i_283.s2 + 1; v3i_305 = (int3)(i_302, i_303, i_304); i_306 = min(v3i_167.s0, v3i_305.s0); i_307 = min(v3i_167.s1, v3i_305.s1); i_308 = min(v3i_167.s2, v3i_305.s2); v3i_309 = (int3)(i_306, i_307, i_308); i_310 = v3i_309.s0 << 1; i_311 = i_310 + i_293; l_312 = (long) i_311; l_313 = l_312 << 1; l_314 = l_313 + 24L; ul_315 = ul_135 + l_314; v2s_316 = vload2(0, (__global short *) ul_315); f_317 = (float) v2s_316.s0; f_318 = f_317 * v3f_275.s0; f_319 = fma(f_278, f_301, f_318); i_320 = v3i_309.s1 << 1; i_321 = i_320 * i_106; i_322 = i_321 + i_290; i_323 = i_322 + i_294; l_324 = (long) i_323; l_325 = l_324 << 1; l_326 = l_325 + 24L; ul_327 = ul_135 + l_326; v2s_328 = vload2(0, (__global short *) ul_327); f_329 = (float) v2s_328.s0; i_330 = i_310 + i_322; l_331 = (long) i_330; l_332 = l_331 << 1; l_333 = l_332 + 24L; ul_334 = ul_135 + l_333; v2s_335 = vload2(0, (__global short *) ul_334); f_336 = (float) v2s_335.s0; f_337 = f_336 * v3f_275.s0; f_338 = fma(f_278, f_329, f_337); f_339 = f_338 * v3f_275.s1; f_340 = fma(f_277, f_319, f_339); i_341 = v3i_309.s2 * i_288; i_342 = i_341 << 1; i_343 = i_342 + i_292; i_344 = i_343 + i_294; l_345 = (long) i_344; l_346 = l_345 << 1; l_347 = l_346 + 24L; ul_348 = ul_135 + l_347; v2s_349 = vload2(0, (__global short *) ul_348); f_350 = (float) v2s_349.s0; i_351 = i_310 + i_343; l_352 = (long) i_351; l_353 = l_352 << 1; l_354 = l_353 + 24L; ul_355 = ul_135 + l_354; v2s_356 = vload2(0, (__global short *) ul_355); f_357 = (float) v2s_356.s0; f_358 = f_357 * v3f_275.s0; f_359 = fma(f_278, f_350, f_358); i_360 = i_321 + i_342; i_361 = i_360 + i_294; l_362 = (long) i_361; l_363 = l_362 << 1; l_364 = l_363 + 24L; ul_365 = ul_135 + l_364; v2s_366 = vload2(0, (__global short *) ul_365); f_367 = (float) v2s_366.s0; i_368 = i_310 + i_360; l_369 = (long) i_368; l_370 = l_369 << 1; l_371 = l_370 + 24L; ul_372 = ul_135 + l_371; v2s_373 = vload2(0, (__global short *) ul_372); f_374 = (float) v2s_373.s0; f_375 = f_374 * v3f_275.s0; f_376 = fma(f_278, f_367, f_375); f_377 = f_376 * v3f_275.s1; f_378 = fma(f_277, f_359, f_377); f_379 = f_378 * v3f_275.s2; f_380 = fma(f_276, f_340, f_379); f_381 = f_380 * 3.051944E-5F; i_382 = isless(f_381, 0.0F); if(i_382 == 1) { // BLOCK 5 f_386 = f_381; break; } // B5 else { // BLOCK 6 i_383 = isless(f_381, 0.8F); if(i_383 == 1) { // BLOCK 7 f_384 = smallStep; } // B7 else { // BLOCK 8 f_384 = f_251; } // B8 // BLOCK 9 MERGES [8 7 ] f_385 = f_250 + f_384; f_250 = f_385; f_251 = f_384; f_252 = f_381; f_253 = f_381; } // B9 // BLOCK 10 f_386 = f_253; } // B10 // BLOCK 11 MERGES [10 5 ] f_386 = f_381; i_387 = isless(f_386, 0.0F); if(i_387 == 1) { // BLOCK 12 f_388 = f_251 * f_386; f_389 = f_252 - f_386; f_390 = f_388 / f_389; f_391 = f_390 + f_250; f_392 = f_391 * v3f_51.s0; f_393 = f_391 * v3f_51.s1; f_394 = f_391 * v3f_51.s2; v3f_395 = (float3)(f_392, f_393, f_394); v3f_396 = v3f_395 + v3f_65; f_398 = v3f_396.s0; f_399 = v3f_396.s1; f_400 = v3f_396.s2; v4f_397 = (float4)(f_398, f_399, f_400, f_391); return v4f_397; } // B12 else { // BLOCK 13 return v4f_0; } // B13 } // B2 else { // BLOCK 14 return v4f_0; } // B14 } // B1 else { // BLOCK 15 return v4f_0; } // B15 } // kernel #pragma OPENCL EXTENSION cl_khr_fp64 : enable #pragma OPENCL EXTENSION cl_khr_int64_base_atomics : enable float3 uk_ac_manchester_tornado_api_collections_types_VolumeOps_grad(__global uchar *_heap_base, ulong _frame_base, __constant uchar *_constant_region, __local uchar *_local_region, __global int *_atomics, ulong volume, float3 dim, float3 point) { long l_251, l_379, l_250, l_378, l_120, l_127, l_126, l_125, l_252, l_380, l_369, l_368, l_119, l_118, l_106, l_105, l_361, l_104, l_360, l_239, l_367, l_238, l_237, l_98, l_97, l_96, l_231, l_359, l_230, l_229, l_345, l_344, l_337, l_336, l_343, l_214, l_213, l_212, l_75, l_74, l_207, l_335, l_206, l_205, l_76, l_192, l_199, l_198, l_326, l_197, l_325, l_324, l_59, l_58, l_191, l_190, l_318, l_317, l_60, l_316, l_179, l_181, l_180, l_299, l_298, l_174, l_173, l_172, l_300, l_291, l_290, l_166, l_165, l_164, l_292, l_281, l_280, l_159, l_158, l_157, l_273, l_272, l_279, l_271, l_142, l_141, l_140, l_259, l_387, l_258, l_386, l_135, l_134, l_133, l_260, l_388; short2 v2s_194, v2s_328, v2s_137, v2s_201, v2s_262, v2s_390, v2s_144, v2s_209, v2s_78, v2s_275, v2s_339, v2s_216, v2s_283, v2s_347, v2s_161, v2s_100, v2s_168, v2s_233, v2s_294, v2s_108, v2s_363, v2s_176, v2s_241, v2s_302, v2s_371, v2s_183, v2s_122, v2s_320, v2s_129, v2s_62, v2s_254, v2s_382; ulong ul_215, ul_282, ul_346, ul_160, ul_99, ul_261, ul_389, ul_327, ul_6, ul_136, ul_200, ul_77, ul_12, ul_143, ul_208, ul_18, ul_274, ul_338, ul_182, ul_121, ul_61, ul_253, ul_381, ul_319, ul_1, ul_193, ul_0, ul_128, ul_293, ul_167, ul_232, ul_107, ul_362, ul_301, ul_175, ul_240, ul_370; float f_268, f_15, f_14, f_9, f_265, f_8, f_264, f_11, f_267, f_10, f_266, f_263, f_256, f_255, f_245, f_244, f_243, f_242, f_235, f_234, f_224, f_221, f_220, f_223, f_222, f_217, f_219, f_218, f_210, f_332, f_79, f_329, f_331, f_330, f_321, f_322, f_63, f_309, f_308, f_310, f_305, f_304, f_307, f_306, f_303, f_296, f_295, f_285, f_284, f_287, f_286, f_25, f_27, f_26, f_21, f_277, f_20, f_276, f_23, f_22, f_17, f_16, f_397, f_396, f_398, f_393, f_392, f_395, f_138, f_394, f_391, f_384, f_131, f_130, f_383, f_123, f_373, f_372, f_375, f_374, f_113, f_112, f_109, f_365, f_364, f_111, f_110, f_101, f_353, f_352, f_349, f_348, f_351, f_350, f_85, f_341, f_340, f_81, f_80, f_83, f_82, f_203, f_202, f_195, f_185, f_184, f_187, f_186, f_177, f_169, f_170, f_162, f_409, f_408, f_410, f_149, f_405, f_148, f_404, f_151, f_150, f_406, f_145, f_401, f_400, f_147, f_146, f_402; int3 v3i_2, v3i_36, v3i_51, v3i_67, v3i_93, v3i_32, v3i_47, v3i_89, v3i_43, v3i_55, v3i_71; float3 v3f_403, v3f_84, v3f_399, v3f_411, v3f_28, v3f_407, v3f_24; int i_246, i_236, i_225, i_226, i_227, i_228, i_278, i_19, i_7, i_13, i_269, i_270, i_257, i_5, i_3, i_4, i_249, i_247, i_248, i_178, i_171, i_163, i_153, i_154, i_152, i_155, i_156, i_211, i_204, i_196, i_189, i_188, i_114, i_117, i_115, i_116, i_103, i_366, i_354, i_95, i_357, i_102, i_358, i_355, i_356, i_90, i_87, i_88, i_94, i_91, i_92, i_139, i_385, i_132, i_377, i_376, i_124, i_49, i_50, i_48, i_53, i_54, i_52, i_41, i_297, i_42, i_39, i_40, i_45, i_46, i_44, i_33, i_289, i_34, i_31, i_288, i_37, i_38, i_35, i_29, i_30, i_86, i_342, i_73, i_72, i_333, i_334, i_65, i_66, i_64, i_69, i_70, i_323, i_68, i_57, i_313, i_314, i_311, i_56, i_312, i_315; // BLOCK 0 ul_0 = volume + 32L; ul_1 = *((__global ulong *) ul_0); i_3 = 0; i_4 = 0; i_5 = 0; v3i_2 = (int3)(i_3, i_4, i_5); ul_6 = volume + 24L; i_7 = *((__global int *) ul_6); f_8 = (float) i_7; f_9 = point.s0 * f_8; f_10 = f_9 / dim.s0; f_11 = f_10 - 0.5F; ul_12 = volume + 20L; i_13 = *((__global int *) ul_12); f_14 = (float) i_13; f_15 = point.s1 * f_14; f_16 = f_15 / dim.s1; f_17 = f_16 - 0.5F; ul_18 = volume + 28L; i_19 = *((__global int *) ul_18); f_20 = (float) i_19; f_21 = point.s2 * f_20; f_22 = f_21 / dim.s2; f_23 = f_22 - 0.5F; v3f_24 = (float3)(f_11, f_17, f_23); f_25 = floor(v3f_24.s0); f_26 = floor(v3f_24.s1); f_27 = floor(v3f_24.s2); v3f_28 = (float3)(f_25, f_26, f_27); i_29 = isnan(v3f_28.s0)? 0 : (int) v3f_28.s0; i_30 = isnan(v3f_28.s1)? 0 : (int) v3f_28.s1; i_31 = isnan(v3f_28.s2)? 0 : (int) v3f_28.s2; v3i_32 = (int3)(i_29, i_30, i_31); i_33 = max(v3i_2.s0, v3i_32.s0); i_34 = max(v3i_2.s1, v3i_32.s1); i_35 = max(v3i_2.s2, v3i_32.s2); v3i_36 = (int3)(i_33, i_34, i_35); i_37 = v3i_36.s2 * i_7; i_38 = i_37 * i_13; i_39 = i_38 << 1; i_40 = v3i_36.s1 << 1; i_41 = i_40 * i_7; i_42 = i_39 + i_41; v3i_43 = (int3)(i_7, i_13, i_19); i_44 = v3i_43.s0 + -1; i_45 = v3i_43.s1 + -1; i_46 = v3i_43.s2 + -1; v3i_47 = (int3)(i_44, i_45, i_46); i_48 = v3i_32.s0 + 1; i_49 = v3i_32.s1 + 1; i_50 = v3i_32.s2 + 1; v3i_51 = (int3)(i_48, i_49, i_50); i_52 = min(v3i_47.s0, v3i_51.s0); i_53 = min(v3i_47.s1, v3i_51.s1); i_54 = min(v3i_47.s2, v3i_51.s2); v3i_55 = (int3)(i_52, i_53, i_54); i_56 = v3i_55.s0 << 1; i_57 = i_42 + i_56; l_58 = (long) i_57; l_59 = l_58 << 1; l_60 = l_59 + 24L; ul_61 = ul_1 + l_60; v2s_62 = vload2(0, (__global short *) ul_61); f_63 = (float) v2s_62.s0; i_64 = v3i_32.s0 + -1; i_65 = v3i_32.s1 + -1; i_66 = v3i_32.s2 + -1; v3i_67 = (int3)(i_64, i_65, i_66); i_68 = max(v3i_2.s0, v3i_67.s0); i_69 = max(v3i_2.s1, v3i_67.s1); i_70 = max(v3i_2.s2, v3i_67.s2); v3i_71 = (int3)(i_68, i_69, i_70); i_72 = v3i_71.s0 << 1; i_73 = i_72 + i_42; l_74 = (long) i_73; l_75 = l_74 << 1; l_76 = l_75 + 24L; ul_77 = ul_1 + l_76; v2s_78 = vload2(0, (__global short *) ul_77); f_79 = (float) v2s_78.s0; f_80 = f_63 - f_79; f_81 = v3f_24.s0 - f_25; f_82 = v3f_24.s1 - f_26; f_83 = v3f_24.s2 - f_27; v3f_84 = (float3)(f_81, f_82, f_83); f_85 = 1.0F - v3f_84.s0; i_86 = v3i_32.s0 + 2; i_87 = v3i_32.s1 + 2; i_88 = v3i_32.s2 + 2; v3i_89 = (int3)(i_86, i_87, i_88); i_90 = min(v3i_47.s0, v3i_89.s0); i_91 = min(v3i_47.s1, v3i_89.s1); i_92 = min(v3i_47.s2, v3i_89.s2); v3i_93 = (int3)(i_90, i_91, i_92); i_94 = v3i_93.s0 << 1; i_95 = i_94 + i_42; l_96 = (long) i_95; l_97 = l_96 << 1; l_98 = l_97 + 24L; ul_99 = ul_1 + l_98; v2s_100 = vload2(0, (__global short *) ul_99); f_101 = (float) v2s_100.s0; i_102 = v3i_36.s0 << 1; i_103 = i_102 + i_42; l_104 = (long) i_103; l_105 = l_104 << 1; l_106 = l_105 + 24L; ul_107 = ul_1 + l_106; v2s_108 = vload2(0, (__global short *) ul_107); f_109 = (float) v2s_108.s0; f_110 = f_101 - f_109; f_111 = f_110 * v3f_84.s0; f_112 = fma(f_80, f_85, f_111); f_113 = 1.0F - v3f_84.s1; i_114 = v3i_55.s1 << 1; i_115 = i_114 * i_7; i_116 = i_115 + i_39; i_117 = i_116 + i_56; l_118 = (long) i_117; l_119 = l_118 << 1; l_120 = l_119 + 24L; ul_121 = ul_1 + l_120; v2s_122 = vload2(0, (__global short *) ul_121); f_123 = (float) v2s_122.s0; i_124 = i_72 + i_116; l_125 = (long) i_124; l_126 = l_125 << 1; l_127 = l_126 + 24L; ul_128 = ul_1 + l_127; v2s_129 = vload2(0, (__global short *) ul_128); f_130 = (float) v2s_129.s0; f_131 = f_123 - f_130; i_132 = i_94 + i_116; l_133 = (long) i_132; l_134 = l_133 << 1; l_135 = l_134 + 24L; ul_136 = ul_1 + l_135; v2s_137 = vload2(0, (__global short *) ul_136); f_138 = (float) v2s_137.s0; i_139 = i_102 + i_116; l_140 = (long) i_139; l_141 = l_140 << 1; l_142 = l_141 + 24L; ul_143 = ul_1 + l_142; v2s_144 = vload2(0, (__global short *) ul_143); f_145 = (float) v2s_144.s0; f_146 = f_138 - f_145; f_147 = f_146 * v3f_84.s0; f_148 = fma(f_85, f_131, f_147); f_149 = f_148 * v3f_84.s1; f_150 = fma(f_112, f_113, f_149); f_151 = 1.0F - v3f_84.s2; i_152 = v3i_55.s2 * i_7; i_153 = i_152 * i_13; i_154 = i_153 << 1; i_155 = i_154 + i_41; i_156 = i_155 + i_56; l_157 = (long) i_156; l_158 = l_157 << 1; l_159 = l_158 + 24L; ul_160 = ul_1 + l_159; v2s_161 = vload2(0, (__global short *) ul_160); f_162 = (float) v2s_161.s0; i_163 = i_72 + i_155; l_164 = (long) i_163; l_165 = l_164 << 1; l_166 = l_165 + 24L; ul_167 = ul_1 + l_166; v2s_168 = vload2(0, (__global short *) ul_167); f_169 = (float) v2s_168.s0; f_170 = f_162 - f_169; i_171 = i_94 + i_155; l_172 = (long) i_171; l_173 = l_172 << 1; l_174 = l_173 + 24L; ul_175 = ul_1 + l_174; v2s_176 = vload2(0, (__global short *) ul_175); f_177 = (float) v2s_176.s0; i_178 = i_102 + i_155; l_179 = (long) i_178; l_180 = l_179 << 1; l_181 = l_180 + 24L; ul_182 = ul_1 + l_181; v2s_183 = vload2(0, (__global short *) ul_182); f_184 = (float) v2s_183.s0; f_185 = f_177 - f_184; f_186 = f_185 * v3f_84.s0; f_187 = fma(f_85, f_170, f_186); i_188 = i_115 + i_154; i_189 = i_188 + i_56; l_190 = (long) i_189; l_191 = l_190 << 1; l_192 = l_191 + 24L; ul_193 = ul_1 + l_192; v2s_194 = vload2(0, (__global short *) ul_193); f_195 = (float) v2s_194.s0; i_196 = i_72 + i_188; l_197 = (long) i_196; l_198 = l_197 << 1; l_199 = l_198 + 24L; ul_200 = ul_1 + l_199; v2s_201 = vload2(0, (__global short *) ul_200); f_202 = (float) v2s_201.s0; f_203 = f_195 - f_202; i_204 = i_94 + i_188; l_205 = (long) i_204; l_206 = l_205 << 1; l_207 = l_206 + 24L; ul_208 = ul_1 + l_207; v2s_209 = vload2(0, (__global short *) ul_208); f_210 = (float) v2s_209.s0; i_211 = i_102 + i_188; l_212 = (long) i_211; l_213 = l_212 << 1; l_214 = l_213 + 24L; ul_215 = ul_1 + l_214; v2s_216 = vload2(0, (__global short *) ul_215); f_217 = (float) v2s_216.s0; f_218 = f_210 - f_217; f_219 = f_218 * v3f_84.s0; f_220 = fma(f_85, f_203, f_219); f_221 = f_220 * v3f_84.s1; f_222 = fma(f_113, f_187, f_221); f_223 = f_222 * v3f_84.s2; f_224 = fma(f_150, f_151, f_223); i_225 = v3i_71.s1 << 1; i_226 = i_225 * i_7; i_227 = i_226 + i_39; i_228 = i_227 + i_102; l_229 = (long) i_228; l_230 = l_229 << 1; l_231 = l_230 + 24L; ul_232 = ul_1 + l_231; v2s_233 = vload2(0, (__global short *) ul_232); f_234 = (float) v2s_233.s0; f_235 = f_145 - f_234; i_236 = i_56 + i_227; l_237 = (long) i_236; l_238 = l_237 << 1; l_239 = l_238 + 24L; ul_240 = ul_1 + l_239; v2s_241 = vload2(0, (__global short *) ul_240); f_242 = (float) v2s_241.s0; f_243 = f_123 - f_242; f_244 = f_243 * v3f_84.s0; f_245 = fma(f_85, f_235, f_244); i_246 = v3i_93.s1 << 1; i_247 = i_246 * i_7; i_248 = i_247 + i_39; i_249 = i_248 + i_102; l_250 = (long) i_249; l_251 = l_250 << 1; l_252 = l_251 + 24L; ul_253 = ul_1 + l_252; v2s_254 = vload2(0, (__global short *) ul_253); f_255 = (float) v2s_254.s0; f_256 = f_255 - f_109; i_257 = i_56 + i_248; l_258 = (long) i_257; l_259 = l_258 << 1; l_260 = l_259 + 24L; ul_261 = ul_1 + l_260; v2s_262 = vload2(0, (__global short *) ul_261); f_263 = (float) v2s_262.s0; f_264 = f_263 - f_63; f_265 = f_264 * v3f_84.s0; f_266 = fma(f_85, f_256, f_265); f_267 = f_266 * v3f_84.s1; f_268 = fma(f_113, f_245, f_267); i_269 = i_154 + i_226; i_270 = i_269 + i_102; l_271 = (long) i_270; l_272 = l_271 << 1; l_273 = l_272 + 24L; ul_274 = ul_1 + l_273; v2s_275 = vload2(0, (__global short *) ul_274); f_276 = (float) v2s_275.s0; f_277 = f_217 - f_276; i_278 = i_56 + i_269; l_279 = (long) i_278; l_280 = l_279 << 1; l_281 = l_280 + 24L; ul_282 = ul_1 + l_281; v2s_283 = vload2(0, (__global short *) ul_282); f_284 = (float) v2s_283.s0; f_285 = f_195 - f_284; f_286 = f_285 * v3f_84.s0; f_287 = fma(f_85, f_277, f_286); i_288 = i_154 + i_247; i_289 = i_288 + i_102; l_290 = (long) i_289; l_291 = l_290 << 1; l_292 = l_291 + 24L; ul_293 = ul_1 + l_292; v2s_294 = vload2(0, (__global short *) ul_293); f_295 = (float) v2s_294.s0; f_296 = f_295 - f_184; i_297 = i_56 + i_288; l_298 = (long) i_297; l_299 = l_298 << 1; l_300 = l_299 + 24L; ul_301 = ul_1 + l_300; v2s_302 = vload2(0, (__global short *) ul_301); f_303 = (float) v2s_302.s0; f_304 = f_303 - f_162; f_305 = f_304 * v3f_84.s0; f_306 = fma(f_85, f_296, f_305); f_307 = f_306 * v3f_84.s1; f_308 = fma(f_113, f_287, f_307); f_309 = f_308 * v3f_84.s2; f_310 = fma(f_151, f_268, f_309); i_311 = v3i_71.s2 * i_7; i_312 = i_311 * i_13; i_313 = i_312 << 1; i_314 = i_313 + i_41; i_315 = i_314 + i_102; l_316 = (long) i_315; l_317 = l_316 << 1; l_318 = l_317 + 24L; ul_319 = ul_1 + l_318; v2s_320 = vload2(0, (__global short *) ul_319); f_321 = (float) v2s_320.s0; f_322 = f_184 - f_321; i_323 = i_56 + i_314; l_324 = (long) i_323; l_325 = l_324 << 1; l_326 = l_325 + 24L; ul_327 = ul_1 + l_326; v2s_328 = vload2(0, (__global short *) ul_327); f_329 = (float) v2s_328.s0; f_330 = f_162 - f_329; f_331 = f_330 * v3f_84.s0; f_332 = fma(f_85, f_322, f_331); i_333 = i_115 + i_313; i_334 = i_333 + i_102; l_335 = (long) i_334; l_336 = l_335 << 1; l_337 = l_336 + 24L; ul_338 = ul_1 + l_337; v2s_339 = vload2(0, (__global short *) ul_338); f_340 = (float) v2s_339.s0; f_341 = f_217 - f_340; i_342 = i_56 + i_333; l_343 = (long) i_342; l_344 = l_343 << 1; l_345 = l_344 + 24L; ul_346 = ul_1 + l_345; v2s_347 = vload2(0, (__global short *) ul_346); f_348 = (float) v2s_347.s0; f_349 = f_195 - f_348; f_350 = f_349 * v3f_84.s0; f_351 = fma(f_85, f_341, f_350); f_352 = f_351 * v3f_84.s1; f_353 = fma(f_113, f_332, f_352); i_354 = v3i_93.s2 * i_7; i_355 = i_354 * i_13; i_356 = i_355 << 1; i_357 = i_356 + i_41; i_358 = i_357 + i_102; l_359 = (long) i_358; l_360 = l_359 << 1; l_361 = l_360 + 24L; ul_362 = ul_1 + l_361; v2s_363 = vload2(0, (__global short *) ul_362); f_364 = (float) v2s_363.s0; f_365 = f_364 - f_109; i_366 = i_56 + i_357; l_367 = (long) i_366; l_368 = l_367 << 1; l_369 = l_368 + 24L; ul_370 = ul_1 + l_369; v2s_371 = vload2(0, (__global short *) ul_370); f_372 = (float) v2s_371.s0; f_373 = f_372 - f_63; f_374 = f_373 * v3f_84.s0; f_375 = fma(f_85, f_365, f_374); i_376 = i_115 + i_356; i_377 = i_376 + i_102; l_378 = (long) i_377; l_379 = l_378 << 1; l_380 = l_379 + 24L; ul_381 = ul_1 + l_380; v2s_382 = vload2(0, (__global short *) ul_381); f_383 = (float) v2s_382.s0; f_384 = f_383 - f_145; i_385 = i_56 + i_376; l_386 = (long) i_385; l_387 = l_386 << 1; l_388 = l_387 + 24L; ul_389 = ul_1 + l_388; v2s_390 = vload2(0, (__global short *) ul_389); f_391 = (float) v2s_390.s0; f_392 = f_391 - f_123; f_393 = f_392 * v3f_84.s0; f_394 = fma(f_85, f_384, f_393); f_395 = f_394 * v3f_84.s1; f_396 = fma(f_113, f_375, f_395); f_397 = f_396 * v3f_84.s2; f_398 = fma(f_151, f_353, f_397); v3f_399 = (float3)(f_224, f_310, f_398); f_400 = dim.s0 / f_8; f_401 = dim.s1 / f_14; f_402 = dim.s2 / f_20; v3f_403 = (float3)(f_400, f_401, f_402); f_404 = v3f_403.s0 * 1.525972E-5F; f_405 = v3f_403.s1 * 1.525972E-5F; f_406 = v3f_403.s2 * 1.525972E-5F; v3f_407 = (float3)(f_404, f_405, f_406); f_408 = v3f_399.s0 * v3f_407.s0; f_409 = v3f_399.s1 * v3f_407.s1; f_410 = v3f_399.s2 * v3f_407.s2; v3f_411 = (float3)(f_408, f_409, f_410); return v3f_411; } // kernel #pragma OPENCL EXTENSION cl_khr_fp64 : enable #pragma OPENCL EXTENSION cl_khr_int64_base_atomics : enable __kernel void renderVolume(__global uchar *_heap_base, ulong _frame_base, __constant uchar *_constant_region, __local uchar *_local_region, __global int *_atomics) { long l_94, l_93; ulong ul_5, ul_4, ul_7, ul_9, ul_10, ul_95, ul_1, ul_0, ul_2; float f_73, f_75, f_74, f_69, f_68, f_71, f_70, f_67, f_66, f_61, f_63, f_62, f_57, f_59, f_58, f_53, f_52, f_55, f_54, f_49, f_51, f_50, f_45, f_47, f_46, f_41, f_43, f_42, f_37, f_36, f_39, f_38, f_33, f_32, f_34, f_29, f_28, f_30, f_25, f_24, f_26; char c_81, c_84, c_78; float3 v3f_65, v3f_3, v3f_31, v3f_64, v3f_27, v3f_60, v3f_23, v3f_56, v3f_48, v3f_44, v3f_76, v3f_6, v3f_8, v3f_40, v3f_72; float4 v4f_15; int i_97, i_98, i_96, i_35, i_99, i_89, i_90, i_87, i_88, i_91, i_92, i_17, i_18, i_82, i_79, i_80, i_21, i_85, i_19, i_83, i_20, i_13, i_77, i_14, i_11, i_12; char4 v4c_22, v4c_86, v4c_16; __global ulong *_frame = (__global ulong *) &_heap_base[_frame_base]; // BLOCK 0 ul_0 = (ulong) _frame[3]; ul_1 = (ulong) _frame[4]; ul_2 = (ulong) _frame[5]; v3f_3 = vload3(0, (__global float *) ul_2); ul_4 = (ulong) _frame[6]; ul_5 = (ulong) _frame[11]; v3f_6 = vload3(0, (__global float *) ul_5); ul_7 = (ulong) _frame[12]; v3f_8 = vload3(0, (__global float *) ul_7); ul_9 = ul_0 + 32L; ul_10 = *((__global ulong *) ul_9); i_11 = get_global_id(1); // BLOCK 1 MERGES [0 10 ] i_12 = i_11; for(;i_12 < 480;) { // BLOCK 2 i_13 = get_global_id(0); // BLOCK 3 MERGES [2 9 ] i_14 = i_13; for(;i_14 < 640;) { // BLOCK 4 v4f_15 = uk_ac_manchester_tornado_api_collections_graphics_GraphicsMath_raycastPoint(_heap_base, _frame_base, _constant_region, _local_region, _atomics, ul_1, v3f_3, i_14, i_12, ul_4, 0.4F, 8.0F, 0.01875F, 0.075F); i_17 = 0; i_18 = 0; i_19 = 0; i_20 = 0; v4c_16 = (char4)(i_17, i_18, i_19, i_20); i_21 = isless(0.0F, v4f_15.s3); if(i_21 == 1) { // BLOCK 5 f_24 = v4f_15.s0; f_25 = v4f_15.s1; f_26 = v4f_15.s2; v3f_23 = (float3)(f_24, f_25, f_26); v3f_27 = uk_ac_manchester_tornado_api_collections_types_VolumeOps_grad(_heap_base, _frame_base, _constant_region, _local_region, _atomics, ul_1, v3f_3, v3f_23); f_28 = v3f_27.s0 * v3f_27.s0; f_29 = v3f_27.s1 * v3f_27.s1; f_30 = v3f_27.s2 * v3f_27.s2; v3f_31 = (float3)(f_28, f_29, f_30); f_32 = v3f_31.s0 + v3f_31.s1; f_33 = f_32 + v3f_31.s2; f_34 = sqrt(f_33); i_35 = isless(0.0F, f_34); if(i_35 == 1) { // BLOCK 6 f_36 = 1.0F / f_34; f_37 = f_36 * v3f_27.s0; f_38 = v3f_27.s1 * f_36; f_39 = v3f_27.s2 * f_36; v3f_40 = (float3)(f_37, f_38, f_39); f_41 = v3f_6.s0 - v3f_23.s0; f_42 = v3f_6.s1 - v3f_23.s1; f_43 = v3f_6.s2 - v3f_23.s2; v3f_44 = (float3)(f_41, f_42, f_43); f_45 = v3f_44.s0 * v3f_44.s0; f_46 = v3f_44.s1 * v3f_44.s1; f_47 = v3f_44.s2 * v3f_44.s2; v3f_48 = (float3)(f_45, f_46, f_47); f_49 = v3f_48.s0 + v3f_48.s1; f_50 = f_49 + v3f_48.s2; f_51 = sqrt(f_50); f_52 = 1.0F / f_51; f_53 = f_52 * v3f_44.s0; f_54 = f_52 * v3f_44.s1; f_55 = f_52 * v3f_44.s2; v3f_56 = (float3)(f_53, f_54, f_55); f_57 = v3f_40.s0 * v3f_56.s0; f_58 = v3f_40.s1 * v3f_56.s1; f_59 = v3f_40.s2 * v3f_56.s2; v3f_60 = (float3)(f_57, f_58, f_59); f_61 = v3f_60.s0 + v3f_60.s1; f_62 = f_61 + v3f_60.s2; f_63 = fmax(f_62, 0.0F); v3f_64 = (float3)(f_63, f_63, f_63); v3f_65 = v3f_64 + v3f_8; f_66 = fmin(1.0F, v3f_65.s0); f_67 = fmax(0.0F, f_66); f_68 = fmin(1.0F, v3f_65.s1); f_69 = fmax(0.0F, f_68); f_70 = fmin(1.0F, v3f_65.s2); f_71 = fmax(0.0F, f_70); v3f_72 = (float3)(f_67, f_69, f_71); f_73 = v3f_72.s0 * 255.0F; f_74 = v3f_72.s1 * 255.0F; f_75 = v3f_72.s2 * 255.0F; v3f_76 = (float3)(f_73, f_74, f_75); i_77 = isnan(v3f_76.s0)? 0 : (int) v3f_76.s0; c_78 = (char) i_77; i_79 = (int) c_78; i_80 = isnan(v3f_76.s1)? 0 : (int) v3f_76.s1; c_81 = (char) i_80; i_82 = (int) c_81; i_83 = isnan(v3f_76.s2)? 0 : (int) v3f_76.s2; c_84 = (char) i_83; i_85 = (int) c_84; i_87 = 0; v4c_86 = (char4)(i_79, i_82, i_85, i_87); v4c_22 = v4c_86; } // B6 else { // BLOCK 7 v4c_22 = v4c_16; } // B7 } // B5 else { // BLOCK 8 v4c_22 = v4c_16; } // B8 // BLOCK 9 MERGES [6 8 7 ] i_88 = i_14 << 2; i_89 = i_12 << 11; i_90 = i_12 << 9; i_91 = i_89 + i_90; i_92 = i_88 + i_91; l_93 = (long) i_92; l_94 = l_93 + 24L; ul_95 = ul_10 + l_94; vstore4(v4c_22, 0, (__global char *) ul_95); i_96 = get_global_size(0); i_97 = i_96 + i_14; i_14 = i_97; } // B9 // BLOCK 10 i_98 = get_global_size(1); i_99 = i_98 + i_12; i_12 = i_99; } // B10 // BLOCK 11 return; } // kernel