mn10300.md (cmpsi): Tell reload to disregard the first alternative.
* config/mn10300/mn10300.md (cmpsi): Tell reload to disregard the first alternative. From-SVN: r41355
This commit is contained in:
parent
f2d43953d7
commit
81df85c483
@ -1,3 +1,8 @@
|
|||||||
|
2001-04-14 Alexandre Oliva <aoliva@redhat.com>
|
||||||
|
|
||||||
|
* config/mn10300/mn10300.md (cmpsi): Tell reload to disregard the
|
||||||
|
first alternative.
|
||||||
|
|
||||||
2001-04-14 Alan Modra <amodra@one.net.au>
|
2001-04-14 Alan Modra <amodra@one.net.au>
|
||||||
|
|
||||||
* pa.c (force_mode): New function.
|
* pa.c (force_mode): New function.
|
||||||
|
@ -718,9 +718,17 @@
|
|||||||
;; but will have the proper effect on cc0. Using d0 is arbitrary; any
|
;; but will have the proper effect on cc0. Using d0 is arbitrary; any
|
||||||
;; data register would work.)
|
;; data register would work.)
|
||||||
|
|
||||||
|
;; Even though the first alternative would be preferrable if it can
|
||||||
|
;; possibly match, reload must not be given the opportunity to attempt
|
||||||
|
;; to use it. It assumes that such matches can only occur when one of
|
||||||
|
;; the operands is used for input and the other for output. Since
|
||||||
|
;; this is not the case, it abort()s. Indeed, such a reload cannot be
|
||||||
|
;; possibly satisfied, so just mark the alternative with a `!', so
|
||||||
|
;; that it is not considered by reload.
|
||||||
|
|
||||||
(define_insn "cmpsi"
|
(define_insn "cmpsi"
|
||||||
[(set (cc0)
|
[(set (cc0)
|
||||||
(compare (match_operand:SI 0 "register_operand" "*d*a*x,dax")
|
(compare (match_operand:SI 0 "register_operand" "!*d*a*x,dax")
|
||||||
(match_operand:SI 1 "nonmemory_operand" "*0,daxi")))]
|
(match_operand:SI 1 "nonmemory_operand" "*0,daxi")))]
|
||||||
""
|
""
|
||||||
"@
|
"@
|
||||||
|
Loading…
Reference in New Issue
Block a user