1#include <metal_stdlib> 2#include <simd/simd.h> 3using namespace metal; 4struct Inputs { 5}; 6struct Outputs { 7 float4 sk_FragColor [[color(0)]]; 8}; 9void out_half_vh(thread float& v); 10void _skOutParamHelper0_out_half_vh(thread float& h) { 11 float _var0; 12 out_half_vh(_var0); 13 h = _var0; 14} 15void out_half2_vh2(thread float2& v); 16void _skOutParamHelper1_out_half2_vh2(thread float2& h2) { 17 float2 _var0; 18 out_half2_vh2(_var0); 19 h2 = _var0; 20} 21void out_half3_vh3(thread float3& v); 22void _skOutParamHelper2_out_half3_vh3(thread float3& h3) { 23 float3 _var0; 24 out_half3_vh3(_var0); 25 h3 = _var0; 26} 27void out_half4_vh4(thread float4& v); 28void _skOutParamHelper3_out_half4_vh4(thread float4& h4) { 29 float4 _var0; 30 out_half4_vh4(_var0); 31 h4 = _var0; 32} 33void out_half_vh(thread float& v); 34void _skOutParamHelper4_out_half_vh(thread float3& h3) { 35 float _var0; 36 out_half_vh(_var0); 37 h3.y = _var0; 38} 39void out_half2_vh2(thread float2& v); 40void _skOutParamHelper5_out_half2_vh2(thread float3& h3) { 41 float2 _var0; 42 out_half2_vh2(_var0); 43 h3.xz = _var0; 44} 45void out_half4_vh4(thread float4& v); 46void _skOutParamHelper6_out_half4_vh4(thread float4& h4) { 47 float4 _var0; 48 out_half4_vh4(_var0); 49 h4.zwxy = _var0; 50} 51void out_pair_vhh(thread float& v1, thread float& v2); 52void _skOutParamHelper7_out_pair_vhh(thread float& h, thread float& h1) { 53 float _var0; 54 float _var1; 55 out_pair_vhh(_var0, _var1); 56 h = _var0; 57 h1 = _var1; 58} 59void out_pair_vhh(thread float& v1, thread float& v2); 60void _skOutParamHelper8_out_pair_vhh(thread float& h, thread float&) { 61 float _var0; 62 float _var1; 63 out_pair_vhh(_var0, _var1); 64 h = _var0; 65 h = _var1; 66} 67void out_pair_vhh(thread float& v1, thread float& v2); 68void _skOutParamHelper9_out_pair_vhh(thread float2& h2, thread float2&) { 69 float _var0; 70 float _var1; 71 out_pair_vhh(_var0, _var1); 72 h2.x = _var0; 73 h2.y = _var1; 74} 75void out_pair_vhh(thread float& v1, thread float& v2); 76void _skOutParamHelper10_out_pair_vhh(thread float2& h2, thread float2&) { 77 float _var0; 78 float _var1; 79 out_pair_vhh(_var0, _var1); 80 h2.x = _var0; 81 h2.x = _var1; 82} 83void out_pair_vhh(thread float& v1, thread float& v2); 84void _skOutParamHelper11_out_pair_vhh(thread float2& h2, thread float3& h3) { 85 float _var0; 86 float _var1; 87 out_pair_vhh(_var0, _var1); 88 h2.x = _var0; 89 h3.x = _var1; 90} 91void out_half2x2_vh22(thread float2x2& v); 92void _skOutParamHelper12_out_half2x2_vh22(thread float2x2& h2x2) { 93 float2x2 _var0; 94 out_half2x2_vh22(_var0); 95 h2x2 = _var0; 96} 97void out_half3x3_vh33(thread float3x3& v); 98void _skOutParamHelper13_out_half3x3_vh33(thread float3x3& h3x3) { 99 float3x3 _var0; 100 out_half3x3_vh33(_var0); 101 h3x3 = _var0; 102} 103void out_half4x4_vh44(thread float4x4& v); 104void _skOutParamHelper14_out_half4x4_vh44(thread float4x4& h4x4) { 105 float4x4 _var0; 106 out_half4x4_vh44(_var0); 107 h4x4 = _var0; 108} 109void out_half3_vh3(thread float3& v); 110void _skOutParamHelper15_out_half3_vh3(thread float3x3& h3x3) { 111 float3 _var0; 112 out_half3_vh3(_var0); 113 h3x3[1] = _var0; 114} 115void out_half4_vh4(thread float4& v); 116void _skOutParamHelper16_out_half4_vh4(thread float4x4& h4x4) { 117 float4 _var0; 118 out_half4_vh4(_var0); 119 h4x4[3].zwxy = _var0; 120} 121void out_half2_vh2(thread float2& v); 122void _skOutParamHelper17_out_half2_vh2(thread float2x2& h2x2) { 123 float2 _var0; 124 out_half2_vh2(_var0); 125 h2x2[0] = _var0; 126} 127void out_int_vi(thread int& v); 128void _skOutParamHelper18_out_int_vi(thread int& i) { 129 int _var0; 130 out_int_vi(_var0); 131 i = _var0; 132} 133void out_int2_vi2(thread int2& v); 134void _skOutParamHelper19_out_int2_vi2(thread int2& i2) { 135 int2 _var0; 136 out_int2_vi2(_var0); 137 i2 = _var0; 138} 139void out_int3_vi3(thread int3& v); 140void _skOutParamHelper20_out_int3_vi3(thread int3& i3) { 141 int3 _var0; 142 out_int3_vi3(_var0); 143 i3 = _var0; 144} 145void out_int4_vi4(thread int4& v); 146void _skOutParamHelper21_out_int4_vi4(thread int4& i4) { 147 int4 _var0; 148 out_int4_vi4(_var0); 149 i4 = _var0; 150} 151void out_int3_vi3(thread int3& v); 152void _skOutParamHelper22_out_int3_vi3(thread int4& i4) { 153 int3 _var0; 154 out_int3_vi3(_var0); 155 i4.xyz = _var0; 156} 157void out_float_vf(thread float& v); 158void _skOutParamHelper23_out_float_vf(thread float& f) { 159 float _var0; 160 out_float_vf(_var0); 161 f = _var0; 162} 163void out_float2_vf2(thread float2& v); 164void _skOutParamHelper24_out_float2_vf2(thread float2& f2) { 165 float2 _var0; 166 out_float2_vf2(_var0); 167 f2 = _var0; 168} 169void out_float3_vf3(thread float3& v); 170void _skOutParamHelper25_out_float3_vf3(thread float3& f3) { 171 float3 _var0; 172 out_float3_vf3(_var0); 173 f3 = _var0; 174} 175void out_float4_vf4(thread float4& v); 176void _skOutParamHelper26_out_float4_vf4(thread float4& f4) { 177 float4 _var0; 178 out_float4_vf4(_var0); 179 f4 = _var0; 180} 181void out_float2_vf2(thread float2& v); 182void _skOutParamHelper27_out_float2_vf2(thread float3& f3) { 183 float2 _var0; 184 out_float2_vf2(_var0); 185 f3.xy = _var0; 186} 187void out_float_vf(thread float& v); 188void _skOutParamHelper28_out_float_vf(thread float2& f2) { 189 float _var0; 190 out_float_vf(_var0); 191 f2.x = _var0; 192} 193void out_float2x2_vf22(thread float2x2& v); 194void _skOutParamHelper29_out_float2x2_vf22(thread float2x2& f2x2) { 195 float2x2 _var0; 196 out_float2x2_vf22(_var0); 197 f2x2 = _var0; 198} 199void out_float3x3_vf33(thread float3x3& v); 200void _skOutParamHelper30_out_float3x3_vf33(thread float3x3& f3x3) { 201 float3x3 _var0; 202 out_float3x3_vf33(_var0); 203 f3x3 = _var0; 204} 205void out_float4x4_vf44(thread float4x4& v); 206void _skOutParamHelper31_out_float4x4_vf44(thread float4x4& f4x4) { 207 float4x4 _var0; 208 out_float4x4_vf44(_var0); 209 f4x4 = _var0; 210} 211void out_float_vf(thread float& v); 212void _skOutParamHelper32_out_float_vf(thread float2x2& f2x2) { 213 float _var0; 214 out_float_vf(_var0); 215 f2x2[0].x = _var0; 216} 217void out_float4_vf4(thread float4& v); 218void _skOutParamHelper33_out_float4_vf4(thread float4x4& f4x4) { 219 float4 _var0; 220 out_float4_vf4(_var0); 221 f4x4[1] = _var0; 222} 223void out_bool_vb(thread bool& v); 224void _skOutParamHelper34_out_bool_vb(thread bool& b) { 225 bool _var0; 226 out_bool_vb(_var0); 227 b = _var0; 228} 229void out_bool2_vb2(thread bool2& v); 230void _skOutParamHelper35_out_bool2_vb2(thread bool2& b2) { 231 bool2 _var0; 232 out_bool2_vb2(_var0); 233 b2 = _var0; 234} 235void out_bool3_vb3(thread bool3& v); 236void _skOutParamHelper36_out_bool3_vb3(thread bool3& b3) { 237 bool3 _var0; 238 out_bool3_vb3(_var0); 239 b3 = _var0; 240} 241void out_bool4_vb4(thread bool4& v); 242void _skOutParamHelper37_out_bool4_vb4(thread bool4& b4) { 243 bool4 _var0; 244 out_bool4_vb4(_var0); 245 b4 = _var0; 246} 247void out_bool2_vb2(thread bool2& v); 248void _skOutParamHelper38_out_bool2_vb2(thread bool4& b4) { 249 bool2 _var0; 250 out_bool2_vb2(_var0); 251 b4.xw = _var0; 252} 253void out_bool_vb(thread bool& v); 254void _skOutParamHelper39_out_bool_vb(thread bool3& b3) { 255 bool _var0; 256 out_bool_vb(_var0); 257 b3.z = _var0; 258} 259void out_half_vh(thread float& v) { 260 v = 1.0; 261} 262void out_half2_vh2(thread float2& v) { 263 v = float2(2.0); 264} 265void out_half3_vh3(thread float3& v) { 266 v = float3(3.0); 267} 268void out_half4_vh4(thread float4& v) { 269 v = float4(4.0); 270} 271void out_half2x2_vh22(thread float2x2& v) { 272 v = float2x2(2.0); 273} 274void out_half3x3_vh33(thread float3x3& v) { 275 v = float3x3(3.0); 276} 277void out_half4x4_vh44(thread float4x4& v) { 278 v = float4x4(4.0); 279} 280void out_int_vi(thread int& v) { 281 v = 1; 282} 283void out_int2_vi2(thread int2& v) { 284 v = int2(2); 285} 286void out_int3_vi3(thread int3& v) { 287 v = int3(3); 288} 289void out_int4_vi4(thread int4& v) { 290 v = int4(4); 291} 292void out_float_vf(thread float& v) { 293 v = 1.0; 294} 295void out_float2_vf2(thread float2& v) { 296 v = float2(2.0); 297} 298void out_float3_vf3(thread float3& v) { 299 v = float3(3.0); 300} 301void out_float4_vf4(thread float4& v) { 302 v = float4(4.0); 303} 304void out_float2x2_vf22(thread float2x2& v) { 305 v = float2x2(2.0); 306} 307void out_float3x3_vf33(thread float3x3& v) { 308 v = float3x3(3.0); 309} 310void out_float4x4_vf44(thread float4x4& v) { 311 v = float4x4(4.0); 312} 313void out_bool_vb(thread bool& v) { 314 v = true; 315} 316void out_bool2_vb2(thread bool2& v) { 317 v = bool2(false); 318} 319void out_bool3_vb3(thread bool3& v) { 320 v = bool3(true); 321} 322void out_bool4_vb4(thread bool4& v) { 323 v = bool4(false); 324} 325void out_pair_vhh(thread float& v1, thread float& v2) { 326 v1 = 1.0; 327 v2 = 2.0; 328} 329fragment Outputs fragmentMain(Inputs _in [[stage_in]], bool _frontFacing [[front_facing]], float4 _fragCoord [[position]]) { 330 Outputs _out; 331 (void)_out; 332 float h; 333 _skOutParamHelper0_out_half_vh(h); 334 float2 h2; 335 _skOutParamHelper1_out_half2_vh2(h2); 336 float3 h3; 337 _skOutParamHelper2_out_half3_vh3(h3); 338 float4 h4; 339 _skOutParamHelper3_out_half4_vh4(h4); 340 _skOutParamHelper4_out_half_vh(h3); 341 _skOutParamHelper5_out_half2_vh2(h3); 342 _skOutParamHelper6_out_half4_vh4(h4); 343 _out.sk_FragColor = float4(h, h2.x, h3.x, h4.x); 344 float h1; 345 _skOutParamHelper7_out_pair_vhh(h, h1); 346 _skOutParamHelper8_out_pair_vhh(h, h); 347 _skOutParamHelper9_out_pair_vhh(h2, h2); 348 _skOutParamHelper10_out_pair_vhh(h2, h2); 349 _skOutParamHelper11_out_pair_vhh(h2, h3); 350 float2x2 h2x2; 351 _skOutParamHelper12_out_half2x2_vh22(h2x2); 352 float3x3 h3x3; 353 _skOutParamHelper13_out_half3x3_vh33(h3x3); 354 float4x4 h4x4; 355 _skOutParamHelper14_out_half4x4_vh44(h4x4); 356 _skOutParamHelper15_out_half3_vh3(h3x3); 357 _skOutParamHelper16_out_half4_vh4(h4x4); 358 _skOutParamHelper17_out_half2_vh2(h2x2); 359 _out.sk_FragColor = float4(h2x2[0].x, h3x3[0].x, h4x4[0].x, 1.0); 360 int i; 361 _skOutParamHelper18_out_int_vi(i); 362 int2 i2; 363 _skOutParamHelper19_out_int2_vi2(i2); 364 int3 i3; 365 _skOutParamHelper20_out_int3_vi3(i3); 366 int4 i4; 367 _skOutParamHelper21_out_int4_vi4(i4); 368 _skOutParamHelper22_out_int3_vi3(i4); 369 _out.sk_FragColor = float4(float(i), float(i2.x), float(i3.x), float(i4.x)); 370 float f; 371 _skOutParamHelper23_out_float_vf(f); 372 float2 f2; 373 _skOutParamHelper24_out_float2_vf2(f2); 374 float3 f3; 375 _skOutParamHelper25_out_float3_vf3(f3); 376 float4 f4; 377 _skOutParamHelper26_out_float4_vf4(f4); 378 _skOutParamHelper27_out_float2_vf2(f3); 379 _skOutParamHelper28_out_float_vf(f2); 380 _out.sk_FragColor = float4(f, f2.x, f3.x, f4.x); 381 float2x2 f2x2; 382 _skOutParamHelper29_out_float2x2_vf22(f2x2); 383 float3x3 f3x3; 384 _skOutParamHelper30_out_float3x3_vf33(f3x3); 385 float4x4 f4x4; 386 _skOutParamHelper31_out_float4x4_vf44(f4x4); 387 _skOutParamHelper32_out_float_vf(f2x2); 388 _skOutParamHelper33_out_float4_vf4(f4x4); 389 _out.sk_FragColor = float4(f2x2[0].x, f3x3[0].x, f4x4[0].x, 1.0); 390 bool b; 391 _skOutParamHelper34_out_bool_vb(b); 392 bool2 b2; 393 _skOutParamHelper35_out_bool2_vb2(b2); 394 bool3 b3; 395 _skOutParamHelper36_out_bool3_vb3(b3); 396 bool4 b4; 397 _skOutParamHelper37_out_bool4_vb4(b4); 398 _skOutParamHelper38_out_bool2_vb2(b4); 399 _skOutParamHelper39_out_bool_vb(b3); 400 _out.sk_FragColor = float4(float(b), float(b2.x), float(b3.x), float(b4.x)); 401 return _out; 402} 403