blob: 836711c5ebc7311bba17443267441bf70f352a16 [file] [log] [blame]
#include <metal_stdlib>
using namespace metal;
struct tint_module_vars_struct {
device int* prevent_dce;
};
int subgroupElect_3943d6() {
bool res = simd_is_first();
return select(0, 1, all((res == false)));
}
fragment void fragment_main(device int* prevent_dce [[buffer(0)]]) {
tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.prevent_dce=prevent_dce};
(*tint_module_vars.prevent_dce) = subgroupElect_3943d6();
}
kernel void compute_main(device int* prevent_dce [[buffer(0)]]) {
tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.prevent_dce=prevent_dce};
(*tint_module_vars.prevent_dce) = subgroupElect_3943d6();
}