1#include <metal_stdlib> 2#include <simd/simd.h> 3 4using namespace metal; 5 6struct main0_out 7{ 8 float4 o0 [[color(0)]]; 9}; 10 11struct main0_in 12{ 13 float2 m_2 [[user(locn1)]]; 14 float m_3 [[user(locn1_2)]]; 15 float m_4 [[user(locn2), flat]]; 16 uint m_5 [[user(locn2_1)]]; 17 uint m_6 [[user(locn2_2)]]; 18}; 19 20fragment main0_out main0(main0_in in [[stage_in]]) 21{ 22 main0_out out = {}; 23 float4 v1; 24 v1 = float4(in.m_2.x, in.m_2.y, v1.z, v1.w); 25 v1.z = in.m_3; 26 float4 v2; 27 v2.x = in.m_4; 28 v2.y = as_type<float>(in.m_5); 29 v2.z = as_type<float>(in.m_6); 30 float4 r0; 31 r0.x = as_type<float>(as_type<int>(v2.y) + as_type<int>(v2.z)); 32 out.o0.y = float(as_type<uint>(r0.x)); 33 out.o0.x = v1.y + v2.x; 34 out.o0 = float4(out.o0.x, out.o0.y, v1.z, v1.x); 35 return out; 36} 37 38