diff options
author | Uros Bizjak <ubizjak@gmail.com> | 2008-08-03 20:45:17 +0200 |
---|---|---|
committer | Uros Bizjak <uros@gcc.gnu.org> | 2008-08-03 20:45:17 +0200 |
commit | b7c9c5ab7f1a599429f439a5fdc0391630e0d67c (patch) | |
tree | 377aedd61f6db6beb6d80109aa639cbedcf86d89 | |
parent | 2266066678883fb62e0b1eab42e06c5c8a267a48 (diff) | |
download | gcc-b7c9c5ab7f1a599429f439a5fdc0391630e0d67c.zip gcc-b7c9c5ab7f1a599429f439a5fdc0391630e0d67c.tar.gz gcc-b7c9c5ab7f1a599429f439a5fdc0391630e0d67c.tar.bz2 |
mmx.md (*mov<mode>_internal_rex64): Use Yi instead of x to avoid inter-unit moves for !TARGET_INTER_UNIT_MOVES.
* config/i386/mmx.md (*mov<mode>_internal_rex64): Use Yi instead of x
to avoid inter-unit moves for !TARGET_INTER_UNIT_MOVES.
(*movv2sf_internal_rex64): Ditto.
From-SVN: r138566
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/config/i386/mmx.md | 8 |
2 files changed, 10 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index efb5505..b3bdb04 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2008-08-03 Uros Bizjak <ubizjak@gmail.com> + + * config/i386/mmx.md (*mov<mode>_internal_rex64): Use Yi instead of x + to avoid inter-unit moves for !TARGET_INTER_UNIT_MOVES. + (*movv2sf_internal_rex64): Ditto. + 2008-08-03 Jan Hubicka <jh@suse.cz> * optabs.c (expand_binop, expand_builtin_pow, expand_builtin_powi, diff --git a/gcc/config/i386/mmx.md b/gcc/config/i386/mmx.md index ca09587..8e77a30 100644 --- a/gcc/config/i386/mmx.md +++ b/gcc/config/i386/mmx.md @@ -65,9 +65,9 @@ (define_insn "*mov<mode>_internal_rex64" [(set (match_operand:MMXMODEI8 0 "nonimmediate_operand" - "=rm,r,!?y,!?y ,m ,!y,*Y2,x,x ,m,r,x") + "=rm,r,!?y,!?y ,m ,!y,*Y2,x,x ,m,r,Yi") (match_operand:MMXMODEI8 1 "vector_move_operand" - "Cr ,m,C ,!?ym,!?y,*Y2,!y,C,xm,x,x,r"))] + "Cr ,m,C ,!?ym,!?y,*Y2,!y,C,xm,x,Yi,r"))] "TARGET_64BIT && TARGET_MMX && !(MEM_P (operands[0]) && MEM_P (operands[1]))" "@ @@ -124,9 +124,9 @@ (define_insn "*movv2sf_internal_rex64" [(set (match_operand:V2SF 0 "nonimmediate_operand" - "=rm,r ,!?y,!?y ,m ,!y,*Y2,x,x,x,m,r,x") + "=rm,r ,!?y,!?y ,m ,!y,*Y2,x,x,x,m,r,Yi") (match_operand:V2SF 1 "vector_move_operand" - "Cr ,m ,C ,!?ym,!y,*Y2,!y,C,x,m,x,x,r"))] + "Cr ,m ,C ,!?ym,!y,*Y2,!y,C,x,m,x,Yi,r"))] "TARGET_64BIT && TARGET_MMX && !(MEM_P (operands[0]) && MEM_P (operands[1]))" "@ |