diff options
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/config/i386/i386.md | 3 |
2 files changed, 8 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 7246098..0ab715f 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2009-02-15 H.J. Lu <hongjiu.lu@intel.com> + + PR target/39196 + * config/i386/i386.md: Restrict the new peephole2 to move + between MMX/SSE registers. + 2009-02-15 Richard Guenther <rguenther@suse.de> Revert diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md index f8a4209..de669ba 100644 --- a/gcc/config/i386/i386.md +++ b/gcc/config/i386/i386.md @@ -20753,7 +20753,8 @@ [(match_dup 0) (match_operand 2 "memory_operand" "")]))] "operands[0] != operands[1] - && (MMX_REG_P (operands[0]) || SSE_REG_P (operands[0]))" + && ((MMX_REG_P (operands[0]) && MMX_REG_P (operands[1])) + || (SSE_REG_P (operands[0]) && SSE_REG_P (operands[1])))" [(set (match_dup 0) (match_dup 2)) (set (match_dup 0) (match_op_dup 3 [(match_dup 0) (match_dup 1)]))] |