mirror of https://github.com/xemu-project/xemu.git
34 lines
1.1 KiB
Plaintext
34 lines
1.1 KiB
Plaintext
#version 460 core
|
|
|
|
#extension GL_ARM_tensors : enable
|
|
|
|
uniform tensorARM<int, 1> t;
|
|
|
|
void main() {
|
|
// Type checking should render these accesses invalid
|
|
int i = 33;
|
|
float w = 1.5;
|
|
tensorWriteARM(t, uint[](0,0), i);
|
|
tensorWriteARM(t, uint[](0,0), w);
|
|
float r;
|
|
tensorReadARM(t, uint[](0,0), i);
|
|
tensorReadARM(t, uint[](0,0), r);
|
|
|
|
// Signed vs unsigned.
|
|
uint u = 34;
|
|
tensorReadARM(t, uint[](0), u);
|
|
tensorWriteARM(t, uint[](0), u);
|
|
|
|
// OutOfBounds value is only valid with tensorReadARM.
|
|
tensorWriteARM(t, uint[](1), i, gl_TensorOperandsOutOfBoundsValueARM, 14);
|
|
|
|
// OutOfBounds value must be provided.
|
|
tensorReadARM(t, uint[](1), i, gl_TensorOperandsOutOfBoundsValueARM);
|
|
// OutOfBounds value must be constant.
|
|
tensorReadARM(t, uint[](2), i, gl_TensorOperandsOutOfBoundsValueARM, i);
|
|
// OutOfBounds value type must match tensor element type.
|
|
tensorReadARM(t, uint[](3), i, gl_TensorOperandsOutOfBoundsValueARM, 3.14);
|
|
// OutOfBounds value type must match tensor element type.
|
|
tensorReadARM(t, uint[](3), i, gl_TensorOperandsOutOfBoundsValueARM, 3u);
|
|
}
|