diff options
author | Tom Stellard <tstellar@gmail.com> | 2010-07-13 21:25:27 -0700 |
---|---|---|
committer | Tom Stellard <tstellar@gmail.com> | 2010-09-10 18:18:08 -0700 |
commit | 63432ecfce5415fbf07f1781ec77b5ea3efff599 (patch) | |
tree | 903818a193704d2053ce79cf0c8a2d43c3cbaa88 /src/gallium/drivers/r300/r300_fs.c | |
parent | d8a36620089e72d431ae853ec168f193f3376782 (diff) | |
download | external_mesa3d-63432ecfce5415fbf07f1781ec77b5ea3efff599.zip external_mesa3d-63432ecfce5415fbf07f1781ec77b5ea3efff599.tar.gz external_mesa3d-63432ecfce5415fbf07f1781ec77b5ea3efff599.tar.bz2 |
r300/compiler: Enable presubtract sources
The r300 compiler can now emit instructions that select from the presubtract
source. A peephole optimization has been added to convert instructions like:
ADD Temp[0].x, none.1, -Temp[1].x into the INV (1 - src0) presubtract
operation.
Diffstat (limited to 'src/gallium/drivers/r300/r300_fs.c')
-rw-r--r-- | src/gallium/drivers/r300/r300_fs.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/gallium/drivers/r300/r300_fs.c b/src/gallium/drivers/r300/r300_fs.c index b9f4d77..b8dab88 100644 --- a/src/gallium/drivers/r300/r300_fs.c +++ b/src/gallium/drivers/r300/r300_fs.c @@ -387,6 +387,7 @@ static void r300_translate_fragment_shader( compiler.Base.is_r500 = r300->screen->caps.is_r500; compiler.Base.disable_optimizations = DBG_ON(r300, DBG_NO_OPT); compiler.Base.has_half_swizzles = TRUE; + compiler.Base.has_presub = TRUE; compiler.Base.max_temp_regs = compiler.Base.is_r500 ? 128 : 32; compiler.Base.max_constants = compiler.Base.is_r500 ? 256 : 32; compiler.Base.max_alu_insts = compiler.Base.is_r500 ? 512 : 64; |