#version 460
#extension GL_ARM_tensors : require
layout(local_size_x = 1, local_size_y = 1, local_size_z = 1) in;

layout(set = 0, binding = 1) uniform readonly tensorARM<int, 2u> roTens;
layout(set = 0, binding = 0) uniform writeonly tensorARM<int, 2u> woTens;
layout(set = 0, binding = 2) uniform tensorARM<int, 2u> rwTens;
layout(set = 0, binding = 3) uniform readonly writeonly tensorARM<int, 2u> rowoTens;

shared uint x;

void main()
{
    x = 0u;
    x += tensorSizeARM(roTens, 0u);
    x += tensorSizeARM(woTens, 0u);
    x += tensorSizeARM(rwTens, 1u);
    x += tensorSizeARM(rowoTens, 1u);
    int d = 4;
    tensorWriteARM(woTens, uint[](0u, 0u), d);
    tensorWriteARM(rwTens, uint[](0u, 0u), d);
    int _45;
    tensorReadARM(roTens, uint[](0u, 0u), _45);
    d = _45;
    int _47;
    tensorReadARM(rwTens, uint[](0u, 0u), _47);
    d = _47;
}

