alpha-to-coverage-dual-src-blend tests were broken after
commit 44456ba. This patch fixes the tests by allowing
frag_out_1 for dual-src-blend tests even with
NUM_ATTACHMENTS == 1. In case of dual source blending both
frag_out_0 and frag_out_1 go to color buffer 0 with color
index 0 and 1 respectively.
See glBindFragDataLocationIndexed() for details.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=91151
Signed-off-by: Anuj Phogat <[email protected]>
Cc: Eric Anholt <[email protected]>
Cc: Mark Janes <[email protected]>
---
 tests/spec/ext_framebuffer_multisample/draw-buffers-common.cpp | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/tests/spec/ext_framebuffer_multisample/draw-buffers-common.cpp 
b/tests/spec/ext_framebuffer_multisample/draw-buffers-common.cpp
index 0d5adef..893b486 100644
--- a/tests/spec/ext_framebuffer_multisample/draw-buffers-common.cpp
+++ b/tests/spec/ext_framebuffer_multisample/draw-buffers-common.cpp
@@ -130,8 +130,12 @@ static const char *frag_template =
        "#define OUT_TYPE %s\n"
        "#if __VERSION__ == 130\n"
        "out OUT_TYPE frag_out_0;\n"
+       "#if DUAL_SRC_BLEND\n"
+       "out vec4 frag_out_1;\n"
+       "#elif NUM_ATTACHMENTS > 1\n"
        "out vec4 frag_out_1;\n"
        "out vec4 frag_out_2;\n"
+       "#endif\n"
        "#else\n"
        "#define frag_out_0 gl_FragData[0]\n"
        "#if NUM_ATTACHMENTS > 1\n"
@@ -144,16 +148,14 @@ static const char *frag_template =
        "void main()\n"
        "{\n"
        "  frag_out_0 = frag_0_color;\n"
-       "#if NUM_ATTACHMENTS > 1\n"
        "  #if DUAL_SRC_BLEND\n"
        "    frag_out_1 = vec4(color.rgb, 1.0 - color.a / 2.0);\n"
-       "  #elif ALPHA_TO_COVERAGE\n"
+       "  #elif ALPHA_TO_COVERAGE && NUM_ATTACHMENTS > 1\n"
        "    frag_out_1 = vec4(color.rgb, color.a / 2);\n"
        "    frag_out_2 = vec4(color.rgb, color.a / 4);\n"
-       "  #else\n"
+       "  #elif NUM_ATTACHMENTS > 1\n"
        "    frag_out_1 = frag_out_2 = color;\n"
        "  #endif\n"
-       " #endif\n"
        "}\n";
 
 const char *
-- 
1.9.3

_______________________________________________
Piglit mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/piglit

Reply via email to