From: Tom Stellard Date: Sat, 14 May 2011 06:29:50 +0000 (-0700) Subject: r300/compiler: Enable reg rename pass on r500 and run it before optimizations X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=0dc97e7fd49a5b8db25b95a1020fc598dba5cf65;p=mesa.git r300/compiler: Enable reg rename pass on r500 and run it before optimizations The scheduler and the register allocator are now smart enough to handle it. --- diff --git a/src/gallium/drivers/r300/compiler/r3xx_fragprog.c b/src/gallium/drivers/r300/compiler/r3xx_fragprog.c index bb6c010e8e3..70354ab8164 100644 --- a/src/gallium/drivers/r300/compiler/r3xx_fragprog.c +++ b/src/gallium/drivers/r300/compiler/r3xx_fragprog.c @@ -144,13 +144,10 @@ void r3xx_compile_fragment_program(struct r300_fragment_program_compiler* c) {"native rewrite", 1, !is_r500, rc_local_transform, native_rewrite_r300}, {"deadcode", 1, opt, rc_dataflow_deadcode, dataflow_outputs_mark_use}, {"emulate loops", 1, !is_r500, rc_emulate_loops, NULL}, + {"register rename", 1, !is_r500 || opt, rc_rename_regs, NULL}, {"dataflow optimize", 1, opt, rc_optimize, NULL}, {"dataflow swizzles", 1, 1, rc_dataflow_swizzles, NULL}, {"dead constants", 1, 1, rc_remove_unused_constants, &c->code->constants_remap_table}, - /* This pass makes it easier for the scheduler to group TEX - * instructions and reduces the chances of creating too - * many texture indirections.*/ - {"register rename", 1, !is_r500, rc_rename_regs, NULL}, {"pair translate", 1, 1, rc_pair_translate, NULL}, {"pair scheduling", 1, 1, rc_pair_schedule, NULL}, {"dead sources", 1, 1, rc_pair_remove_dead_sources, NULL},