blob: 0470ad153e456b5dd477e21f6270603458100665 [file] [log] [blame]
#include <metal_stdlib>
using namespace metal;
struct tint_private_vars_struct {
uint tint_msl_thread_index_in_quadgroup;
};
half2 tint_msl_quadSwapDiagonal(half2 e, thread tint_private_vars_struct* const tint_private_vars) {
return quad_shuffle(e,((*(tint_private_vars)).tint_msl_thread_index_in_quadgroup ^ 3u));
}
half2 quadSwapDiagonal_15ac75(thread tint_private_vars_struct* const tint_private_vars) {
half2 arg_0 = half2(1.0h);
half2 res = tint_msl_quadSwapDiagonal(arg_0, tint_private_vars);
return res;
}
fragment void fragment_main(device half2* tint_symbol [[buffer(0)]], uint tint_thread_index_in_quadgroup [[thread_index_in_quadgroup]]) {
thread tint_private_vars_struct tint_private_vars = {};
{
tint_private_vars.tint_msl_thread_index_in_quadgroup = tint_thread_index_in_quadgroup;
}
*(tint_symbol) = quadSwapDiagonal_15ac75(&(tint_private_vars));
return;
}
kernel void compute_main(device half2* tint_symbol_1 [[buffer(0)]], uint tint_thread_index_in_quadgroup_1 [[thread_index_in_quadgroup]]) {
thread tint_private_vars_struct tint_private_vars = {};
{
tint_private_vars.tint_msl_thread_index_in_quadgroup = tint_thread_index_in_quadgroup_1;
}
*(tint_symbol_1) = quadSwapDiagonal_15ac75(&(tint_private_vars));
return;
}