glslang/Test/spv.bufferhandleUvec2.frag
John Kessenich 90e402f42b SPV_KHR_physical_storage_buffer/SPV: Add GL_EXT_buffer_reference_uvec2
Adds uvec2 <-> reference constructor support.
Switches from EXT to KHR for physical_storage_buffer.
2019-09-18 23:52:36 -06:00

33 lines
703 B
GLSL

#version 450
#extension GL_EXT_buffer_reference_uvec2 : enable
layout(buffer_reference, std430) buffer blockType {
layout(offset = 0) int a;
layout(offset = 4) int b;
layout(offset = 8) int c;
layout(offset = 12) int d;
layout(offset = 16) int e;
};
layout(std430) buffer t2 {
blockType f;
blockType g;
} t;
flat in uvec2 h, i;
void main() {
blockType b1[2] = blockType[2](blockType(h), blockType(i));
b1[0].a = b1[1].b;
blockType b2 = blockType(h);
blockType b3 = blockType(i);
b2.a = b3.b;
uvec2 j = uvec2(b2);
uint carry;
j.x = uaddCarry(j.x, 256, carry);
j.y += carry;
b2 = blockType(j);
}