[Piglit] [PATCH] glsl-1.50: test gl_PrimitiveID xfb
Ilia Mirkin
imirkin at alum.mit.edu
Sun Jan 5 23:05:51 UTC 2020
This appears to trigger an issue on at least GP108 due to an odd shader
export write restriction. And we should be testing gl_PrimitiveID
anyways.
Signed-off-by: Ilia Mirkin <imirkin at alum.mit.edu>
---
.../execution/geometry/transform-feedback-builtins.c | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/tests/spec/glsl-1.50/execution/geometry/transform-feedback-builtins.c b/tests/spec/glsl-1.50/execution/geometry/transform-feedback-builtins.c
index cfd71c944..4144c7cb1 100644
--- a/tests/spec/glsl-1.50/execution/geometry/transform-feedback-builtins.c
+++ b/tests/spec/glsl-1.50/execution/geometry/transform-feedback-builtins.c
@@ -60,6 +60,7 @@ static const char *gs_template =
"{\n"
" for (int i = 0; i < 3; i++) {\n"
" gl_Layer = 2 * i + 1;\n"
+ " gl_PrimitiveID = gl_PrimitiveIDIn + i;\n"
"%s"
" EmitVertex();\n"
" }\n"
@@ -71,16 +72,17 @@ static const char *gs_template =
* above, the output should be a sequence of integers defined in this
* array.
*/
-static const int expected[2][3] = {{1, 3, 5}, /* gl_Layer */
+static const int expected[3][3] = {{1, 3, 5}, /* gl_Layer */
+ {0, 1, 2}, /* gl_PrimitiveID */
{1, 2, 3}}; /* gl_ViewportIndex */
-static const char *varyings[] = {"gl_Layer", "gl_ViewportIndex"};
+static const char *varyings[] = {"gl_Layer", "gl_PrimitiveID", "gl_ViewportIndex"};
void
piglit_init(int argc, char **argv)
{
int i, j, num_xfb_buffers;
- GLuint prog, vao, xfb_buf[2];
+ GLuint prog, vao, xfb_buf[3];
const GLint *readback;
char *gstext;
bool pass = true;
--
2.24.1
More information about the Piglit
mailing list