blob: 5b9b9084d7a2f9bb0c02975d7a03c718209c6414 [file] [log] [blame]
Ben Claytonc0af5c52022-06-02 14:36:10 +00001#include <metal_stdlib>
2
3using namespace metal;
Natalie Chouinarde9027182024-06-13 18:50:19 +00004float fma_c10ba3() {
Ben Claytonc0af5c52022-06-02 14:36:10 +00005 float arg_0 = 1.0f;
6 float arg_1 = 1.0f;
7 float arg_2 = 1.0f;
8 float res = fma(arg_0, arg_1, arg_2);
Natalie Chouinarde9027182024-06-13 18:50:19 +00009 return res;
Ben Claytonc0af5c52022-06-02 14:36:10 +000010}
11
Natalie Chouinarde9027182024-06-13 18:50:19 +000012fragment void fragment_main(device float* tint_symbol_1 [[buffer(0)]]) {
13 *(tint_symbol_1) = fma_c10ba3();
14 return;
15}
16
17kernel void compute_main(device float* tint_symbol_2 [[buffer(0)]]) {
18 *(tint_symbol_2) = fma_c10ba3();
19 return;
20}
21
22struct VertexOutput {
23 float4 pos;
24 float prevent_dce;
Ben Claytonc0af5c52022-06-02 14:36:10 +000025};
26
Natalie Chouinarde9027182024-06-13 18:50:19 +000027struct tint_symbol {
28 float prevent_dce [[user(locn0)]] [[flat]];
29 float4 pos [[position]];
30};
31
32VertexOutput vertex_main_inner() {
33 VertexOutput out = {};
34 out.pos = float4(0.0f);
35 out.prevent_dce = fma_c10ba3();
36 return out;
Ben Claytonc0af5c52022-06-02 14:36:10 +000037}
38
Natalie Chouinarde9027182024-06-13 18:50:19 +000039vertex tint_symbol vertex_main() {
40 VertexOutput const inner_result = vertex_main_inner();
Ben Claytonc0af5c52022-06-02 14:36:10 +000041 tint_symbol wrapper_result = {};
Natalie Chouinarde9027182024-06-13 18:50:19 +000042 wrapper_result.pos = inner_result.pos;
43 wrapper_result.prevent_dce = inner_result.prevent_dce;
Ben Claytonc0af5c52022-06-02 14:36:10 +000044 return wrapper_result;
45}
46