From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 14293 invoked by alias); 11 Jan 2015 15:56:52 -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 14283 invoked by uid 89); 11 Jan 2015 15:56:51 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-2.1 required=5.0 tests=AWL,BAYES_00,T_RP_MATCHES_RCVD autolearn=ham version=3.3.2 X-HELO: nikam.ms.mff.cuni.cz Received: from nikam.ms.mff.cuni.cz (HELO nikam.ms.mff.cuni.cz) (195.113.20.16) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES256-GCM-SHA384 encrypted) ESMTPS; Sun, 11 Jan 2015 15:56:50 +0000 Received: by nikam.ms.mff.cuni.cz (Postfix, from userid 16202) id 6BEB4542B77; Sun, 11 Jan 2015 16:56:47 +0100 (CET) Date: Sun, 11 Jan 2015 17:38:00 -0000 From: Jan Hubicka To: Jakub Jelinek Cc: Thomas Schwinge , Bernd Schmidt , Bernd Schmidt , Richard Biener , Jan Hubicka , gcc-patches@gcc.gnu.org, neil@daikokuya.co.uk.zalov.cz, joseph@codesourcery.com, Julian Brown , Cesar Philippidis , iverbin@gmail.com, kirill.yukhin@gmail.com, andrey.turetskiy@gmail.com Subject: Re: LTO streaming of TARGET_OPTIMIZE_NODE Message-ID: <20150111155647.GB2196@kam.mff.cuni.cz> References: <20141113040652.GB1984@kam.mff.cuni.cz> <546DDE1C.6060203@t-online.de> <20150108141149.GC1405@tucnak.redhat.com> <871tn4w6tt.fsf@schwinge.name> <20150109114503.GW1405@tucnak.redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20150109114503.GW1405@tucnak.redhat.com> User-Agent: Mutt/1.5.21 (2010-09-15) X-SW-Source: 2015-01/txt/msg00611.txt.bz2 > On Fri, Jan 09, 2015 at 12:07:26PM +0100, Thomas Schwinge wrote: > > On Thu, 8 Jan 2015 15:11:49 +0100, Jakub Jelinek wrote: > > > On Thu, Nov 20, 2014 at 01:27:08PM +0100, Bernd Schmidt wrote: > > > > On 11/13/2014 05:06 AM, Jan Hubicka wrote: > > > > >this patch adds infrastructure for proper streaming and merging of > > > > >TREE_TARGET_OPTION. > > > > > > > > This breaks the offloading path via LTO since it introduces an > > > > incompatibility in LTO format between host and offload machine. > > > > > > > > A very quick patch to fix it is below - the OpenACC testcase I was using > > > > seems to be working again with this. Thoughts, suggestions? > > > > > > I actually think > > > > Thanks for picking up this issue! > > Richard said on IRC he doesn't like the string comparisons, so here is > untested modification of the patch. If it looks good, I'll test it today: > > 2015-01-09 Bernd Schmidt > Jakub Jelinek > > PR middle-end/64412 > * lto-streamer.h (lto_stream_offload_p): New declaration. > * lto-streamer.c (lto_stream_offload_p): New variable. > * cgraphunit.c (ipa_passes): Set lto_stream_offload_p > at the same time as section_name_prefix. > * lto-streamer-out.c (hash_tree): Don't hash TREE_TARGET_OPTION > if lto_stream_offload_p. > * tree-streamer-out.c (streamer_pack_tree_bitfields): Don't > stream TREE_TARGET_OPTION if lto_stream_offload_p. > (write_ts_function_decl_tree_pointers): Don't > stream DECL_FUNCTION_SPECIFIC_TARGET if lto_stream_offload_p. > * tree-streamer-in.c (unpack_value_fields): Don't stream > TREE_TARGET_OPTION in if ACCEL_COMPILER. > (lto_input_ts_function_decl_tree_pointers): Don't stream > DECL_FUNCTION_SPECIFIC_TARGET in if ACCEL_COMPILER. > * lto-opts.c (lto_write_options): Use lto_stream_offload_p > instead of section_name_prefix string comparisons. > lto/ > * lto.c (read_cgraph_and_symbols): Set lto_stream_offload_p > if ACCEL_COMPILER. This looks fine to me. Thanks for looking into this issue (that was mine, but I was quite busy last month) Honza