blob: 1d82e049e41d9f00ef5f6338af72de4bf070e230 [file] [log] [blame]
#include <metal_stdlib>
using namespace metal;
struct tint_module_vars_struct {
device float4x3* prevent_dce;
};
struct vertex_main_outputs {
float4 tint_symbol [[position]];
};
void tint_store_and_preserve_padding(device float4x3* const target, float4x3 value_param) {
(*target)[0u] = value_param[0u];
(*target)[1u] = value_param[1u];
(*target)[2u] = value_param[2u];
(*target)[3u] = value_param[3u];
}
void transpose_d8f8ba(tint_module_vars_struct tint_module_vars) {
float4x3 res = float4x3(float3(1.0f), float3(1.0f), float3(1.0f), float3(1.0f));
tint_store_and_preserve_padding(tint_module_vars.prevent_dce, res);
}
float4 vertex_main_inner(tint_module_vars_struct tint_module_vars) {
transpose_d8f8ba(tint_module_vars);
return float4(0.0f);
}
fragment void fragment_main(device float4x3* prevent_dce [[buffer(0)]]) {
tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.prevent_dce=prevent_dce};
transpose_d8f8ba(tint_module_vars);
}
kernel void compute_main(device float4x3* prevent_dce [[buffer(0)]]) {
tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.prevent_dce=prevent_dce};
transpose_d8f8ba(tint_module_vars);
}
vertex vertex_main_outputs vertex_main(device float4x3* prevent_dce [[buffer(0)]]) {
tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.prevent_dce=prevent_dce};
return vertex_main_outputs{.tint_symbol=vertex_main_inner(tint_module_vars)};
}