blob: 53117dd9775af249aefb470283deccd01e59ae88 [file] [log] [blame]
John Kessenich39374da2015-05-15 21:32:46 +00001#version 310 es
2
3precision highp float;
4
5layout (local_size_x = 16, local_size_y = 32, local_size_z = 4) in;
6
7shared float s;
8shared int i;
9
10buffer outb {
11 float f;
12 float g;
13 float h;
John Kessenichc9a80832015-09-12 12:17:44 -060014 vec3 uns[];
John Kessenich39374da2015-05-15 21:32:46 +000015} outbname;
16
17buffer outbna {
18 int k;
19 vec4 na;
20} outbnamena;
21
22buffer outs {
John Kessenichc9a80832015-09-12 12:17:44 -060023 int s;
John Kessenich39374da2015-05-15 21:32:46 +000024 vec4 va[];
25} outnames;
26
John Kessenichc08fb8a2017-03-14 16:45:30 -060027#extension GL_EXT_device_group : enable
28
John Kessenich39374da2015-05-15 21:32:46 +000029void main()
30{
31 barrier();
32 outbname.f = s;
33 outbnamena.na = vec4(s);
John Kessenichc9a80832015-09-12 12:17:44 -060034 s = outbname.uns[18].x;
35 outbname.uns[17] = vec3(3.0);
John Kessenich39374da2015-05-15 21:32:46 +000036 outbname.uns[i] = vec3(s);
37 outnames.va[gl_LocalInvocationID.x] = vec4(s);
John Kessenichc9a80832015-09-12 12:17:44 -060038 outnames.s = outbname.uns.length();
John Kessenichc08fb8a2017-03-14 16:45:30 -060039 gl_DeviceIndex;
John Kessenich82979362017-12-11 04:02:24 -070040 memoryBarrierShared();
41 groupMemoryBarrier();
John Kessenich39374da2015-05-15 21:32:46 +000042}