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.
This commit is contained in:
John Kessenich
2019-09-17 23:19:38 -06:00
parent e0932f676d
commit 90e402f42b
29 changed files with 217 additions and 25 deletions

View File

@@ -0,0 +1,32 @@
#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);
}