Mesa (glsl2): glsl2: Allow a fragment shader to not write a color.

Eric Anholt anholt at kemper.freedesktop.org
Wed Jun 30 21:57:41 UTC 2010


Module: Mesa
Branch: glsl2
Commit: 97eba76b8c5fe60738716c4dce9404de417a7d34
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=97eba76b8c5fe60738716c4dce9404de417a7d34

Author: Eric Anholt <eric at anholt.net>
Date:   Wed Jun 30 14:51:50 2010 -0700

glsl2: Allow a fragment shader to not write a color.

I can't find any text justifying this check, and it caused a
reasonable-looking shader in glsl-bug-22603 (which writes only
gl_FragDepth) to fail.

---

 src/glsl/linker.cpp |    6 ------
 1 files changed, 0 insertions(+), 6 deletions(-)

diff --git a/src/glsl/linker.cpp b/src/glsl/linker.cpp
index 11fccba..5227d42 100644
--- a/src/glsl/linker.cpp
+++ b/src/glsl/linker.cpp
@@ -232,12 +232,6 @@ validate_fragment_shader_executable(struct gl_shader_program *prog,
    frag_color.run(shader->ir);
    frag_data.run(shader->ir);
 
-   if (!frag_color.variable_found() && !frag_data.variable_found()) {
-      linker_error_printf(prog, "fragment shader does not write to "
-			  "`gl_FragColor' or `gl_FragData'\n");
-      return false;
-   }
-
    if (frag_color.variable_found() && frag_data.variable_found()) {
       linker_error_printf(prog,  "fragment shader writes to both "
 			  "`gl_FragColor' and `gl_FragData'\n");




More information about the mesa-commit mailing list