diff options
author | marha <marha@users.sourceforge.net> | 2011-08-08 13:46:22 +0200 |
---|---|---|
committer | marha <marha@users.sourceforge.net> | 2011-08-08 13:46:22 +0200 |
commit | f8e53281a55d43ae1b17f848f28579d74d877835 (patch) | |
tree | 99933c3a0638a93e28ee2e1d5a2c23c97b0a94ba /mesalib/src/mesa/program/prog_optimize.c | |
parent | 67e52c577364b17e7339b04faf17c77cd3ad9b59 (diff) | |
parent | 0c2b3e6fd26158cb97f4210cc891e218801b4b25 (diff) | |
download | vcxsrv-f8e53281a55d43ae1b17f848f28579d74d877835.tar.gz vcxsrv-f8e53281a55d43ae1b17f848f28579d74d877835.tar.bz2 vcxsrv-f8e53281a55d43ae1b17f848f28579d74d877835.zip |
Merge remote-tracking branch 'origin/released'
Conflicts:
mesalib/src/mesa/main/mtypes.h
mesalib/src/mesa/main/shaderapi.c
mesalib/src/mesa/program/ir_to_mesa.cpp
mesalib/src/mesa/program/prog_optimize.c
mesalib/src/mesa/state_tracker/st_cb_blit.c
xorg-server/xkeyboard-config/rules/base.o_s.part
xorg-server/xkeyboard-config/rules/base.xml.in
Diffstat (limited to 'mesalib/src/mesa/program/prog_optimize.c')
-rw-r--r-- | mesalib/src/mesa/program/prog_optimize.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/mesalib/src/mesa/program/prog_optimize.c b/mesalib/src/mesa/program/prog_optimize.c index bb908067d..70e2d85eb 100644 --- a/mesalib/src/mesa/program/prog_optimize.c +++ b/mesalib/src/mesa/program/prog_optimize.c @@ -472,8 +472,7 @@ can_downward_mov_be_modifed(const struct prog_instruction *mov) mov->SrcReg[0].HasIndex2 == 0 &&
mov->SrcReg[0].RelAddr2 == 0 &&
mov->DstReg.RelAddr == 0 &&
- mov->DstReg.CondMask == COND_TR &&
- mov->SaturateMode == SATURATE_OFF;
+ mov->DstReg.CondMask == COND_TR;
}
@@ -482,7 +481,8 @@ can_upward_mov_be_modifed(const struct prog_instruction *mov) {
return
can_downward_mov_be_modifed(mov) &&
- mov->DstReg.File == PROGRAM_TEMPORARY;
+ mov->DstReg.File == PROGRAM_TEMPORARY &&
+ mov->SaturateMode == SATURATE_OFF;
}
@@ -657,6 +657,8 @@ _mesa_merge_mov_into_inst(struct prog_instruction *inst, if (mask != (inst->DstReg.WriteMask & mask))
return GL_FALSE;
+ inst->SaturateMode |= mov->SaturateMode;
+
/* Depending on the instruction, we may need to recompute the swizzles.
* Also, some other instructions (like TEX) are not linear. We will only
* consider completely active sources and destinations
|