From: Uros Bizjak Date: Mon, 13 Dec 2004 06:38:45 +0000 (+0100) Subject: re PR target/14941 (i386.md strangeness in sse2_movsd) X-Git-Tag: releases/gcc-4.0.0~2213 X-Git-Url: https://gcc.gnu.org/git/?a=commitdiff_plain;h=4049b3760e3141906fa86ab9071d4bd86c6a8b13;p=gcc.git re PR target/14941 (i386.md strangeness in sse2_movsd) 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 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index b62d1622024d..5f22db1f8a0e 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2004-12-13 Uros Bizjak + + 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 PR rtl-opt/17186 diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md index 135017f643ba..f2c3c44dc591 100644 --- a/gcc/config/i386/i386.md +++ b/gcc/config/i386/i386.md @@ -20819,7 +20819,7 @@ (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") @@ -24249,7 +24249,7 @@ (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") @@ -24281,7 +24281,7 @@ (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}