From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 3038 invoked by alias); 13 Jul 2017 13:18:19 -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 3019 invoked by uid 89); 13 Jul 2017 13:18:19 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-25.0 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= X-HELO: mail-wm0-f42.google.com Received: from mail-wm0-f42.google.com (HELO mail-wm0-f42.google.com) (74.125.82.42) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Thu, 13 Jul 2017 13:18:17 +0000 Received: by mail-wm0-f42.google.com with SMTP id 62so23380159wmw.1 for ; Thu, 13 Jul 2017 06:18:16 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to:user-agent; bh=Hai8AamjsuDRadPwKmDVAfOviZcJBvWimo3tmJA049Q=; b=hAu76u1T0jWpglRRClVHfZMV1XpUnDQ4AToq4idF46dZIfgB2acCuP7baD4rN24OMZ KZJEaJg7lcrJbgpbWs/OU7o4+1mjZHs+7ysWSfUemldWvyMU+fT5nZqqPN1Q7V7Zy3VX rVGdYotUXs2LsNhExtglCOeJOyGeyi5rmApxB8ICeys18FJ1LRxxfQk0znFLqYF8TKLw Mmimdth8xIEMYdaHwVqWHQQDiP42QC0yiLkK2dA39qrICJ3iDZx4J5jFKju6ndVqF6hK +Ygc6cpO1aKD9ehUz5cD/ANolO+DgbwmXSiNBgybqo+Tr2vkD+bqW4wuyjv09+iJDjY5 aldw== X-Gm-Message-State: AIVw111qZnrDtQeO1e+Owjv4eTg6csqWq2i0Bz26or1uGBBnRrvzBmB9 j/wafKp2CG3xijZ+kqo= X-Received: by 10.28.1.8 with SMTP id 8mr2166873wmb.88.1499951895138; Thu, 13 Jul 2017 06:18:15 -0700 (PDT) Received: from localhost (host86-150-45-83.range86-150.btcentralplus.com. [86.150.45.83]) by smtp.gmail.com with ESMTPSA id e125sm5714318wmd.25.2017.07.13.06.18.13 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 13 Jul 2017 06:18:14 -0700 (PDT) Date: Thu, 13 Jul 2017 13:18:00 -0000 From: Andrew Burgess To: Claudiu Zissulescu Cc: gcc-patches@gcc.gnu.org, Francois.Bedard@synopsys.com Subject: Re: [PATCH 6/7] [ARC] Deprecate mexpand-adddi option. Message-ID: <20170713131803.GF27353@embecosm.com> References: <1496324097-21221-1-git-send-email-claziss@synopsys.com> <1496324097-21221-7-git-send-email-claziss@synopsys.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1496324097-21221-7-git-send-email-claziss@synopsys.com> X-Editor: GNU Emacs [ http://www.gnu.org/software/emacs ] User-Agent: Mutt/1.6.1 (2016-04-27) X-IsSubscribed: yes X-SW-Source: 2017-07/txt/msg00736.txt.bz2 * Claudiu Zissulescu [2017-06-01 15:34:56 +0200]: > From: claziss > > Emitting subregs in the expand is not a good idea. Deprecate this > option. > > gcc/ > 2017-04-26 Claudiu Zissulescu > > * config/arc/arc.md (adddi3): Remove support for mexpand-adddi > option. > (subdi3): Likewise. > * config/arc/arc.opt (mexpand-adddi): Deprecate it. > * doc/invoke.texi (mexpand-adddi): Update text. This looks fine, though the commit message tells me it's not a good idea, but it would be nice to know _why_ it's not good. Might be nice to know for future reference. Also, there's no test. Was there an issue that revealed this as not a good idea? Could that become a test? Thanks, Andrew > --- > gcc/config/arc/arc.md | 39 +-------------------------------------- > gcc/config/arc/arc.opt | 2 +- > gcc/doc/invoke.texi | 2 +- > 3 files changed, 3 insertions(+), 40 deletions(-) > > diff --git a/gcc/config/arc/arc.md b/gcc/config/arc/arc.md > index 928feb1..f595da7 100644 > --- a/gcc/config/arc/arc.md > +++ b/gcc/config/arc/arc.md > @@ -2649,30 +2649,7 @@ > (match_operand:DI 2 "nonmemory_operand" ""))) > (clobber (reg:CC CC_REG))])] > "" > -{ > - if (TARGET_EXPAND_ADDDI) > - { > - rtx l0 = gen_lowpart (SImode, operands[0]); > - rtx h0 = disi_highpart (operands[0]); > - rtx l1 = gen_lowpart (SImode, operands[1]); > - rtx h1 = disi_highpart (operands[1]); > - rtx l2 = gen_lowpart (SImode, operands[2]); > - rtx h2 = disi_highpart (operands[2]); > - rtx cc_c = gen_rtx_REG (CC_Cmode, CC_REG); > - > - if (CONST_INT_P (h2) && INTVAL (h2) < 0 && SIGNED_INT12 (INTVAL (h2))) > - { > - emit_insn (gen_sub_f (l0, l1, gen_int_mode (-INTVAL (l2), SImode))); > - emit_insn (gen_sbc (h0, h1, > - gen_int_mode (-INTVAL (h2) - (l1 != 0), SImode), > - cc_c)); > - DONE; > - } > - emit_insn (gen_add_f (l0, l1, l2)); > - emit_insn (gen_adc (h0, h1, h2)); > - DONE; > - } > -}) > +{}) > > ; This assumes that there can be no strictly partial overlap between > ; operands[1] and operands[2]. > @@ -2911,20 +2888,6 @@ > { > if (!register_operand (operands[2], DImode)) > operands[1] = force_reg (DImode, operands[1]); > - if (TARGET_EXPAND_ADDDI) > - { > - rtx l0 = gen_lowpart (SImode, operands[0]); > - rtx h0 = disi_highpart (operands[0]); > - rtx l1 = gen_lowpart (SImode, operands[1]); > - rtx h1 = disi_highpart (operands[1]); > - rtx l2 = gen_lowpart (SImode, operands[2]); > - rtx h2 = disi_highpart (operands[2]); > - rtx cc_c = gen_rtx_REG (CC_Cmode, CC_REG); > - > - emit_insn (gen_sub_f (l0, l1, l2)); > - emit_insn (gen_sbc (h0, h1, h2, cc_c)); > - DONE; > - } > }) > > (define_insn_and_split "subdi3_i" > diff --git a/gcc/config/arc/arc.opt b/gcc/config/arc/arc.opt > index ed2b827..ad2df26 100644 > --- a/gcc/config/arc/arc.opt > +++ b/gcc/config/arc/arc.opt > @@ -328,7 +328,7 @@ Target Var(TARGET_Q_CLASS) > Enable 'q' instruction alternatives. > > mexpand-adddi > -Target Var(TARGET_EXPAND_ADDDI) > +Target Warn(%qs is deprecated) > Expand adddi3 and subdi3 at rtl generation time into add.f / adc etc. > > > diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi > index 59563aa..b6cf4ce 100644 > --- a/gcc/doc/invoke.texi > +++ b/gcc/doc/invoke.texi > @@ -14823,7 +14823,7 @@ Enable pre-reload use of the @code{cbranchsi} pattern. > @item -mexpand-adddi > @opindex mexpand-adddi > Expand @code{adddi3} and @code{subdi3} at RTL generation time into > -@code{add.f}, @code{adc} etc. > +@code{add.f}, @code{adc} etc. This option is deprecated. > > @item -mindexed-loads > @opindex mindexed-loads > -- > 1.9.1 >