Commit 5794139a by Jan Hubicka Committed by Jan Hubicka

* i386.md (SSE cmov splitter): Handle memory operand in operand 5.

From-SVN: r61506
parent 0a18ddf9
Mon Jan 20 14:36:23 CET 2003 Jan Hubicka <jh@suse.cz>
* i386.md (SSE cmov splitter): Handle memory operand in operand 5.
2003-01-20 Andreas Schwab <schwab@suse.de> 2003-01-20 Andreas Schwab <schwab@suse.de>
* system.h: Don't declare strsignal if the decl test hasn't been * system.h: Don't declare strsignal if the decl test hasn't been
......
...@@ -17229,7 +17229,7 @@ ...@@ -17229,7 +17229,7 @@
(define_split (define_split
[(set (match_operand 0 "register_operand" "") [(set (match_operand 0 "register_operand" "")
(if_then_else (match_operator 1 "comparison_operator" (if_then_else (match_operator 1 "comparison_operator"
[(match_operand 4 "register_operand" "") [(match_operand 4 "nonimmediate_operand" "")
(match_operand 5 "nonimmediate_operand" "")]) (match_operand 5 "nonimmediate_operand" "")])
(match_operand 2 "nonmemory_operand" "") (match_operand 2 "nonmemory_operand" "")
(match_operand 3 "nonmemory_operand" "")))] (match_operand 3 "nonmemory_operand" "")))]
...@@ -17255,13 +17255,16 @@ ...@@ -17255,13 +17255,16 @@
} }
} }
PUT_MODE (operands[1], GET_MODE (operands[0])); PUT_MODE (operands[1], GET_MODE (operands[0]));
if (!sse_comparison_operator (operands[1], VOIDmode)) if (!sse_comparison_operator (operands[1], VOIDmode)
|| !rtx_equal_p (operands[0], operands[4]))
{ {
rtx tmp = operands[5]; rtx tmp = operands[5];
operands[5] = operands[4]; operands[5] = operands[4];
operands[4] = tmp; operands[4] = tmp;
PUT_CODE (operands[1], swap_condition (GET_CODE (operands[1]))); PUT_CODE (operands[1], swap_condition (GET_CODE (operands[1])));
} }
if (!rtx_equal_p (operands[0], operands[4]))
abort ();
if (const0_operand (operands[2], GET_MODE (operands[0]))) if (const0_operand (operands[2], GET_MODE (operands[0])))
{ {
operands[7] = operands[3]; operands[7] = operands[3];
......
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