dawn-cmake/test/vk-gl-cts/graphicsfuzz/cov-inc-inside-switch-and-for/0-opt.wgsl.expected.msl

60 lines
1.2 KiB
Plaintext

#include <metal_stdlib>
using namespace metal;
struct buf0 {
/* 0x0000 */ int three;
};
struct main_out {
float4 x_GLF_color_1;
};
struct tint_symbol_1 {
float4 x_GLF_color_1 [[color(0)]];
};
void main_1(constant buf0& x_7, thread float4* const tint_symbol_4) {
int a = 0;
int i = 0;
a = 0;
i = 0;
while (true) {
int const x_31 = i;
int const x_33 = x_7.three;
if ((x_31 < (7 + x_33))) {
} else {
break;
}
int const x_37 = i;
switch(x_37) {
case 7:
case 8: {
int const x_40 = a;
a = (x_40 + 1);
break;
}
default: {
break;
}
}
{
int const x_42 = i;
i = (x_42 + 1);
}
}
int const x_44 = a;
if ((x_44 == 2)) {
*(tint_symbol_4) = float4(1.0f, 0.0f, 0.0f, 1.0f);
} else {
*(tint_symbol_4) = float4(0.0f, 0.0f, 0.0f, 0.0f);
}
return;
}
fragment tint_symbol_1 tint_symbol(constant buf0& x_7 [[buffer(0)]]) {
thread float4 tint_symbol_5 = 0.0f;
main_1(x_7, &(tint_symbol_5));
main_out const tint_symbol_2 = {.x_GLF_color_1=tint_symbol_5};
tint_symbol_1 const tint_symbol_3 = {.x_GLF_color_1=tint_symbol_2.x_GLF_color_1};
return tint_symbol_3;
}