From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 55355 invoked by alias); 23 Apr 2018 09:56:11 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Received: (qmail 55340 invoked by uid 89); 23 Apr 2018 09:56:10 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-24.8 required=5.0 tests=AWL,BAYES_00,GIT_PATCH_0,GIT_PATCH_1,GIT_PATCH_2,GIT_PATCH_3,RCVD_IN_DNSWL_NONE,SPF_PASS autolearn=ham version=3.3.2 spammy=H*RU:14.3.361.1, H*r:14.3.361, H*r:ip*14.3.361.1, Hx-spam-relays-external:14.3.361.1 X-HELO: smtprelay.synopsys.com Received: from smtprelay.synopsys.com (HELO smtprelay.synopsys.com) (198.182.60.111) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Mon, 23 Apr 2018 09:56:08 +0000 Received: from mailhost.synopsys.com (mailhost1.synopsys.com [10.12.238.239]) by smtprelay.synopsys.com (Postfix) with ESMTP id E7EB110C1217; Mon, 23 Apr 2018 02:56:06 -0700 (PDT) Received: from us01wehtc1.internal.synopsys.com (us01wehtc1.internal.synopsys.com [10.12.239.235]) by mailhost.synopsys.com (Postfix) with ESMTP id 801115939; Mon, 23 Apr 2018 02:56:06 -0700 (PDT) Received: from DE02WEHTCB.internal.synopsys.com (10.225.19.94) by us01wehtc1.internal.synopsys.com (10.12.239.235) with Microsoft SMTP Server (TLS) id 14.3.361.1; Mon, 23 Apr 2018 02:56:06 -0700 Received: from DE02WEMBXA.internal.synopsys.com ([fe80::a014:7216:77d:d55c]) by DE02WEHTCB.internal.synopsys.com ([::1]) with mapi id 14.03.0361.001; Mon, 23 Apr 2018 11:56:05 +0200 From: Claudiu Zissulescu To: Andrew Burgess CC: "gcc-patches@gcc.gnu.org" , "Francois.Bedard@synopsys.com" Subject: RE: [PATCH 1/5] [ARC] Update sleep builtin. Date: Mon, 23 Apr 2018 09:57:00 -0000 Message-ID: <098ECE41A0A6114BB2A07F1EC238DE89667EF06A@de02wembxa.internal.synopsys.com> References: <1523005214-1611-1-git-send-email-claziss@synopsys.com> <1523005214-1611-2-git-send-email-claziss@synopsys.com>,<20180418175152.GD3025@embecosm.com> In-Reply-To: <20180418175152.GD3025@embecosm.com> Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-SW-Source: 2018-04/txt/msg01037.txt.bz2 Committed. Thank you for your review, Claudiu ________________________________________ From: Andrew Burgess [andrew.burgess@embecosm.com] Sent: Wednesday, April 18, 2018 7:51 PM To: Claudiu Zissulescu Cc: gcc-patches@gcc.gnu.org; Francois.Bedard@synopsys.com Subject: Re: [PATCH 1/5] [ARC] Update sleep builtin. * Claudiu Zissulescu [2018-04-06 11:00:10= +0200]: > From: claziss > > gcc/ > 2017-05-09 Claudiu Zissulescu > > * config/arc/arc-protos.h (check_if_valid_sleep_operand): Remove. > * config/arc/arc.c (arc_expand_builtin): Sleep accepts registers > and short u6 immediate. > (check_if_valid_sleep_operand): Remove. > * config/arc/arc.md (Sleep): Accepts registers and u6 immediates. > --- > gcc/config/arc/arc-protos.h | 1 - > gcc/config/arc/arc.c | 26 -------------------------- > gcc/config/arc/arc.md | 4 ++-- > 3 files changed, 2 insertions(+), 29 deletions(-) Looks good. Thanks, Andrew > > diff --git a/gcc/config/arc/arc-protos.h b/gcc/config/arc/arc-protos.h > index 75cfeda..0ba6871 100644 > --- a/gcc/config/arc/arc-protos.h > +++ b/gcc/config/arc/arc-protos.h > @@ -59,7 +59,6 @@ void arc_asm_output_aligned_decl_local (FILE *, tree, c= onst char *, > unsigned HOST_WIDE_INT); > extern rtx arc_return_addr_rtx (int , rtx); > extern bool check_if_valid_regno_const (rtx *, int); > -extern bool check_if_valid_sleep_operand (rtx *, int); > extern bool arc_legitimate_constant_p (machine_mode, rtx); > extern bool arc_legitimate_pic_addr_p (rtx); > extern bool arc_raw_symbolic_reference_mentioned_p (rtx, bool); > diff --git a/gcc/config/arc/arc.c b/gcc/config/arc/arc.c > index 3564696..47d3ba4 100644 > --- a/gcc/config/arc/arc.c > +++ b/gcc/config/arc/arc.c > @@ -6573,11 +6573,6 @@ arc_expand_builtin (tree exp, > fold (arg0); > op0 =3D expand_expr (arg0, NULL_RTX, VOIDmode, EXPAND_NORMAL); > > - if (!CONST_INT_P (op0) || !satisfies_constraint_L (op0)) > - { > - error ("builtin operand should be an unsigned 6-bit value"); > - return NULL_RTX; > - } > gcc_assert (icode !=3D 0); > emit_insn (GEN_FCN (icode) (op0)); > return NULL_RTX; > @@ -6925,27 +6920,6 @@ check_if_valid_regno_const (rtx *operands, int opn= o) > return false; > } > > -/* Check that after all the constant folding, whether the operand to > - __builtin_arc_sleep is an unsigned int of 6 bits. If not, flag an er= ror. */ > - > -bool > -check_if_valid_sleep_operand (rtx *operands, int opno) > -{ > - switch (GET_CODE (operands[opno])) > - { > - case CONST : > - case CONST_INT : > - if( UNSIGNED_INT6 (INTVAL (operands[opno]))) > - return true; > - /* FALLTHRU */ > - default: > - fatal_error (input_location, > - "operand for sleep instruction must be an unsigned 6 b= it compile-time constant"); > - break; > - } > - return false; > -} > - > /* Return true if it is ok to make a tail-call to DECL. */ > > static bool > diff --git a/gcc/config/arc/arc.md b/gcc/config/arc/arc.md > index fb34329..2ec2b48 100644 > --- a/gcc/config/arc/arc.md > +++ b/gcc/config/arc/arc.md > @@ -4794,9 +4794,9 @@ archs4x, archs4xd, archs4xd_slow" > > > (define_insn "sleep" > - [(unspec_volatile [(match_operand:SI 0 "immediate_operand" "L")] > + [(unspec_volatile [(match_operand:SI 0 "nonmemory_operand" "Lr")] > VUNSPEC_ARC_SLEEP)] > - "check_if_valid_sleep_operand(operands,0)" > + "" > "sleep %0" > [(set_attr "length" "4") > (set_attr "type" "misc")]) > -- > 1.9.1 >