blob: ecdf99e0725c21593b1bba5a7acbfbaddd3bbc5f [file] [log] [blame]
#include <metal_stdlib>
using namespace metal;
struct S {
/* 0x0000 */ uint field0[1];
};
void main_1(device S& x_6, device S& x_7, device S& x_8, device S& x_9, thread uint3* const tint_symbol_1) {
uint const x_23 = (*(tint_symbol_1)).x;
uint const x_25 = x_6.field0[x_23];
uint const x_27 = x_7.field0[x_23];
uint const x_29 = x_8.field0[x_23];
x_9.field0[x_23] = as_type<uint>(clamp(as_type<int>(x_25), as_type<int>(x_27), as_type<int>(x_29)));
return;
}
void tint_symbol_inner(device S& x_6, device S& x_7, device S& x_8, device S& x_9, uint3 x_3_param, thread uint3* const tint_symbol_2) {
*(tint_symbol_2) = x_3_param;
main_1(x_6, x_7, x_8, x_9, tint_symbol_2);
}
kernel void tint_symbol(uint3 x_3_param [[thread_position_in_grid]], device S& x_6 [[buffer(0)]], device S& x_7 [[buffer(1)]], device S& x_8 [[buffer(2)]], device S& x_9 [[buffer(3)]]) {
thread uint3 tint_symbol_3 = 0u;
tint_symbol_inner(x_6, x_7, x_8, x_9, x_3_param, &(tint_symbol_3));
return;
}