From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 58262 invoked by alias); 24 Nov 2016 21:40:25 -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 58102 invoked by uid 89); 24 Nov 2016 21:40:24 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.3 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_NONE,RCVD_IN_SORBS_SPAM,SPF_PASS autolearn=no version=3.3.2 spammy=promised, HX-Envelope-From:sk:andrew., sk:andrew., HCc:D*comcast.net X-HELO: mail-wm0-f45.google.com Received: from mail-wm0-f45.google.com (HELO mail-wm0-f45.google.com) (74.125.82.45) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Thu, 24 Nov 2016 21:40:14 +0000 Received: by mail-wm0-f45.google.com with SMTP id t79so73555609wmt.0 for ; Thu, 24 Nov 2016 13:40:14 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to:user-agent; bh=NsotIqGeaYAhQdumcLhOo1F6diWV2yHsn9j88R2mvVo=; b=HRfsXoMgqb7s45aW4y7BGL7hrV+vwwVnqs54806OKbe0KCrCq/7KIbguH8e+MKxUvd gTctsS4XtkiYJL2jkqjZ1ja6npUqcWptwVjoMBjUl4Xv5HlHe1ubOBO1U9ZvIjs1yhSu YceM3IZ4Oc6z5CU8jlXdKbUKD/ssUJCeZ59g6V4iZkNwS4gZVpaLeivLgwjf65GqyVhb 4rjUs8J+r1G7F1DQ/Fpawqg0UKwVnexGfI+4Yh1cOvxzm9lGLI/S6U1RU0t7jXE+CaFY dAxJpiQ3DihP8cPfp0uzqFCpjSwuZbXqf6buTYcWDrJek4pe5g3al2dUu7QLyLc6lYkU Ny2g== X-Gm-Message-State: AKaTC00Mv8/bcAhamMSD0aYMHEwnXlqF74YoGH3pRVShufWuIbWAk+wELkCsY/seR9VmXg== X-Received: by 10.28.135.5 with SMTP id j5mr4518689wmd.3.1480023612622; Thu, 24 Nov 2016 13:40:12 -0800 (PST) Received: from localhost (host81-148-252-79.range81-148.btcentralplus.com. [81.148.252.79]) by smtp.gmail.com with ESMTPSA id f10sm43780244wjl.28.2016.11.24.13.40.11 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 24 Nov 2016 13:40:11 -0800 (PST) Date: Thu, 24 Nov 2016 21:40:00 -0000 From: Andrew Burgess To: Christophe Lyon Cc: Mike Stump , Bernd Schmidt , "gcc-patches@gcc.gnu.org" , Jeff Law , Jakub Jelinek Subject: Re: Ping: Re: [PATCH 1/2] gcc: Remove unneeded global flag. Message-ID: <20161124214002.GB4542@embecosm.com> References: <20160629192130.GF8823@embecosm.com> <20160914130048.GC31794@embecosm.com> <03bef940-2b86-af7d-d2d2-b96b8283596f@redhat.com> <20161116200930.GG5975@embecosm.com> <20161116221217.GH5975@embecosm.com> <20161119215926.GX5975@embecosm.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: 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: 2016-11/txt/msg02580.txt.bz2 * Christophe Lyon [2016-11-21 13:47:09 +0100]: > On 20 November 2016 at 18:27, Mike Stump wrote: > > On Nov 19, 2016, at 1:59 PM, Andrew Burgess wrote: > >>> So, your new test fails on arm* targets: > >> > >> After a little digging I think the problem might be that > >> -freorder-blocks-and-partition is not supported on arm. > >> > >> This should be detected as the new tests include: > >> > >> /* { dg-require-effective-target freorder } */ > >> > >> however this test passed on arm as -freorder-blocks-and-partition does > >> not issue any warning unless -fprofile-use is also passed. > >> > >> The patch below extends check_effective_target_freorder to check using > >> -fprofile-use. With this change in place the tests are skipped on > >> arm. > > > >> All feedback welcome, > > > > Seems reasonable, unless a -freorder-blocks-and-partition/-fprofile-use person thinks this is the wrong solution. > > > > Hi, > > As promised, I tested this patch: it makes > gcc.dg/tree-prof/section-attr-[123].c > unsupported on arm*, and thus they are not failing anymore :-) > > However, it also makes other tests unsupported, while they used to pass: > > gcc.dg/pr33648.c > gcc.dg/pr46685.c > gcc.dg/tree-prof/20041218-1.c > gcc.dg/tree-prof/bb-reorg.c > gcc.dg/tree-prof/cold_partition_label.c > gcc.dg/tree-prof/comp-goto-1.c > gcc.dg/tree-prof/pr34999.c > gcc.dg/tree-prof/pr45354.c > gcc.dg/tree-prof/pr50907.c > gcc.dg/tree-prof/pr52027.c > gcc.dg/tree-prof/va-arg-pack-1.c > > and failures are now unsupported: > gcc.dg/tree-prof/cold_partition_label.c > gcc.dg/tree-prof/section-attr-1.c > gcc.dg/tree-prof/section-attr-2.c > gcc.dg/tree-prof/section-attr-3.c > > So, maybe this patch is too strong? In all of the cases that used to pass the tests are compile only tests (except for cold_partition_label, which I discuss below). On ARM passing -fprofile-use and -freorder-blocks-and-partition results in a warning, and the -freorder-blocks-and-partition flag is ignored. However, disabling -freorder-blocks-and-partition doesn't stop any of the tests compiling, hence the passes. All the tests include: /* { dg-require-effective-target freorder } */ which I understand to mean, the tests requires the 'freorder' feature to be supported (which corresponds to -freorder-blocks-and-partition). For cold_partition_label and my new tests it's seems clear that the lack of support for -freorder-blocks-and-partition on ARM is the cause of the test failures. So, is it reasonable to give up the other tests as "unsupported"? I'd be inclined to say yes, but I happy to rework the patch if anyone has a suggestion for an alternative approach. One possibility would be to split the 'freorder' feature into two, one being 'Can -freorder-blocks-and-partition be used without causing an error (so ARM would say yes to this)', and a new feature would be 'Does -freorder-blocks-and-partition actually _work_ on the target?' we'd then use this in cold_partition_label and in my new tests. Though this doesn't feel a great solution.... Thanks, Andrew