Commit 4049b376 by Uros Bizjak Committed by Uros Bizjak

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
parent b80a3161
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
......
......@@ -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}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment