From 7b7e56373edf1e0df722cc44a0380b2ee01c9e12 Mon Sep 17 00:00:00 2001 From: Richard Kenner Date: Mon, 18 Mar 1996 19:48:01 -0500 Subject: [PATCH] (pushexthisi_const, movsi_const0): New names. (andsi3, iorsi3): Allow only 'M', not 'K' constants, if dest is 'd'. From-SVN: r11561 --- gcc/config/m68k/m68k.md | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/gcc/config/m68k/m68k.md b/gcc/config/m68k/m68k.md index ce78615e15f..207c7ef542c 100644 --- a/gcc/config/m68k/m68k.md +++ b/gcc/config/m68k/m68k.md @@ -54,6 +54,7 @@ ;;- 'J' -32768 .. 32767 ;;- 'K' all integers EXCEPT -128 .. 127 ;;- 'L' -8 .. -1 +;;- 'M' all integers EXCEPT -256 .. 255 ;;- Assembler specs: ;;- "%." size separator ("." or "") move%.l d0,d1 @@ -735,7 +736,7 @@ ;; A special case in which it is not desirable ;; to reload the constant into a data register. -(define_insn "" +(define_insn "pushexthisi_const" [(set (match_operand:SI 0 "push_operand" "=m") (match_operand:SI 1 "const_int_operand" "J"))] "INTVAL (operands[1]) >= -0x8000 && INTVAL (operands[1]) < 0x8000" @@ -758,7 +759,7 @@ ;; The reason this is special is to avoid loading a zero ;; 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") (const_int 0))] ;; clr insns on 68000 read before writing. @@ -3522,7 +3523,7 @@ (define_insn "andsi3" [(set (match_operand:SI 0 "not_sp_operand" "=m,d") (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 @@ (define_insn "iorsi3" [(set (match_operand:SI 0 "general_operand" "=m,d") (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")))] "" "* { -- 2.30.2