]> gcc.gnu.org Git - gcc.git/commitdiff
re PR target/14941 (i386.md strangeness in sse2_movsd)
authorUros Bizjak <uros@kss-loka.si>
Mon, 13 Dec 2004 06:38:45 +0000 (07:38 +0100)
committerUros Bizjak <uros@gcc.gnu.org>
Mon, 13 Dec 2004 06:38:45 +0000 (07:38 +0100)
PR target/14941
PR target/18503
* config/i386/i386.md (sse_movss, sse2_movsd, sse2_movhpd):
Fix wrong vec_merge selector bitmask.

From-SVN: r92077

gcc/ChangeLog
gcc/config/i386/i386.md

index b62d1622024d061289118aca8b0cd3a8c6092a3e..5f22db1f8a0e927034f53a364890fd49a40d03f1 100644 (file)
@@ -1,3 +1,10 @@
+2004-12-13 Uros Bizjak <uros@kss-loka.si>
+
+       PR target/14941
+       PR target/18503
+       * config/i386/i386.md (sse_movss, sse2_movsd, sse2_movhpd):
+       Fix wrong vec_merge selector bitmask.
+
 2004-12-12  Richard Henderson  <rth@redhat.com>
 
        PR rtl-opt/17186
index 135017f643baeab2a201e902e84306803b761330..f2c3c44dc591b4313f28579218c20fdc671fda5e 100644 (file)
        (vec_merge:V4SF
         (match_operand:V4SF 1 "register_operand" "0")
         (match_operand:V4SF 2 "register_operand" "x")
-        (const_int 1)))]
+        (const_int 14)))]
   "TARGET_SSE"
   "movss\t{%2, %0|%0, %2}"
   [(set_attr "type" "ssemov")
        (vec_merge:V2DF
         (match_operand:V2DF 1 "nonimmediate_operand" "0,0")
         (match_operand:V2DF 2 "nonimmediate_operand" "m,x")
-        (const_int 2)))]
+        (const_int 1)))]
   "TARGET_SSE2 && (GET_CODE (operands[1]) == MEM || GET_CODE (operands[2]) == MEM)"
   "movhpd\t{%2, %0|%0, %2}"
   [(set_attr "type" "ssecvt")
        (vec_merge:V2DF
         (match_operand:V2DF 1 "nonimmediate_operand" "0,0,0")
         (match_operand:V2DF 2 "nonimmediate_operand" "x,m,x")
-        (const_int 1)))]
+        (const_int 2)))]
   "TARGET_SSE2 && ix86_binary_operator_ok (UNKNOWN, V2DFmode, operands)"
   "@movsd\t{%2, %0|%0, %2}
     movlpd\t{%2, %0|%0, %2}
This page took 0.104575 seconds and 5 git commands to generate.