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