blob: a36c42f2f489135663c3d3a3cb4f345c159e7949 [file] [log] [blame]
James Price456cf282024-06-11 18:24:06 +00001#include <metal_stdlib>
2using namespace metal;
James Price48be7e82024-06-19 22:38:07 +00003
James Price456cf282024-06-11 18:24:06 +00004struct tint_module_vars_struct {
James Price456cf282024-06-11 18:24:06 +00005 device uint2* prevent_dce;
James Price812c9d02024-06-29 21:54:00 +00006 texture2d<int, access::write> arg_0;
James Price456cf282024-06-11 18:24:06 +00007};
dan sinclairf1f381a2023-11-22 09:44:15 +00008
James Price2cc6b3c2024-06-13 20:31:41 +00009uint2 textureDimensions_cad3b7(tint_module_vars_struct tint_module_vars) {
James Price456cf282024-06-11 18:24:06 +000010 uint const v = tint_module_vars.arg_0.get_width(0u);
11 uint2 res = uint2(v, tint_module_vars.arg_0.get_height(0u));
James Price2cc6b3c2024-06-13 20:31:41 +000012 return res;
dan sinclairf1f381a2023-11-22 09:44:15 +000013}
James Price48be7e82024-06-19 22:38:07 +000014
James Price812c9d02024-06-29 21:54:00 +000015fragment void fragment_main(device uint2* prevent_dce [[buffer(0)]], texture2d<int, access::write> arg_0 [[texture(0)]]) {
16 tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.prevent_dce=prevent_dce, .arg_0=arg_0};
James Price2cc6b3c2024-06-13 20:31:41 +000017 (*tint_module_vars.prevent_dce) = textureDimensions_cad3b7(tint_module_vars);
dan sinclairf1f381a2023-11-22 09:44:15 +000018}
James Price48be7e82024-06-19 22:38:07 +000019
James Price812c9d02024-06-29 21:54:00 +000020kernel void compute_main(device uint2* prevent_dce [[buffer(0)]], texture2d<int, access::write> arg_0 [[texture(0)]]) {
21 tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.prevent_dce=prevent_dce, .arg_0=arg_0};
James Price2cc6b3c2024-06-13 20:31:41 +000022 (*tint_module_vars.prevent_dce) = textureDimensions_cad3b7(tint_module_vars);
dan sinclairf1f381a2023-11-22 09:44:15 +000023}