blob: ba9ced855389e86cd3dd1a3cc286561838f0d4c9 [file] [log] [blame]
#include <metal_stdlib>
using namespace metal;
struct tint_private_vars_struct {
uint tint_msl_thread_index_in_quadgroup;
};
uint4 tint_msl_quadSwapDiagonal(uint4 e, thread tint_private_vars_struct* const tint_private_vars) {
return quad_shuffle(e,((*(tint_private_vars)).tint_msl_thread_index_in_quadgroup ^ 3u));
}
uint4 quadSwapDiagonal_c31636(thread tint_private_vars_struct* const tint_private_vars) {
uint4 res = tint_msl_quadSwapDiagonal(uint4(1u), tint_private_vars);
return res;
}
fragment void fragment_main(device uint4* 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_c31636(&(tint_private_vars));
return;
}
kernel void compute_main(device uint4* 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_c31636(&(tint_private_vars));
return;
}