xref: /aosp_15_r20/external/skia/tests/sksl/compute/ModuleStructInInterfaceBlock.metal (revision c8dee2aa9b3f27cf6c858bd81872bdeb2c07ed17)
1#include <metal_stdlib>
2#include <simd/simd.h>
3#ifdef __clang__
4#pragma clang diagnostic ignored "-Wall"
5#endif
6using namespace metal;
7struct IndirectDispatchArgs {
8    int x;
9    int y;
10    int z;
11};
12struct Inputs {
13};
14struct InputBuffer {
15    IndirectDispatchArgs args;
16};
17struct Globals {
18    device InputBuffer* _anonInterface0;
19};
20struct Threadgroups {
21    int outX;
22    int outY;
23    int outZ;
24};
25kernel void computeMain(device InputBuffer& _anonInterface0 [[buffer(0)]]) {
26    Globals _globals{&_anonInterface0};
27    (void)_globals;
28    threadgroup Threadgroups _threadgroups{{}, {}, {}};
29    (void)_threadgroups;
30    Inputs _in = {  };
31    _threadgroups.outX = _globals._anonInterface0->args.x;
32    _threadgroups.outY = _globals._anonInterface0->args.y;
33    _threadgroups.outZ = _globals._anonInterface0->args.z;
34    return;
35}
36