aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan Hubicka <jh@suse.cz>2003-04-07 22:22:50 +0200
committerJan Hubicka <hubicka@gcc.gnu.org>2003-04-07 20:22:50 +0000
commit1d5b4e0b115a05febfe03ec880487e40aec0e9a5 (patch)
tree57b2c6a30b7ecc5dee4d86da542ab911416794c0
parent60ba917e16cb9106cb89a182690d5e8351bbf83e (diff)
downloadgcc-1d5b4e0b115a05febfe03ec880487e40aec0e9a5.zip
gcc-1d5b4e0b115a05febfe03ec880487e40aec0e9a5.tar.gz
gcc-1d5b4e0b115a05febfe03ec880487e40aec0e9a5.tar.bz2
re PR target/10077 (gcc -msse2 generates movd to move dwords between xmm regs)
PR target/10077 * i386.md (movsi_1, movsi_nointerunit_1): Fix SSEMOV alternative. From-SVN: r65346
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/config/i386/i386.md8
2 files changed, 9 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 975d99e..681ba90 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+Mon Apr 7 22:19:59 CEST 2003 Jan Hubicka <jh@suse.cz>
+
+ PR target/10077
+ * i386.md (movsi_1, movsi_nointerunit_1): Fix SSEMOV alternative.
+
2003-04-07 Eric Botcazou <ebotcazou@libertysurf.fr>
* doc/rtl.texi (Comparison operations): Update to
diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md
index 0c5c127..434bf3a 100644
--- a/gcc/config/i386/i386.md
+++ b/gcc/config/i386/i386.md
@@ -1170,12 +1170,12 @@
switch (get_attr_type (insn))
{
case TYPE_SSEMOV:
- if (get_attr_mode (insn) == TImode)
+ if (get_attr_mode (insn) == MODE_TI)
return "movdqa\t{%1, %0|%0, %1}";
return "movd\t{%1, %0|%0, %1}";
case TYPE_MMXMOV:
- if (get_attr_mode (insn) == DImode)
+ if (get_attr_mode (insn) == MODE_DI)
return "movq\t{%1, %0|%0, %1}";
return "movd\t{%1, %0|%0, %1}";
@@ -1209,12 +1209,12 @@
switch (get_attr_type (insn))
{
case TYPE_SSEMOV:
- if (get_attr_mode (insn) == TImode || which_alternative == 9)
+ if (get_attr_mode (insn) == MODE_TI)
return "movdqa\t{%1, %0|%0, %1}";
return "movd\t{%1, %0|%0, %1}";
case TYPE_MMXMOV:
- if (get_attr_mode (insn) == DImode)
+ if (get_attr_mode (insn) == MODE_DI)
return "movq\t{%1, %0|%0, %1}";
return "movd\t{%1, %0|%0, %1}";