diff options
author | Kenneth Graunke <[email protected]> | 2012-05-10 16:10:15 -0700 |
---|---|---|
committer | Kenneth Graunke <[email protected]> | 2012-05-14 15:13:55 -0700 |
commit | a4e9b5a768d2d9e59b6054148afb6a6b94c0e4e6 (patch) | |
tree | 0a83adee4d9020077f13a4a379060a9d53ae88ff /src/mesa/drivers/dri/i965/Makefile.sources | |
parent | d1029f99884e2ba7f663765274cd6bdb4f82feed (diff) |
i965/fs: Add a local common subexpression elimination pass.
Total instructions: 18210 -> 17836
49/163 programs affected (30.1%)
12888 -> 12514 instructions in affected programs (2.9% reduction)
This reduces Lightsmark's "Scale down filter" shader from 395
instructions to 283, a whopping 28%. It also reduces register pressure
significantly: the SIMD8 program now uses 29 registers instead of 101,
giving us more than enough room for a SIMD16 program.
v2: Add && !inst->conditional_mod to the "skip some instructions" check.
Signed-off-by: Kenneth Graunke <[email protected]>
Reviewed-by: Ian Romanick <[email protected]>
Reviewed-by: Eric Anholt <[email protected]>
Diffstat (limited to 'src/mesa/drivers/dri/i965/Makefile.sources')
-rw-r--r-- | src/mesa/drivers/dri/i965/Makefile.sources | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/mesa/drivers/dri/i965/Makefile.sources b/src/mesa/drivers/dri/i965/Makefile.sources index c99a034a462..961e6ad2f99 100644 --- a/src/mesa/drivers/dri/i965/Makefile.sources +++ b/src/mesa/drivers/dri/i965/Makefile.sources @@ -113,6 +113,7 @@ i965_CXX_FILES = \ brw_cubemap_normalize.cpp \ brw_fs.cpp \ brw_fs_cfg.cpp \ + brw_fs_cse.cpp \ brw_fs_emit.cpp \ brw_fs_live_variables.cpp \ brw_fs_visitor.cpp \ |