blob: 2e0db30745cecc1e60ba5262e2b2777389b8062b [file] [log] [blame]
#version 460 core
#extension GL_ARM_tensors : enable
readonly layout(set=0, binding=1) uniform tensorARM<int, 2> roTens;
writeonly layout(set=0, binding=0) uniform tensorARM<int, 2> woTens;
readonly writeonly layout(set=0, binding=1) uniform tensorARM<int, 2> rowoTens;
layout(set=0, binding=2) uniform tensorARM<int, 2> rwTens;
shared uint x;
void main() {
// tensorSizeARM should be callable with any tensor regardless of access qualifiers.
x = 0;
x += tensorSizeARM(roTens, 0);
x += tensorSizeARM(woTens, 0);
x += tensorSizeARM(rowoTens, 1);
x += tensorSizeARM(rwTens, 1);
int d = 4;
// Valid tensorWriteARM calls.
tensorWriteARM(woTens, uint[](0, 0), d);
tensorWriteARM(rwTens, uint[](0, 0), d);
// Invalid tensorWriteARM calls.
tensorWriteARM(rowoTens, uint[](0, 0), d);
tensorWriteARM(roTens, uint[](0, 0), d);
// Valid tensorReadARM calls.
tensorReadARM(roTens, uint[](0, 0), d);
tensorReadARM(rwTens, uint[](0, 0), d);
// Invalid tensorReadARM calls.
tensorReadARM(rowoTens, uint[](0, 0), d);
tensorReadARM(woTens, uint[](0, 0), d);
}