1#include <metal_stdlib> 2#include <simd/simd.h> 3#ifdef __clang__ 4#pragma clang diagnostic ignored "-Wall" 5#endif 6using namespace metal; 7struct Uniforms { 8 half4 colorGreen; 9 half4 colorRed; 10}; 11struct Inputs { 12}; 13struct Outputs { 14 half4 sk_FragColor [[color(0)]]; 15}; 16fragment Outputs fragmentMain(Inputs _in [[stage_in]], constant Uniforms& _uniforms [[buffer(0)]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { 17 Outputs _out; 18 (void)_out; 19 float f = float(_uniforms.colorGreen.y); 20 int i = int(_uniforms.colorGreen.y); 21 uint u = uint(_uniforms.colorGreen.y); 22 bool b = bool(_uniforms.colorGreen.y); 23 float f1 = f; 24 float f2 = float(i); 25 float f3 = float(u); 26 float f4 = float(b); 27 int i1 = int(f); 28 int i2 = i; 29 int i3 = int(u); 30 int i4 = int(b); 31 uint u1 = uint(f); 32 uint u2 = uint(i); 33 uint u3 = u; 34 uint u4 = uint(b); 35 bool b1 = bool(f); 36 bool b2 = bool(i); 37 bool b3 = bool(u); 38 bool b4 = b; 39 _out.sk_FragColor = ((((((((((((((half(f1) + half(f2)) + half(f3)) + half(f4)) + half(i1)) + half(i2)) + half(i3)) + half(i4)) + half(u1)) + half(u2)) + half(u3)) + half(u4)) + half(b1)) + half(b2)) + half(b3)) + half(b4) == 16.0h ? _uniforms.colorGreen : _uniforms.colorRed; 40 return _out; 41} 42