Commit 7e10a919 by Stan Cox

(cmpxf*): Allow for (compare (reg:XF) (mem:XF)).

From-SVN: r11383
parent 24f34136
...@@ -382,9 +382,9 @@ ...@@ -382,9 +382,9 @@
(define_insn "" (define_insn ""
[(set (cc0) [(set (cc0)
(match_operator 2 "VOIDmode_compare_op" (match_operator 2 "VOIDmode_compare_op"
[(match_operand:XF 0 "register_operand" "f") [(match_operand:XF 0 "nonimmediate_operand" "f,fm")
(match_operand:XF 1 "register_operand" "f")])) (match_operand:XF 1 "nonimmediate_operand" "fm,f")]))
(clobber (match_scratch:HI 3 "=a"))] (clobber (match_scratch:HI 3 "=a,a"))]
"TARGET_80387 "TARGET_80387
&& (GET_CODE (operands[0]) != MEM || GET_CODE (operands[1]) != MEM)" && (GET_CODE (operands[0]) != MEM || GET_CODE (operands[1]) != MEM)"
"* return output_float_compare (insn, operands);") "* return output_float_compare (insn, operands);")
...@@ -5605,10 +5605,12 @@ to memory, but better safe than sorry. */ ...@@ -5605,10 +5605,12 @@ to memory, but better safe than sorry. */
(define_expand "casesi" (define_expand "casesi"
[(set (match_dup 5) [(set (match_dup 5)
(minus:SI (match_operand:SI 0 "general_operand" "") (match_operand:SI 0 "general_operand" ""))
(set (match_dup 6)
(minus:SI (match_dup 5)
(match_operand:SI 1 "general_operand" ""))) (match_operand:SI 1 "general_operand" "")))
(set (cc0) (set (cc0)
(compare:CC (match_dup 5) (compare:CC (match_dup 6)
(match_operand:SI 2 "general_operand" ""))) (match_operand:SI 2 "general_operand" "")))
(set (pc) (set (pc)
(if_then_else (gtu (cc0) (if_then_else (gtu (cc0)
...@@ -5618,14 +5620,15 @@ to memory, but better safe than sorry. */ ...@@ -5618,14 +5620,15 @@ to memory, but better safe than sorry. */
(parallel (parallel
[(set (pc) [(set (pc)
(minus:SI (reg:SI 3) (minus:SI (reg:SI 3)
(mem:SI (plus:SI (mult:SI (match_dup 5) (mem:SI (plus:SI (mult:SI (match_dup 6)
(const_int 4)) (const_int 4))
(label_ref (match_operand 3 "" "")))))) (label_ref (match_operand 3 "" ""))))))
(clobber (match_scratch:SI 6 ""))])] (clobber (match_scratch:SI 7 ""))])]
"flag_pic" "flag_pic"
" "
{ {
operands[5] = gen_reg_rtx (SImode); operands[5] = gen_reg_rtx (SImode);
operands[6] = gen_reg_rtx (SImode);
current_function_uses_pic_offset_table = 1; current_function_uses_pic_offset_table = 1;
}") }")
......
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