From: Eric Anholt Date: Mon, 19 Jul 2010 16:44:30 +0000 (-0700) Subject: ir_to_mesa: Don't do lowering passes on an errored-out shader. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=4802fd905ae7c1a1122ec71c0556c2b19214a7fd;p=mesa.git ir_to_mesa: Don't do lowering passes on an errored-out shader. --- diff --git a/src/mesa/shader/ir_to_mesa.cpp b/src/mesa/shader/ir_to_mesa.cpp index c75a13d06ef..a7799cc01db 100644 --- a/src/mesa/shader/ir_to_mesa.cpp +++ b/src/mesa/shader/ir_to_mesa.cpp @@ -2185,13 +2185,13 @@ _mesa_glsl_compile_shader(GLcontext *ctx, struct gl_shader *shader) if (!state->error && !state->translation_unit.is_empty()) _mesa_ast_to_hir(shader->ir, state); - /* Lowering */ - do_mat_op_to_vec(shader->ir); - do_mod_to_fract(shader->ir); - do_div_to_mul_rcp(shader->ir); - - /* Optimization passes */ if (!state->error && !shader->ir->is_empty()) { + /* Lowering */ + do_mat_op_to_vec(shader->ir); + do_mod_to_fract(shader->ir); + do_div_to_mul_rcp(shader->ir); + + /* Optimization passes */ bool progress; do { progress = false;