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