diff options
author | Ian Romanick <ian.d.romanick@intel.com> | 2011-02-10 15:48:27 -0800 |
---|---|---|
committer | Ian Romanick <ian.d.romanick@intel.com> | 2011-08-16 14:38:39 -0700 |
commit | 54c48a95e6e0573886433f94ac83293876ffe03d (patch) | |
tree | cfac8d58d943e3d72a97b0df8f0afc2cf01a39e8 /src/mesa/program/prog_optimize.h | |
parent | ff2cfb8989cd79218dfe2cd8c3de20f1ca7418e6 (diff) | |
download | external_mesa3d-54c48a95e6e0573886433f94ac83293876ffe03d.zip external_mesa3d-54c48a95e6e0573886433f94ac83293876ffe03d.tar.gz external_mesa3d-54c48a95e6e0573886433f94ac83293876ffe03d.tar.bz2 |
mesa: Add partial constant propagation pass for Mesa IR
This cleans up some code generated by the IR-to-Mesa pass for i915.
In particular, some shaders involving arrays of constant matrices
result in really bad code.
v2: Silence several warnings from merging the gl_constant_value work.
Fix DP[23] folding. Add support for a bunch more opcodes that appear
in piglit runs on i915.
Reviewed-by: Eric Anholt <eric@anholt.net>
Diffstat (limited to 'src/mesa/program/prog_optimize.h')
-rw-r--r-- | src/mesa/program/prog_optimize.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/mesa/program/prog_optimize.h b/src/mesa/program/prog_optimize.h index 463f5fc..9854fb7 100644 --- a/src/mesa/program/prog_optimize.h +++ b/src/mesa/program/prog_optimize.h @@ -44,4 +44,7 @@ _mesa_find_temp_intervals(const struct prog_instruction *instructions, extern void _mesa_optimize_program(struct gl_context *ctx, struct gl_program *program); +extern GLboolean +_mesa_constant_fold(struct gl_program *prog); + #endif |