Results for spec@arb_shader_atomic_counters@max-counters

Overview

Result: pass

Back to summary

Details

Detail Value
Returncode 0
Time 0:00:07.284275
Stdout
Max combined: 4096
Max VS: 4096
Max FS: 4096
Failed to compile shader: 0:57(1): error: layout(binding = 16) exceeds the  maximum number of atomic counter buffer bindings(16)
0:57(1): error: atomic counters require explicit binding point

source:
#version 140
#extension GL_ARB_shader_atomic_counters : enable
#define PASTE(A,B) A ## B
#define Y(I) PASTE(y, I)

out ivec4 fcolor;

#define I 0
layout(binding=I, offset=0) uniform atomic_uint Y(I);
#undef I
#define I 1
layout(binding=I, offset=0) uniform atomic_uint Y(I);
#undef I
#define I 2
layout(binding=I, offset=0) uniform atomic_uint Y(I);
#undef I
#define I 3
layout(binding=I, offset=0) uniform atomic_uint Y(I);
#undef I
#define I 4
layout(binding=I, offset=0) uniform atomic_uint Y(I);
#undef I
#define I 5
layout(binding=I, offset=0) uniform atomic_uint Y(I);
#undef I
#define I 6
layout(binding=I, offset=0) uniform atomic_uint Y(I);
#undef I
#define I 7
layout(binding=I, offset=0) uniform atomic_uint Y(I);
#undef I
#define I 8
layout(binding=I, offset=0) uniform atomic_uint Y(I);
#undef I
#define I 9
layout(binding=I, offset=0) uniform atomic_uint Y(I);
#undef I
#define I 10
layout(binding=I, offset=0) uniform atomic_uint Y(I);
#undef I
#define I 11
layout(binding=I, offset=0) uniform atomic_uint Y(I);
#undef I
#define I 12
layout(binding=I, offset=0) uniform atomic_uint Y(I);
#undef I
#define I 13
layout(binding=I, offset=0) uniform atomic_uint Y(I);
#undef I
#define I 14
layout(binding=I, offset=0) uniform atomic_uint Y(I);
#undef I
#define I 15
layout(binding=I, offset=0) uniform atomic_uint Y(I);
#undef I
#define I 16
layout(binding=I, offset=0) uniform atomic_uint Y(I);
#undef I

void main() {
       uint x = 0u;
              x += atomicCounterDecrement(y0);
       x += atomicCounterDecrement(y1);
       x += atomicCounterDecrement(y2);
       x += atomicCounterDecrement(y3);
       x += atomicCounterDecrement(y4);
       x += atomicCounterDecrement(y5);
       x += atomicCounterDecrement(y6);
       x += atomicCounterDecrement(y7);
       x += atomicCounterDecrement(y8);
       x += atomicCounterDecrement(y9);
       x += atomicCounterDecrement(y10);
       x += atomicCounterDecrement(y11);
       x += atomicCounterDecrement(y12);
       x += atomicCounterDecrement(y13);
       x += atomicCounterDecrement(y14);
       x += atomicCounterDecrement(y15);
       x += atomicCounterDecrement(y16);

       fcolor.x = int(x);
}
Failed to compile shader: 0:58(1): error: layout(binding = 16) exceeds the  maximum number of atomic counter buffer bindings(16)
0:58(1): error: atomic counters require explicit binding point

source:
#version 140
#extension GL_ARB_shader_atomic_counters : enable
#define PASTE(A,B) A ## B
#define X(I) PASTE(x, I)

in vec4 position;
flat out ivec4 vcolor;

#define I 0
layout(binding=I, offset=0) uniform atomic_uint X(I);
#undef I
#define I 1
layout(binding=I, offset=0) uniform atomic_uint X(I);
#undef I
#define I 2
layout(binding=I, offset=0) uniform atomic_uint X(I);
#undef I
#define I 3
layout(binding=I, offset=0) uniform atomic_uint X(I);
#undef I
#define I 4
layout(binding=I, offset=0) uniform atomic_uint X(I);
#undef I
#define I 5
layout(binding=I, offset=0) uniform atomic_uint X(I);
#undef I
#define I 6
layout(binding=I, offset=0) uniform atomic_uint X(I);
#undef I
#define I 7
layout(binding=I, offset=0) uniform atomic_uint X(I);
#undef I
#define I 8
layout(binding=I, offset=0) uniform atomic_uint X(I);
#undef I
#define I 9
layout(binding=I, offset=0) uniform atomic_uint X(I);
#undef I
#define I 10
layout(binding=I, offset=0) uniform atomic_uint X(I);
#undef I
#define I 11
layout(binding=I, offset=0) uniform atomic_uint X(I);
#undef I
#define I 12
layout(binding=I, offset=0) uniform atomic_uint X(I);
#undef I
#define I 13
layout(binding=I, offset=0) uniform atomic_uint X(I);
#undef I
#define I 14
layout(binding=I, offset=0) uniform atomic_uint X(I);
#undef I
#define I 15
layout(binding=I, offset=0) uniform atomic_uint X(I);
#undef I
#define I 16
layout(binding=I, offset=0) uniform atomic_uint X(I);
#undef I

void main() {
       uint x = 0u;
              x += atomicCounterDecrement(x0);
       x += atomicCounterDecrement(x1);
       x += atomicCounterDecrement(x2);
       x += atomicCounterDecrement(x3);
       x += atomicCounterDecrement(x4);
       x += atomicCounterDecrement(x5);
       x += atomicCounterDecrement(x6);
       x += atomicCounterDecrement(x7);
       x += atomicCounterDecrement(x8);
       x += atomicCounterDecrement(x9);
       x += atomicCounterDecrement(x10);
       x += atomicCounterDecrement(x11);
       x += atomicCounterDecrement(x12);
       x += atomicCounterDecrement(x13);
       x += atomicCounterDecrement(x14);
       x += atomicCounterDecrement(x15);
       x += atomicCounterDecrement(x16);

       vcolor.x = int(x);
       gl_Position = position;
}
Failed to compile shader: 0:4(1): error: layout(binding = 17) exceeds the  maximum number of atomic counter buffer bindings(16)
0:4(1): error: atomic counters require explicit binding point

source:
#version 140
#extension GL_ARB_shader_atomic_counters : enable

layout(binding=17) uniform atomic_uint x;
void main() {
}
Failed to compile shader: 0:5(1): error: layout(binding = 17) exceeds the  maximum number of atomic counter buffer bindings(16)
0:5(1): error: atomic counters require explicit binding point

source:
#version 140
#extension GL_ARB_shader_atomic_counters : enable

in vec4 position;
layout(binding=17) uniform atomic_uint x;
void main() {
       gl_Position = position;
}
Stderr
couldn't open libtxc_dxtn.so, software DXTn compression/decompression unavailable
ATTENTION: default value of option vblank_mode overridden by environment.
Mesa warning: couldn't open libtxc_dxtn.so, software DXTn compression/decompression unavailable
Environment
PIGLIT_PLATFORM="mixed_glx_egl" PIGLIT_SOURCE_DIR="/home/idr/devel/graphics/piglit"
Command /home/idr/devel/graphics/piglit/bin/arb_shader_atomic_counters-max-counters -auto -fbo
dmesg

        

Back to summary