blob: 568f3b87c1d41aee62d6c15202b30ef9edacc9bc [file] [log] [blame]
#include <metal_stdlib>
using namespace metal;
struct tint_module_vars_struct {
device int* tint_symbol;
};
#define TINT_ISOLATE_UB(VOLATILE_NAME) \
volatile bool VOLATILE_NAME = true; \
if (VOLATILE_NAME)
kernel void tint_symbol_1(device int* tint_symbol [[buffer(0)]]) {
tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.tint_symbol=tint_symbol};
int i = (*tint_module_vars.tint_symbol);
{
TINT_ISOLATE_UB(tint_volatile_true) while(true) {
{
{
TINT_ISOLATE_UB(tint_volatile_true_1) while(true) {
if ((i > 5)) {
i = as_type<int>((as_type<uint>(i) * as_type<uint>(2)));
break;
} else {
i = as_type<int>((as_type<uint>(i) * as_type<uint>(2)));
break;
}
/* unreachable */
}
}
if ((i > 10)) { break; }
}
continue;
}
}
(*tint_module_vars.tint_symbol) = i;
}