File: spv.longVectorStorage.comp

package info (click to toggle)
glslang 16.2.0-1
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 51,720 kB
  • sloc: cpp: 92,305; yacc: 4,320; sh: 603; python: 305; ansic: 94; javascript: 74; makefile: 17
file content (84 lines) | stat: -rw-r--r-- 1,982 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
#version 450 core
#extension GL_KHR_memory_scope_semantics : enable
#extension GL_EXT_long_vector : enable
#extension GL_EXT_shader_explicit_arithmetic_types : enable
#extension GL_EXT_buffer_reference : enable
#extension GL_EXT_scalar_block_layout : enable

layout (local_size_x = 64, local_size_y = 1, local_size_z = 1) in;

layout(constant_id = 0) const uint32_t c0 = 0;

layout(set = 0, binding = 0, std140) buffer Buf140 {
    vector<uint32_t, 5> v5[2];
    vector<uint32_t, 7> v7;
    vector<uint32_t, 1> v1[2];
} buf140;

layout(set = 0, binding = 0, std430) buffer Buf430 {
    vector<uint32_t, 5> v5[2];
    vector<uint32_t, 7> v7;
    vector<uint32_t, 1> v1[2];
} buf430;

layout(set = 0, binding = 0, scalar) buffer BufScalar {
    vector<uint32_t, 5> v5[2];
    vector<uint32_t, 7> v7;
    vector<uint32_t, 1> v1[2];
} bufScalar;

layout(set = 0, binding = 1) uniform UBO {
    vector<uint32_t, 5> v5[2];
    vector<uint32_t, 7> v7;
    vector<uint32_t, 1> v1[2];
} ubo;

layout (push_constant, scalar) uniform PC {
    layout(offset = 0) vector<uint32_t, 5> v5;
    layout(offset = 28) vector<uint32_t, 7> v7;
} pc;

layout(scalar, buffer_reference) buffer BufScalarRef {
    vector<uint32_t, 5> v5[2];
    vector<uint32_t, 7> v7;
    vector<uint32_t, 1> v1[2];
};

shared vector<uint32_t, 9> s9;
shared vector<float, c0> s5;



void main()
{
    vector<uint32_t, 1> v1;
    vector<uint32_t, 5> v5;
    vector<uint32_t, 7> v7;
    vector<uint32_t, 9> v9;
    vector<float, c0> vc;

    BufScalarRef ref;

    v1 = buf140.v1[0];
    v1 = buf430.v1[1];
    v1 = bufScalar.v1[1];
    v1 = ubo.v1[1];
    v1 = ref.v1[1];

    v5 = buf140.v5[1];
    v5 = buf430.v5[1];
    v5 = bufScalar.v5[1];
    v5 = ubo.v5[1];
    v5 = pc.v5;
    v5 = ref.v5[1];

    v7 = buf140.v7;
    v7 = buf430.v7;
    v7 = bufScalar.v7;
    v7 = ubo.v7;
    v7 = pc.v7;
    v7 = ref.v7;

    v9 = s9;
    vc = s5;
}