Commit 98e20ffd by Nick Clifton Committed by Nick Clifton

(udivsi3_sh2a...

(udivsi3_sh2a, divsi3_sh2a): Give these patterns an "in_delay_slot" attribute
of "no" to prevent them being used in delay slots.  This is forbidden because
they might generate exceptions.

From-SVN: r93225
parent 409f61cd
2005-01-12 Nick Clifton <nickc@redhat.com>
* config/sh/sh.md (udivsi3_sh2a, divsi3_sh2a): Give these patterns
an "in_delay_slot" attribute of "no" to prevent them being used in
delay slots. This is forbidden because they might generate
exceptions.
2005-01-12 Alan Modra <amodra@bigpond.net.au> 2005-01-12 Alan Modra <amodra@bigpond.net.au>
PR target/19389 PR target/19389
......
...@@ -1164,7 +1164,8 @@ ...@@ -1164,7 +1164,8 @@
(match_operand:SI 2 "arith_reg_operand" "z")))] (match_operand:SI 2 "arith_reg_operand" "z")))]
"TARGET_SH2A" "TARGET_SH2A"
"divu %2,%1" "divu %2,%1"
[(set_attr "type" "arith")]) [(set_attr "type" "arith")
(set_attr "in_delay_slot" "no")])
;; We must use a pseudo-reg forced to reg 0 in the SET_DEST rather than ;; We must use a pseudo-reg forced to reg 0 in the SET_DEST rather than
;; hard register 0. If we used hard register 0, then the next instruction ;; hard register 0. If we used hard register 0, then the next instruction
...@@ -1348,7 +1349,8 @@ ...@@ -1348,7 +1349,8 @@
(match_operand:SI 2 "arith_reg_operand" "z")))] (match_operand:SI 2 "arith_reg_operand" "z")))]
"TARGET_SH2A" "TARGET_SH2A"
"divs %2,%1" "divs %2,%1"
[(set_attr "type" "arith")]) [(set_attr "type" "arith")
(set_attr "in_delay_slot" "no")])
(define_insn "divsi3_i1" (define_insn "divsi3_i1"
[(set (match_operand:SI 0 "register_operand" "=z") [(set (match_operand:SI 0 "register_operand" "=z")
......
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