[Piglit] [PATCH 6/7] arb_shader_atomic_counters: set KHR_no_error compatibility
Timothy Arceri
tarceri at itsqueeze.com
Thu May 18 02:00:28 UTC 2017
---
.../arb_shader_atomic_counters/active-counters.c | 29 +++++++++++++---------
.../arb_shader_atomic_counters/array-indexing.c | 1 +
.../arb_shader_atomic_counters/buffer-binding.c | 13 ++++++----
.../arb_shader_atomic_counters/default-partition.c | 1 +
.../arb_shader_atomic_counters/fragment-discard.c | 1 +
.../arb_shader_atomic_counters/function-argument.c | 1 +
.../spec/arb_shader_atomic_counters/max-counters.c | 1 +
tests/spec/arb_shader_atomic_counters/minmax.c | 1 +
.../arb_shader_atomic_counters/multiple-defs.c | 1 +
.../arb_shader_atomic_counters/respecify-buffer.c | 1 +
tests/spec/arb_shader_atomic_counters/semantics.c | 1 +
tests/spec/arb_shader_atomic_counters/unique-id.c | 1 +
.../arb_shader_atomic_counters/unused-result.c | 1 +
13 files changed, 36 insertions(+), 17 deletions(-)
diff --git a/tests/spec/arb_shader_atomic_counters/active-counters.c b/tests/spec/arb_shader_atomic_counters/active-counters.c
index 06ba2e7..976b858 100644
--- a/tests/spec/arb_shader_atomic_counters/active-counters.c
+++ b/tests/spec/arb_shader_atomic_counters/active-counters.c
@@ -30,20 +30,21 @@
#include "common.h"
PIGLIT_GL_TEST_CONFIG_BEGIN
config.supports_gl_core_version = 31;
config.window_width = 1;
config.window_height = 1;
config.window_visual = PIGLIT_GL_VISUAL_DOUBLE | PIGLIT_GL_VISUAL_RGBA;
+ config.khr_no_error_support = PIGLIT_NO_ERRORS;
PIGLIT_GL_TEST_CONFIG_END
const char *fs_source = "#version 140\n"
"#extension GL_ARB_shader_atomic_counters : enable\n"
"\n"
"out ivec4 fcolor;\n"
"\n"
"layout(binding=0) uniform atomic_uint x0[2];\n"
"layout(binding=0) uniform atomic_uint x1;\n"
@@ -155,34 +156,38 @@ piglit_init(int argc, char **argv)
piglit_report_result(PIGLIT_FAIL);
}
glGetProgramiv(prog, GL_ACTIVE_ATOMIC_COUNTER_BUFFERS, &n);
if (n != 4) {
fprintf(stderr, "Unexpected number of active counter "
"buffers.\n");
piglit_report_result(PIGLIT_FAIL);
}
- ret = 0xdeadbeef;
- glGetActiveAtomicCounterBufferiv(
- prog, n, GL_ATOMIC_COUNTER_BUFFER_BINDING, &ret);
+ if (!piglit_khr_no_error) {
+ ret = 0xdeadbeef;
+ glGetActiveAtomicCounterBufferiv(
+ prog, n, GL_ATOMIC_COUNTER_BUFFER_BINDING, &ret);
- if (!piglit_check_gl_error(GL_INVALID_VALUE)) {
- fprintf(stderr, "glGetActiveAtomicCounterBufferiv should have "
- "failed when trying to query a non-existent buffer.\n");
- piglit_report_result(PIGLIT_FAIL);
- }
+ if (!piglit_check_gl_error(GL_INVALID_VALUE)) {
+ fprintf(stderr, "glGetActiveAtomicCounterBufferiv "
+ "should have failed when trying to query a "
+ "non-existent buffer.\n");
+ piglit_report_result(PIGLIT_FAIL);
+ }
- if (ret != 0xdeadbeef) {
- fprintf(stderr, "Failed call to glGetActiveAtomicCounterBufferiv"
- "didn't preserve the output parameter contents.\n");
- piglit_report_result(PIGLIT_FAIL);
+ if (ret != 0xdeadbeef) {
+ fprintf(stderr, "Failed call to "
+ "glGetActiveAtomicCounterBufferiv didn't "
+ "preserve the output parameter contents.\n");
+ piglit_report_result(PIGLIT_FAIL);
+ }
}
for (i = 0; i < n; ++i) {
const struct buffer_info *binfo;
int binding, data_size, num_counters, ref;
GLuint counters[4];
glGetActiveAtomicCounterBufferiv(
prog, i, GL_ATOMIC_COUNTER_BUFFER_BINDING, &binding);
if (!piglit_check_gl_error(GL_NO_ERROR)) {
diff --git a/tests/spec/arb_shader_atomic_counters/array-indexing.c b/tests/spec/arb_shader_atomic_counters/array-indexing.c
index c35da2a..e1a816d 100644
--- a/tests/spec/arb_shader_atomic_counters/array-indexing.c
+++ b/tests/spec/arb_shader_atomic_counters/array-indexing.c
@@ -29,20 +29,21 @@
#include "common.h"
PIGLIT_GL_TEST_CONFIG_BEGIN
config.supports_gl_core_version = 31;
config.window_width = 1;
config.window_height = 1;
config.window_visual = PIGLIT_GL_VISUAL_DOUBLE | PIGLIT_GL_VISUAL_RGBA;
+ config.khr_no_error_support = PIGLIT_NO_ERRORS;
PIGLIT_GL_TEST_CONFIG_END
static bool
set_uniform_int(GLuint prog, const char *name, int value)
{
int loc;
glLinkProgram(prog);
glUseProgram(prog);
diff --git a/tests/spec/arb_shader_atomic_counters/buffer-binding.c b/tests/spec/arb_shader_atomic_counters/buffer-binding.c
index 681d516..7eeaae9 100644
--- a/tests/spec/arb_shader_atomic_counters/buffer-binding.c
+++ b/tests/spec/arb_shader_atomic_counters/buffer-binding.c
@@ -30,20 +30,21 @@
#include "common.h"
PIGLIT_GL_TEST_CONFIG_BEGIN
config.supports_gl_core_version = 31;
config.window_width = 1;
config.window_height = 1;
config.window_visual = PIGLIT_GL_VISUAL_DOUBLE | PIGLIT_GL_VISUAL_RGBA;
+ config.khr_no_error_support = PIGLIT_NO_ERRORS;
PIGLIT_GL_TEST_CONFIG_END
static bool
run_test_bind_at(unsigned i)
{
GLuint buffer;
glGenBuffers(1, &buffer);
@@ -67,25 +68,27 @@ run_test_bind_range(unsigned i)
glGenBuffers(1, &buffer);
glBindBufferBase(GL_ATOMIC_COUNTER_BUFFER, i, buffer);
if (!piglit_check_gl_error(GL_NO_ERROR)) {
printf("Initial buffer binding failed.\n");
return false;
}
glBufferData(GL_ATOMIC_COUNTER_BUFFER, 16, NULL, GL_STATIC_DRAW);
- glBindBufferRange(GL_ATOMIC_COUNTER_BUFFER, i, buffer, 6, 5);
- if (!piglit_check_gl_error(GL_INVALID_VALUE)) {
- printf("Misaligned buffer range binding didn't generate a"
- " GL_INVALID_VALUE error.\n");
- return false;
+ if (!piglit_khr_no_error) {
+ glBindBufferRange(GL_ATOMIC_COUNTER_BUFFER, i, buffer, 6, 5);
+ if (!piglit_check_gl_error(GL_INVALID_VALUE)) {
+ printf("Misaligned buffer range binding didn't "
+ "generate a GL_INVALID_VALUE error.\n");
+ return false;
+ }
}
glBindBufferRange(GL_ATOMIC_COUNTER_BUFFER, i, buffer, 8, 5);
if (!piglit_check_gl_error(GL_NO_ERROR)) {
printf("Buffer range binding failed.\n");
return false;
}
glGetIntegerv(GL_ATOMIC_COUNTER_BUFFER_BINDING, &binding);
if (!piglit_check_gl_error(GL_NO_ERROR) ||
diff --git a/tests/spec/arb_shader_atomic_counters/default-partition.c b/tests/spec/arb_shader_atomic_counters/default-partition.c
index b9dbdf9..f420935 100644
--- a/tests/spec/arb_shader_atomic_counters/default-partition.c
+++ b/tests/spec/arb_shader_atomic_counters/default-partition.c
@@ -34,20 +34,21 @@
#include "common.h"
PIGLIT_GL_TEST_CONFIG_BEGIN
config.supports_gl_core_version = 31;
config.window_width = 1;
config.window_height = 1;
config.window_visual = PIGLIT_GL_VISUAL_DOUBLE | PIGLIT_GL_VISUAL_RGBA;
+ config.khr_no_error_support = PIGLIT_NO_ERRORS;
PIGLIT_GL_TEST_CONFIG_END
static bool
run_test(unsigned max_uniforms)
{
const char *fs_template = "#version 140\n"
"#extension GL_ARB_shader_atomic_counters : enable\n"
"\n"
"#define N %d\n"
diff --git a/tests/spec/arb_shader_atomic_counters/fragment-discard.c b/tests/spec/arb_shader_atomic_counters/fragment-discard.c
index a4f54d2..da45f15 100644
--- a/tests/spec/arb_shader_atomic_counters/fragment-discard.c
+++ b/tests/spec/arb_shader_atomic_counters/fragment-discard.c
@@ -32,20 +32,21 @@
#define L 256
#define N (L * L)
PIGLIT_GL_TEST_CONFIG_BEGIN
config.supports_gl_core_version = 31;
config.window_width = 1;
config.window_height = 1;
config.window_visual = PIGLIT_GL_VISUAL_DOUBLE | PIGLIT_GL_VISUAL_RGBA;
+ config.khr_no_error_support = PIGLIT_NO_ERRORS;
PIGLIT_GL_TEST_CONFIG_END
static bool
run_test(void)
{
const char *fs_source = "#version 140\n"
"#extension GL_ARB_shader_atomic_counters : enable\n"
"\n"
"layout(binding = 0, offset = 0) uniform atomic_uint x;\n"
diff --git a/tests/spec/arb_shader_atomic_counters/function-argument.c b/tests/spec/arb_shader_atomic_counters/function-argument.c
index 4161160..35bf6b9 100644
--- a/tests/spec/arb_shader_atomic_counters/function-argument.c
+++ b/tests/spec/arb_shader_atomic_counters/function-argument.c
@@ -32,20 +32,21 @@
#define L 256
#define N (L * L)
PIGLIT_GL_TEST_CONFIG_BEGIN
config.supports_gl_core_version = 31;
config.window_width = 1;
config.window_height = 1;
config.window_visual = PIGLIT_GL_VISUAL_DOUBLE | PIGLIT_GL_VISUAL_RGBA;
+ config.khr_no_error_support = PIGLIT_NO_ERRORS;
PIGLIT_GL_TEST_CONFIG_END
static bool
run_test(void)
{
const char *fs_source = "#version 140\n"
"#extension GL_ARB_shader_atomic_counters : enable\n"
"\n"
"layout(binding = 0, offset = 0) uniform atomic_uint x;\n"
diff --git a/tests/spec/arb_shader_atomic_counters/max-counters.c b/tests/spec/arb_shader_atomic_counters/max-counters.c
index 8209f0d..f3df5f8 100644
--- a/tests/spec/arb_shader_atomic_counters/max-counters.c
+++ b/tests/spec/arb_shader_atomic_counters/max-counters.c
@@ -29,20 +29,21 @@
#include "common.h"
PIGLIT_GL_TEST_CONFIG_BEGIN
config.supports_gl_core_version = 31;
config.window_width = 1;
config.window_height = 1;
config.window_visual = PIGLIT_GL_VISUAL_DOUBLE | PIGLIT_GL_VISUAL_RGBA;
+ config.khr_no_error_support = PIGLIT_NO_ERRORS;
PIGLIT_GL_TEST_CONFIG_END
static char *
iterate_template(const char *template, unsigned n)
{
char *ss;
int i, ret;
ss = strdup("");
diff --git a/tests/spec/arb_shader_atomic_counters/minmax.c b/tests/spec/arb_shader_atomic_counters/minmax.c
index 73b68e7..c67544f 100644
--- a/tests/spec/arb_shader_atomic_counters/minmax.c
+++ b/tests/spec/arb_shader_atomic_counters/minmax.c
@@ -31,20 +31,21 @@
#include "minmax-test.h"
#define L 1
PIGLIT_GL_TEST_CONFIG_BEGIN
config.supports_gl_core_version = 31;
config.window_width = L;
config.window_height = L;
config.window_visual = PIGLIT_GL_VISUAL_DOUBLE | PIGLIT_GL_VISUAL_RGBA;
+ config.khr_no_error_support = PIGLIT_NO_ERRORS;
PIGLIT_GL_TEST_CONFIG_END
enum piglit_result
piglit_display(void)
{
return PIGLIT_FAIL;
}
void
diff --git a/tests/spec/arb_shader_atomic_counters/multiple-defs.c b/tests/spec/arb_shader_atomic_counters/multiple-defs.c
index 4418c03..b752fc2 100644
--- a/tests/spec/arb_shader_atomic_counters/multiple-defs.c
+++ b/tests/spec/arb_shader_atomic_counters/multiple-defs.c
@@ -29,20 +29,21 @@
#include "common.h"
PIGLIT_GL_TEST_CONFIG_BEGIN
config.supports_gl_core_version = 31;
config.window_width = 1;
config.window_height = 1;
config.window_visual = PIGLIT_GL_VISUAL_DOUBLE | PIGLIT_GL_VISUAL_RGBA;
+ config.khr_no_error_support = PIGLIT_NO_ERRORS;
PIGLIT_GL_TEST_CONFIG_END
const char *frag_src = "#version 140\n"
"#extension GL_ARB_shader_atomic_counters : enable\n"
"\n"
"flat in ivec4 vcolor;\n"
"out ivec4 fcolor;\n"
"\n"
"layout(binding=3, offset=4) uniform atomic_uint x0;\n"
diff --git a/tests/spec/arb_shader_atomic_counters/respecify-buffer.c b/tests/spec/arb_shader_atomic_counters/respecify-buffer.c
index ba0237a..e601ff8 100644
--- a/tests/spec/arb_shader_atomic_counters/respecify-buffer.c
+++ b/tests/spec/arb_shader_atomic_counters/respecify-buffer.c
@@ -30,20 +30,21 @@
* This demonstrates a mesa bug.
*/
#include "common.h"
PIGLIT_GL_TEST_CONFIG_BEGIN
config.supports_gl_core_version = 31;
config.window_visual = PIGLIT_GL_VISUAL_DOUBLE | PIGLIT_GL_VISUAL_RGBA;
+ config.khr_no_error_support = PIGLIT_NO_ERRORS;
PIGLIT_GL_TEST_CONFIG_END
int data[] = { 0, 1, 2, 3 };
float red[] = { 1, 0, 0 };
float green[] = { 0, 1, 0 };
float blue[] = { 0, 0, 1 };
float white[] = { 1, 1, 1 };
diff --git a/tests/spec/arb_shader_atomic_counters/semantics.c b/tests/spec/arb_shader_atomic_counters/semantics.c
index 931f030..7da3583 100644
--- a/tests/spec/arb_shader_atomic_counters/semantics.c
+++ b/tests/spec/arb_shader_atomic_counters/semantics.c
@@ -30,20 +30,21 @@
#include "common.h"
PIGLIT_GL_TEST_CONFIG_BEGIN
config.supports_gl_core_version = 31;
config.window_width = 1;
config.window_height = 1;
config.window_visual = PIGLIT_GL_VISUAL_DOUBLE | PIGLIT_GL_VISUAL_RGBA;
+ config.khr_no_error_support = PIGLIT_NO_ERRORS;
PIGLIT_GL_TEST_CONFIG_END
static bool
atomic_counters_expected_binding(GLuint prog,
GLuint binding)
{
GLint param;
glGetActiveAtomicCounterBufferiv(prog, 0,
diff --git a/tests/spec/arb_shader_atomic_counters/unique-id.c b/tests/spec/arb_shader_atomic_counters/unique-id.c
index e264bf0..dee11a5 100644
--- a/tests/spec/arb_shader_atomic_counters/unique-id.c
+++ b/tests/spec/arb_shader_atomic_counters/unique-id.c
@@ -33,20 +33,21 @@
#define L 256
#define N (L * L)
PIGLIT_GL_TEST_CONFIG_BEGIN
config.supports_gl_core_version = 31;
config.window_width = 1;
config.window_height = 1;
config.window_visual = PIGLIT_GL_VISUAL_DOUBLE | PIGLIT_GL_VISUAL_RGBA;
+ config.khr_no_error_support = PIGLIT_NO_ERRORS;
PIGLIT_GL_TEST_CONFIG_END
static bool
check(int dx, int dy, uint32_t start_value, uint32_t end_value)
{
const uint32_t base = MIN2(start_value, end_value);
const uint32_t size = MAX2(start_value, end_value) - base;
uint32_t pixels[L][L];
uint32_t *frequency = malloc(size * sizeof(uint32_t));
diff --git a/tests/spec/arb_shader_atomic_counters/unused-result.c b/tests/spec/arb_shader_atomic_counters/unused-result.c
index f2fde30..83dd43f 100644
--- a/tests/spec/arb_shader_atomic_counters/unused-result.c
+++ b/tests/spec/arb_shader_atomic_counters/unused-result.c
@@ -30,20 +30,21 @@
#include "common.h"
PIGLIT_GL_TEST_CONFIG_BEGIN
config.supports_gl_core_version = 31;
config.window_width = 1;
config.window_height = 1;
config.window_visual = PIGLIT_GL_VISUAL_DOUBLE | PIGLIT_GL_VISUAL_RGBA;
+ config.khr_no_error_support = PIGLIT_NO_ERRORS;
PIGLIT_GL_TEST_CONFIG_END
static bool
run_test_vertex(void)
{
const char *fs_source = "#version 140\n"
"out ivec4 fcolor;\n"
"void main() {\n"
" fcolor = ivec4(0);\n"
--
2.9.4
More information about the Piglit
mailing list