#include <metal_stdlib> | |
using namespace metal; | |
struct UBO { | |
/* 0x0000 */ int dynamic_idx; | |
}; | |
struct Result { | |
/* 0x0000 */ int out; | |
}; | |
struct tint_array_wrapper { | |
/* 0x0000 */ int arr[4]; | |
}; | |
struct SSBO { | |
/* 0x0000 */ tint_array_wrapper data; | |
}; | |
kernel void f(constant UBO& ubo [[buffer(0)]], device SSBO& ssbo [[buffer(1)]], device Result& result [[buffer(2)]]) { | |
ssbo.data.arr[ubo.dynamic_idx] = 1; | |
result.out = ssbo.data.arr[3]; | |
return; | |
} | |