Commit 7b7e5637 by Richard Kenner

(pushexthisi_const, movsi_const0): New names.

(andsi3, iorsi3): Allow only 'M', not 'K' constants, if dest is 'd'.

From-SVN: r11561
parent 6910dd70
...@@ -54,6 +54,7 @@ ...@@ -54,6 +54,7 @@
;;- 'J' -32768 .. 32767 ;;- 'J' -32768 .. 32767
;;- 'K' all integers EXCEPT -128 .. 127 ;;- 'K' all integers EXCEPT -128 .. 127
;;- 'L' -8 .. -1 ;;- 'L' -8 .. -1
;;- 'M' all integers EXCEPT -256 .. 255
;;- Assembler specs: ;;- Assembler specs:
;;- "%." size separator ("." or "") move%.l d0,d1 ;;- "%." size separator ("." or "") move%.l d0,d1
...@@ -735,7 +736,7 @@ ...@@ -735,7 +736,7 @@
;; A special case in which it is not desirable ;; A special case in which it is not desirable
;; to reload the constant into a data register. ;; to reload the constant into a data register.
(define_insn "" (define_insn "pushexthisi_const"
[(set (match_operand:SI 0 "push_operand" "=m") [(set (match_operand:SI 0 "push_operand" "=m")
(match_operand:SI 1 "const_int_operand" "J"))] (match_operand:SI 1 "const_int_operand" "J"))]
"INTVAL (operands[1]) >= -0x8000 && INTVAL (operands[1]) < 0x8000" "INTVAL (operands[1]) >= -0x8000 && INTVAL (operands[1]) < 0x8000"
...@@ -758,7 +759,7 @@ ...@@ -758,7 +759,7 @@
;; The reason this is special is to avoid loading a zero ;; The reason this is special is to avoid loading a zero
;; into a data reg with moveq in order to store it elsewhere. ;; into a data reg with moveq in order to store it elsewhere.
(define_insn "" (define_insn "movsi_const0"
[(set (match_operand:SI 0 "general_operand" "=g") [(set (match_operand:SI 0 "general_operand" "=g")
(const_int 0))] (const_int 0))]
;; clr insns on 68000 read before writing. ;; clr insns on 68000 read before writing.
...@@ -3522,7 +3523,7 @@ ...@@ -3522,7 +3523,7 @@
(define_insn "andsi3" (define_insn "andsi3"
[(set (match_operand:SI 0 "not_sp_operand" "=m,d") [(set (match_operand:SI 0 "not_sp_operand" "=m,d")
(and:SI (match_operand:SI 1 "general_operand" "%0,0") (and:SI (match_operand:SI 1 "general_operand" "%0,0")
(match_operand:SI 2 "general_operand" "dKs,dmKs")))] (match_operand:SI 2 "general_operand" "dKs,dmMs")))]
"" ""
"* "*
{ {
...@@ -3610,7 +3611,7 @@ ...@@ -3610,7 +3611,7 @@
(define_insn "iorsi3" (define_insn "iorsi3"
[(set (match_operand:SI 0 "general_operand" "=m,d") [(set (match_operand:SI 0 "general_operand" "=m,d")
(ior:SI (match_operand:SI 1 "general_operand" "%0,0") (ior:SI (match_operand:SI 1 "general_operand" "%0,0")
(match_operand:SI 2 "general_operand" "dKs,dmKs")))] (match_operand:SI 2 "general_operand" "dKs,dmMs")))]
"" ""
"* "*
{ {
......
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