blob: 67e7aa8971a8a0c060f9efdfb6ca9d85f51393e4 [file] [log] [blame]
#include <metal_stdlib>
using namespace metal;
int tint_clamp(int e, int low, int high) {
return min(max(e, low), high);
}
float4 textureLoad_2dbfc2(texture2d_array<float, access::read_write> tint_symbol) {
uint2 arg_1 = uint2(1u);
int arg_2 = 1;
float4 res = tint_symbol.read(uint2(min(arg_1, (uint2(tint_symbol.get_width(), tint_symbol.get_height()) - uint2(1u)))), tint_clamp(arg_2, 0, int((tint_symbol.get_array_size() - 1u))));
return res;
}
fragment void fragment_main(device float4* tint_symbol_1 [[buffer(0)]], texture2d_array<float, access::read_write> tint_symbol_2 [[texture(0)]]) {
*(tint_symbol_1) = textureLoad_2dbfc2(tint_symbol_2);
return;
}
kernel void compute_main(device float4* tint_symbol_3 [[buffer(0)]], texture2d_array<float, access::read_write> tint_symbol_4 [[texture(0)]]) {
*(tint_symbol_3) = textureLoad_2dbfc2(tint_symbol_4);
return;
}