From 459df996d4df9733a863af90b8e58446c77b9d86 Mon Sep 17 00:00:00 2001 From: aoliva Date: Mon, 3 May 2004 02:16:16 +0000 Subject: [PATCH] 2003-11-19 Richard Sandiford * config/frv/frv.md (*return_true, *return_false): New patterns. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@81424 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/ChangeLog | 5 +++++ gcc/config/frv/frv.md | 24 ++++++++++++++++++++++++ 2 files changed, 29 insertions(+) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index cda4ab9..9a23747 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2004-05-02 Alexandre Oliva + + 2003-11-19 Richard Sandiford + * config/frv/frv.md (*return_true, *return_false): New patterns. + 2004-05-02 Kazu Hirata * rtl.h (PHI_NODE_P): Remove. diff --git a/gcc/config/frv/frv.md b/gcc/config/frv/frv.md index 36b6d8e..92329cc 100644 --- a/gcc/config/frv/frv.md +++ b/gcc/config/frv/frv.md @@ -5539,6 +5539,30 @@ [(set_attr "length" "4") (set_attr "type" "jump,jumpl")]) +(define_insn "*return_true" + [(set (pc) + (if_then_else (match_operator:CC 0 "signed_relational_operator" + [(match_operand 1 "icc_operand" "t") + (const_int 0)]) + (return) + (pc)))] + "direct_return_p ()" + "b%c0lr %1,%#" + [(set_attr "length" "4") + (set_attr "type" "jump")]) + +(define_insn "*return_false" + [(set (pc) + (if_then_else (match_operator:CC 0 "signed_relational_operator" + [(match_operand 1 "icc_operand" "t") + (const_int 0)]) + (pc) + (return)))] + "direct_return_p ()" + "b%C0lr %1,%#" + [(set_attr "length" "4") + (set_attr "type" "jump")]) + (define_insn "*return_unsigned_true" [(set (pc) (if_then_else (match_operator:CC_UNS 0 "unsigned_relational_operator" -- 2.7.4