summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Stellard <tstellar@gmail.com>2011-05-13 23:29:50 -0700
committerTom Stellard <tstellar@gmail.com>2011-10-14 18:30:14 -0700
commit0dc97e7fd49a5b8db25b95a1020fc598dba5cf65 (patch)
treeef08989274e525fa06177db656100f58b2b02326
parent163629fd05166b78d70c2c26f4a922b296e8999d (diff)
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.
-rw-r--r--src/gallium/drivers/r300/compiler/r3xx_fragprog.c5
1 files changed, 1 insertions, 4 deletions
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},