From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 96586 invoked by alias); 18 May 2015 12:47:54 -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 96576 invoked by uid 89); 18 May 2015 12:47:54 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-2.0 required=5.0 tests=AWL,BAYES_00,FREEMAIL_FROM,RCVD_IN_DNSWL_LOW,SPF_PASS autolearn=ham version=3.3.2 X-HELO: mail-ob0-f176.google.com Received: from mail-ob0-f176.google.com (HELO mail-ob0-f176.google.com) (209.85.214.176) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES128-GCM-SHA256 encrypted) ESMTPS; Mon, 18 May 2015 12:47:53 +0000 Received: by obcus9 with SMTP id us9so121335113obc.2 for ; Mon, 18 May 2015 05:47:50 -0700 (PDT) MIME-Version: 1.0 X-Received: by 10.202.79.145 with SMTP id d139mr18461601oib.46.1431953270853; Mon, 18 May 2015 05:47:50 -0700 (PDT) Received: by 10.76.115.167 with HTTP; Mon, 18 May 2015 05:47:50 -0700 (PDT) In-Reply-To: References: <55441BF2.60703@redhat.com> <5554B11E.8090705@redhat.com> Date: Mon, 18 May 2015 12:53:00 -0000 Message-ID: Subject: Re: [RFA] More type narrowing in match.pd V2 From: Richard Biener To: Marc Glisse Cc: Jeff Law , GCC Patches Content-Type: text/plain; charset=UTF-8 X-IsSubscribed: yes X-SW-Source: 2015-05/txt/msg01565.txt.bz2 On Mon, May 18, 2015 at 2:34 PM, Marc Glisse wrote: > On Mon, 18 May 2015, Richard Biener wrote: > >> On Thu, May 14, 2015 at 4:28 PM, Jeff Law wrote: >>> >>> On 05/14/2015 08:04 AM, Marc Glisse wrote: >>>> >>>> >>>> On Fri, 1 May 2015, Jeff Law wrote: >>>> >>>>> Slight refactoring of the condition by using types_match as suggested >>>>> by Richi. I also applied the new types_match to 2 other patterns in >>>>> match.pd where it seemed clearly appropriate. >>>> >>>> >>>> >>>> I would like to propose this small tweak (regtested ok). If we had a >>>> different type for trees and types, this would be overloading the >>>> function. We already do this in a few places, and I find the resulting >>>> shorter code more readable. >>>> >>>> 2015-05-14 Marc Glisse >>>> >>>> * generic-match-head.c (types_match): Handle non-types. >>>> * gimple-match-head.c (types_match): Likewise. >>>> * match.pd: Remove unnecessary TREE_TYPE for types_match. >>> >>> >>> Update the comment for types_match and this is fine. >> >> >> No - it breaks genmatch autodetection of what trees escape. It >> special-cases >> TREE_TYPE (). See capture_info::walk_c_expr: > > > Oh, I didn't know that. > >> /* Give up for C exprs mentioning captures not inside TREE_TYPE (). */ >> unsigned p_depth = 0; >> >> so the patch will pessimize GENERIC folding. >> >> Please do not apply. > > > I think it was already applied. Feel free to revert it, or tell me and I'll > do it next week-end (from your next message I don't really know if it should > be reverted or not). It's always good to compare generated code (gimple/generic-match.c in the build directory) for such changes. Only the obvious differences should appear. If they do you can leave the patch in. Richard. > -- > Marc Glisse