From 3192773f267f7aa4624c87f8e2ceb25ff71e9d4a Mon Sep 17 00:00:00 2001 From: Richard Kenner Date: Tue, 12 Nov 1996 14:34:29 -0500 Subject: [PATCH] (movqi): Emit 'st' for INTVAL & 255 == 255, not INTVAL == -1. (seq,sne,sgt,sgtu,slt,sltu,sge,sgeu,sle,sleu): Allow "m" as operand 0. From-SVN: r13138 --- gcc/config/m68k/m68k.md | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/gcc/config/m68k/m68k.md b/gcc/config/m68k/m68k.md index cb791f65843..db598c5dcc1 100644 --- a/gcc/config/m68k/m68k.md +++ b/gcc/config/m68k/m68k.md @@ -979,7 +979,7 @@ if (operands[1] == const0_rtx) return \"clr%.b %0\"; if (GET_CODE (operands[1]) == CONST_INT - && INTVAL (operands[1]) == -1) + && (INTVAL (operands[1]) & 255) == 255) { CC_STATUS_INIT; return \"st %0\"; @@ -5170,7 +5170,7 @@ } ") (define_insn "seq" - [(set (match_operand:QI 0 "general_operand" "=d") + [(set (match_operand:QI 0 "general_operand" "=dm") (eq:QI (cc0) (const_int 0)))] "" "* @@ -5179,7 +5179,7 @@ ") (define_insn "sne" - [(set (match_operand:QI 0 "general_operand" "=d") + [(set (match_operand:QI 0 "general_operand" "=dm") (ne:QI (cc0) (const_int 0)))] "" "* @@ -5188,7 +5188,7 @@ ") (define_insn "sgt" - [(set (match_operand:QI 0 "general_operand" "=d") + [(set (match_operand:QI 0 "general_operand" "=dm") (gt:QI (cc0) (const_int 0)))] "" "* @@ -5197,42 +5197,42 @@ ") (define_insn "sgtu" - [(set (match_operand:QI 0 "general_operand" "=d") + [(set (match_operand:QI 0 "general_operand" "=dm") (gtu:QI (cc0) (const_int 0)))] "" "* cc_status = cc_prev_status; return \"shi %0\"; ") (define_insn "slt" - [(set (match_operand:QI 0 "general_operand" "=d") + [(set (match_operand:QI 0 "general_operand" "=dm") (lt:QI (cc0) (const_int 0)))] "" "* cc_status = cc_prev_status; OUTPUT_JUMP (\"slt %0\", \"fslt %0\", \"smi %0\"); ") (define_insn "sltu" - [(set (match_operand:QI 0 "general_operand" "=d") + [(set (match_operand:QI 0 "general_operand" "=dm") (ltu:QI (cc0) (const_int 0)))] "" "* cc_status = cc_prev_status; return \"scs %0\"; ") (define_insn "sge" - [(set (match_operand:QI 0 "general_operand" "=d") + [(set (match_operand:QI 0 "general_operand" "=dm") (ge:QI (cc0) (const_int 0)))] "" "* cc_status = cc_prev_status; OUTPUT_JUMP (\"sge %0\", \"fsge %0\", \"spl %0\"); ") (define_insn "sgeu" - [(set (match_operand:QI 0 "general_operand" "=d") + [(set (match_operand:QI 0 "general_operand" "=dm") (geu:QI (cc0) (const_int 0)))] "" "* cc_status = cc_prev_status; return \"scc %0\"; ") (define_insn "sle" - [(set (match_operand:QI 0 "general_operand" "=d") + [(set (match_operand:QI 0 "general_operand" "=dm") (le:QI (cc0) (const_int 0)))] "" "* @@ -5241,7 +5241,7 @@ ") (define_insn "sleu" - [(set (match_operand:QI 0 "general_operand" "=d") + [(set (match_operand:QI 0 "general_operand" "=dm") (leu:QI (cc0) (const_int 0)))] "" "* cc_status = cc_prev_status; -- 2.30.2