#include <metal_stdlib> | |
using namespace metal; | |
struct S { | |
int4 a; | |
}; | |
struct tint_module_vars_struct { | |
device S* v; | |
}; | |
int4 tint_mod_v4i32(int4 lhs, int4 rhs) { | |
int4 const v_1 = select(rhs, int4(1), ((rhs == int4(0)) | ((lhs == int4((-2147483647 - 1))) & (rhs == int4(-1))))); | |
return (lhs - ((lhs / v_1) * v_1)); | |
} | |
void foo(tint_module_vars_struct tint_module_vars) { | |
(*tint_module_vars.v).a = tint_mod_v4i32((*tint_module_vars.v).a, int4(2)); | |
} |