blob: f10fb82481ac4bd46022e5a27fd2a5b770571cc3 [file] [log] [blame]
James Priceae39e6d2023-04-25 19:16:25 +00001#include <metal_stdlib>
2
3using namespace metal;
4
5template<typename T, size_t N>
6struct tint_array {
7 const constant T& operator[](size_t i) const constant { return elements[i]; }
8 device T& operator[](size_t i) device { return elements[i]; }
9 const device T& operator[](size_t i) const device { return elements[i]; }
10 thread T& operator[](size_t i) thread { return elements[i]; }
11 const thread T& operator[](size_t i) const thread { return elements[i]; }
12 threadgroup T& operator[](size_t i) threadgroup { return elements[i]; }
13 const threadgroup T& operator[](size_t i) const threadgroup { return elements[i]; }
14 T elements[N];
15};
16
17struct S_6 {
18 tint_array<tint_array<float3, 18>, 13> field0;
19};
20
21struct tint_private_vars_struct {
22 tint_array<float4x4, 58> x_75;
23 tint_array<S_6, 46> x_82;
24 tint_array<float3, 37> x_85;
25};
26
27struct S {
28 float3x3 field0;
29};
30
31struct S_1 {
32 tint_array<tint_array<tint_array<S, 83>, 21>, 47> field0;
33};
34
35struct S_2 {
36 tint_array<tint_array<float3, 37>, 95> field0;
37};
38
39struct S_3 {
40 S_2 field0;
41};
42
43struct S_4 {
44 tint_array<int2, 56> field0;
45};
46
47struct S_5 {
48 S_4 field0;
49};
50
51struct S_7 {
52 tint_array<int2, 88> field0;
53};
54
55void main_1() {
56 uint const x_88 = 58u;
57 return;
58}
59
60fragment void tint_symbol() {
61 main_1();
62 return;
63}
64