glslang/Test/spv.bufferhandleUvec2.frag

33 lines
703 B
GLSL
Raw Normal View History

#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);
}