Commit cac58785 by Stan Cox

(cmpxf*): XF compare cannot have mem operands.

From-SVN: r11396
parent 049b9f44
...@@ -382,11 +382,10 @@ ...@@ -382,11 +382,10 @@
(define_insn "" (define_insn ""
[(set (cc0) [(set (cc0)
(match_operator 2 "VOIDmode_compare_op" (match_operator 2 "VOIDmode_compare_op"
[(match_operand:XF 0 "nonimmediate_operand" "f,fm") [(match_operand:XF 0 "register_operand" "f")
(match_operand:XF 1 "nonimmediate_operand" "fm,f")])) (match_operand:XF 1 "register_operand" "f")]))
(clobber (match_scratch:HI 3 "=a,a"))] (clobber (match_scratch:HI 3 "=a"))]
"TARGET_80387 "TARGET_80387"
&& (GET_CODE (operands[0]) != MEM || GET_CODE (operands[1]) != MEM)"
"* return output_float_compare (insn, operands);") "* return output_float_compare (insn, operands);")
(define_insn "" (define_insn ""
...@@ -566,15 +565,14 @@ ...@@ -566,15 +565,14 @@
(define_expand "cmpxf" (define_expand "cmpxf"
[(set (cc0) [(set (cc0)
(compare (match_operand:XF 0 "register_operand" "") (compare (match_operand:XF 0 "register_operand" "")
(match_operand:XF 1 "nonimmediate_operand" "")))] (match_operand:XF 1 "register_operand" "")))]
"TARGET_80387" "TARGET_80387"
" "
{ {
i386_compare_gen = gen_cmpxf_cc; i386_compare_gen = gen_cmpxf_cc;
i386_compare_gen_eq = gen_cmpxf_ccfpeq; i386_compare_gen_eq = gen_cmpxf_ccfpeq;
i386_compare_op0 = operands[0]; i386_compare_op0 = operands[0];
i386_compare_op1 = (immediate_operand (operands[1], XFmode)) i386_compare_op1 = operands[1];
? copy_to_mode_reg (XFmode, operands[1]) : operands[1];
DONE; DONE;
}") }")
...@@ -622,11 +620,7 @@ ...@@ -622,11 +620,7 @@
(match_operand:XF 1 "register_operand" ""))) (match_operand:XF 1 "register_operand" "")))
(clobber (match_scratch:HI 2 ""))])] (clobber (match_scratch:HI 2 ""))])]
"TARGET_80387" "TARGET_80387"
" "")
{
if (! register_operand (operands[1], XFmode))
operands[1] = copy_to_mode_reg (XFmode, operands[1]);
}")
(define_expand "cmpdf_cc" (define_expand "cmpdf_cc"
[(parallel [(set (cc0) [(parallel [(set (cc0)
......
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