This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
PATCH: Fix a typo in sse.md
- From: "H.J. Lu" <hjl dot tools at gmail dot com>
- To: "GCC Patches" <gcc-patches at gcc dot gnu dot org>
- Date: Fri, 28 Mar 2008 10:21:27 -0700
- Subject: PATCH: Fix a typo in sse.md
Hi,
sse.md has
(define_insn "*and<mode>3"
[(set (match_operand:SSEMODEF2P 0 "register_operand" "=x")
(and:SSEMODEF2P
(match_operand:SSEMODEF2P 1 "nonimmediate_operand" "%0")
(match_operand:SSEMODEF2P 2 "nonimmediate_operand" "xm")))]
"SSE_VEC_FLOAT_MODE_P (<MODE>mode)
&& ix86_binary_operator_ok (AND, V4SFmode, operands)"
"andp<ssemodesuffixf2c>\t{%2, %0|%0, %2}"
[(set_attr "type" "sselog")
(set_attr "mode" "<MODE>")])
Shouldn't it be
&& ix86_binary_operator_ok (AND, <MODE>mode, operands)"
instead of
&& ix86_binary_operator_ok (AND, V4SFmode, operands)"
Here is a patch. OK for trunk if pass on Linux/Intel64?
Thanks.
H..J.
2008-03-28 H.J. Lu <hongjiu.lu@intel.com>
* config/i386/sse.md (*and<mode>3): Pass <MODE>mode instead
of V4SFmode to ix86_binary_operator_ok.
Index: gcc/config/i386/sse.md
===================================================================
--- gcc/config/i386/sse.md (revision 1917)
+++ gcc/config/i386/sse.md (working copy)
@@ -972,7 +972,7 @@
(match_operand:SSEMODEF2P 1 "nonimmediate_operand" "%0")
(match_operand:SSEMODEF2P 2 "nonimmediate_operand" "xm")))]
"SSE_VEC_FLOAT_MODE_P (<MODE>mode)
- && ix86_binary_operator_ok (AND, V4SFmode, operands)"
+ && ix86_binary_operator_ok (AND, <MODE>mode, operands)"
"andp<ssemodesuffixf2c>\t{%2, %0|%0, %2}"
[(set_attr "type" "sselog")
(set_attr "mode" "<MODE>")])