i965: Apply the same set of lowering passes to new FS as to Mesa IR.

While much of this we will want to support natively, this should make
the task of reaching the Mesa IR backend's quality easier.

Fixes:
glsl-fs-main-return.
This commit is contained in:
Eric Anholt 2010-09-27 21:35:54 -07:00
parent e10508812a
commit 1723fdb3f0

View file

@ -141,7 +141,22 @@ brw_link_shader(GLcontext *ctx, struct gl_shader_program *prog)
do {
progress = false;
progress = do_lower_jumps(shader->ir, true, true,
true, /* main return */
false, /* continue */
false /* loops */
) || progress;
progress = do_common_optimization(shader->ir, true, 32) || progress;
progress = lower_noise(shader->ir) || progress;
progress =
lower_variable_index_to_cond_assign(shader->ir,
GL_TRUE, /* input */
GL_TRUE, /* output */
GL_TRUE, /* temp */
GL_TRUE /* uniform */
) || progress;
} while (progress);
validate_ir_tree(shader->ir);