[Piglit] [PATCH] version-mixing: gl_FragColor built-in is not available in core profile >= 4.20

Ilia Mirkin imirkin at alum.mit.edu
Wed Apr 13 01:13:38 UTC 2016


Reviewed-by: Ilia Mirkin <imirkin at alum.mit.edu>

On Tue, Apr 12, 2016 at 9:00 PM, Nicolai Hähnle <nhaehnle at gmail.com> wrote:
> From: Nicolai Hähnle <nicolai.haehnle at amd.com>
>
> ... so just use an explicit out declaration unconditionally for such versions.
> ---
>  tests/shaders/version-mixing.c | 25 ++++++++++++++++++++++++-
>  1 file changed, 24 insertions(+), 1 deletion(-)
>
> diff --git a/tests/shaders/version-mixing.c b/tests/shaders/version-mixing.c
> index 1948c9e..b349d46 100644
> --- a/tests/shaders/version-mixing.c
> +++ b/tests/shaders/version-mixing.c
> @@ -104,6 +104,24 @@ static const char *interstage_fs =
>         "  gl_FragColor = vec4(0.0);\n"
>         "}\n";
>
> +/* Section 1.2.1 (Summary of Changes from Version 4.10) of the OpenGL
> + * Shading Language 4.20 spec says:
> + *
> + *     Move these previously deprecated features to be only in the
> + *     compatibility profile:
> + *       ...
> + *       * The built-in variabls gl_FragColor and gl_FragData.
> + */
> +static const char *interstage_fs_420 =
> +       "#version %d\n"
> +       "\n"
> +       "out vec4 color;\n"
> +       "\n"
> +       "void main()\n"
> +       "{\n"
> +       "  color = vec4(0.0);\n"
> +       "}\n";
> +
>  static const char *intrastage_vs1 =
>         "#version %d\n"
>         "\n"
> @@ -213,8 +231,13 @@ test_interstage(int version_vs, int version_other, bool use_gs)
>                         return false;
>                 }
>         } else {
> +               const char *fs = interstage_fs;
> +
> +               if (version_other >= 420)
> +                       fs = interstage_fs_420;
> +
>                 if (!try_attach_shader(prog, "fragment shader",
> -                                      GL_FRAGMENT_SHADER, interstage_fs,
> +                                      GL_FRAGMENT_SHADER, fs,
>                                        version_other)) {
>                         glDeleteProgram(prog);
>                         return false;
> --
> 2.5.0
>
> _______________________________________________
> Piglit mailing list
> Piglit at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/piglit


More information about the Piglit mailing list