ir_to_mesa: Don't do lowering passes on an errored-out shader.

This commit is contained in:
Eric Anholt 2010-07-19 09:44:30 -07:00
parent b29d31cd67
commit 4802fd905a

View file

@ -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;