From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 126382 invoked by alias); 2 Nov 2015 13:51:02 -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 125304 invoked by uid 89); 2 Nov 2015 13:51:02 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.5 required=5.0 tests=AWL,BAYES_00,LIKELY_SPAM_BODY,SPF_HELO_PASS,T_RP_MATCHES_RCVD autolearn=no version=3.3.2 X-HELO: mx1.redhat.com Received: from mx1.redhat.com (HELO mx1.redhat.com) (209.132.183.28) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES256-GCM-SHA384 encrypted) ESMTPS; Mon, 02 Nov 2015 13:51:01 +0000 Received: from int-mx13.intmail.prod.int.phx2.redhat.com (int-mx13.intmail.prod.int.phx2.redhat.com [10.5.11.26]) by mx1.redhat.com (Postfix) with ESMTPS id 0F04F42E5A2; Mon, 2 Nov 2015 13:50:59 +0000 (UTC) Received: from [10.10.50.156] (unused [10.10.50.156] (may be forged)) by int-mx13.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id tA2DowdL000332; Mon, 2 Nov 2015 08:50:59 -0500 Subject: Re: [patch] New backend header reduction To: Thomas Schwinge , gcc-patches References: <562A6614.5080602@redhat.com> <87a8qw3kzp.fsf@kepler.schwinge.homeip.net> Cc: Jeff Law From: Andrew MacLeod Message-ID: <56376A42.8050709@redhat.com> Date: Mon, 02 Nov 2015 13:51:00 -0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.1.0 MIME-Version: 1.0 In-Reply-To: <87a8qw3kzp.fsf@kepler.schwinge.homeip.net> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit X-IsSubscribed: yes X-SW-Source: 2015-11/txt/msg00067.txt.bz2 On 11/02/2015 02:42 AM, Thomas Schwinge wrote: > Hi! > > "Hooray for the C programming language's module system"... ;-) > > On Fri, 23 Oct 2015 12:53:40 -0400, Andrew MacLeod wrote: >> Just finished running... I think the external hard drive was slowing >> down this run :-P It took quite a while. >> >> Anyway, this is the reduction patch independent of the header-ordering >> patch... ie, that patch needs to be applied before this one. So this >> should be mostly just removals. I also need to follow up and build all >> the target and bootstrap from scratch to make sure there arent any >> weirdnesses with it. But you can at least get a look at it now. > Similar to the ENABLE_OFFLOADING preprocessor conditional as reported by > Cesar and Nathan, I've run into a problem with code "hidden" behind > ENABLE_FOLD_CHECKING, and this has independently also been reported as > : > > [...]/source-gcc/gcc/fold-const.c: In function 'tree_node* fold(tree)': > [...]/source-gcc/gcc/fold-const.c:12038:18: error: aggregate 'md5_ctx ctx' has incomplete type and cannot be defined > struct md5_ctx ctx; > ahhh. lovely. ok, so I'll hold off checking in the approved front end patch until I rerun the tool. I can pre-define a set of macros in the tool to mimic these command-line options that might be seen in order to make sure that headers arent removed that cause these kinds of issues. After it runs, I'll see if there were any front end files that need adjusting to account for this, then I'll check them in. I will also rerun the tool over the next week or so on all the backend.a files from the revision just before I merged to see if anything else comes out of the woodwork. There could still be a hidden case or two like this. A quick grep shows the following macros should probably be predefined: ENABLE_ASSERT_CHECKING ENABLE_CHECKING ENABLE_DECIMAL_BID_FORMAT ENABLE_DECIMAL_FLOAT ENABLE_DEFAULT_PIE ENABLE_DEFAULT_SSP ENABLE_DF_CHECKING ENABLE_FIXED_POINT ENABLE_FOLD_CHECKING ENABLE_GC_ALWAYS_COLLECT ENABLE_GC_CHECKING ENABLE_GIMPLE_CHECKING ENABLE_IRA_CHECKING ENABLE_LD_BUILDID ENABLE_LIBQUADMATH_SUPPORT ENABLE_LTO ENABLE_NLS ENABLE_OFFLOADING ENABLE_PLUGIN ENABLE_PLUGINS ENABLE_PTHREADS ENABLE_RTL_CHECKING ENABLE_RTL_FLAG_CHECKING ENABLE_RUNTIME_CHECKING ENABLE_SHARED_LIBGCC ENABLE_TREE_CHECKING ENABLE_TYPES_CHECKING ENABLE_VALGRIND_ANNOTATIONS ENABLE_VALGRIND_CHECKING ENABLE_WIN32_REGISTRY Anyone think of anything else the might come from a command line that wouldnt be seen otherwise? Andrew