From e33915104685e7c3c0ab74e402d859baabee6a24 Mon Sep 17 00:00:00 2001 From: Jim Wilson Date: Tue, 23 May 1995 14:37:52 -0700 Subject: [PATCH] (sett): New pattern. (movsi_i): Change source constraint for move to T reg to be 'z'. From-SVN: r9783 --- gcc/config/sh/sh.md | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/gcc/config/sh/sh.md b/gcc/config/sh/sh.md index 86cdd6b772e..70d32ea4cef 100644 --- a/gcc/config/sh/sh.md +++ b/gcc/config/sh/sh.md @@ -982,14 +982,22 @@ [(set_attr "type" "load,pload,load") (set_attr "hit_stack" "yes")]) +;; These two patterns can happen as the result of optimization, when +;; comparisons get simplified to a move of zero or 1 into the T reg. +;; They don't disappear completely, because the T reg is a fixed hard reg. (define_insn "clrt" [(set (reg:SI 18) (const_int 0))] "" "clrt") +(define_insn "sett" + [(set (reg:SI 18) (const_int 1))] + "" + "sett") + (define_insn "movsi_i" [(set (match_operand:SI 0 "general_movdst_operand" "=r,r,r,r,r,m,<,xl,xl,t,r") - (match_operand:SI 1 "general_movsrc_operand" "Q,rI,m,xl,t,r,xl,r,>,r,i"))] + (match_operand:SI 1 "general_movsrc_operand" "Q,rI,m,xl,t,r,xl,r,>,z,i"))] "register_operand (operands[0], SImode) || register_operand (operands[1], SImode)" "@ -- 2.30.2