Module: Mesa Branch: master Commit: 9b075cb9fa9eb6a95d0816283ef01ae72dafa680 URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=9b075cb9fa9eb6a95d0816283ef01ae72dafa680
Author: Eric Anholt <[email protected]> Date: Tue Aug 31 13:02:59 2010 -0700 ir_to_mesa: When emitting a pixel kill, flag that we did so. Both i965 and swrast rely on UsesKill to determine whether to do early depth writes. Fixes glsl-fs-discard-02. Bug #29835. --- src/mesa/program/ir_to_mesa.cpp | 3 +++ 1 files changed, 3 insertions(+), 0 deletions(-) diff --git a/src/mesa/program/ir_to_mesa.cpp b/src/mesa/program/ir_to_mesa.cpp index 8f39a22..57458d0 100644 --- a/src/mesa/program/ir_to_mesa.cpp +++ b/src/mesa/program/ir_to_mesa.cpp @@ -2041,9 +2041,12 @@ ir_to_mesa_visitor::visit(ir_return *ir) void ir_to_mesa_visitor::visit(ir_discard *ir) { + struct gl_fragment_program *fp = (struct gl_fragment_program *)this->prog; + assert(ir->condition == NULL); /* FINISHME */ ir_to_mesa_emit_op0(ir, OPCODE_KIL_NV); + fp->UsesKill = GL_TRUE; } void _______________________________________________ mesa-commit mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/mesa-commit
