From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 87432 invoked by alias); 25 Feb 2015 09:10:57 -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 87051 invoked by uid 89); 25 Feb 2015 09:10:57 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-3.2 required=5.0 tests=AWL,BAYES_00,T_RP_MATCHES_RCVD autolearn=ham version=3.3.2 X-HELO: mx2.suse.de Received: from cantor2.suse.de (HELO mx2.suse.de) (195.135.220.15) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (CAMELLIA256-SHA encrypted) ESMTPS; Wed, 25 Feb 2015 09:10:55 +0000 Received: from relay1.suse.de (charybdis-ext.suse.de [195.135.220.254]) by mx2.suse.de (Postfix) with ESMTP id 7EDFDAAD1; Wed, 25 Feb 2015 09:10:52 +0000 (UTC) Date: Wed, 25 Feb 2015 09:30:00 -0000 From: Richard Biener To: Jakub Jelinek cc: gcc-patches@gcc.gnu.org Subject: Re: Patch ping In-Reply-To: <20150225070010.GS1746@tucnak.redhat.com> Message-ID: References: <5454CAB9.3040907@codesourcery.com> <20150204113817.GO1746@tucnak.redhat.com> <20150216210812.GO1746@tucnak.redhat.com> <5388429A-DE44-4C08-8A19-D42B6E00C0A6@gmail.com> <20150216214349.GR1746@tucnak.redhat.com> <20150218100035.GF1746@tucnak.redhat.com> <20150225070010.GS1746@tucnak.redhat.com> User-Agent: Alpine 2.11 (LSU 23 2013-08-11) MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-SW-Source: 2015-02/txt/msg01454.txt.bz2 On Wed, 25 Feb 2015, Jakub Jelinek wrote: > On Wed, Feb 18, 2015 at 11:00:35AM +0100, Jakub Jelinek wrote: > > On Tue, Feb 17, 2015 at 11:00:14AM +0100, Richard Biener wrote: > > > I'm just looking for a way to make this less of a hack (and the LTO IL > > > less target dependent). Not for GCC 5 for which something like your > > > patch is probably ok, but for the future. > > > > So, given Ilya's and Thomas' testing, is this acceptable for now, and > > perhaps we can try to do something better for GCC 6? > > > > Here is the patch with full ChangeLog: > > I'd like to ping following patch: > http://gcc.gnu.org/ml/gcc-patches/2015-02/msg01080.html Oops, totally forgot about this one. Shouldn't + default: + error ("unsupported mode %s\n", mname); be a fatal_error ()? After all if we hit this but continue we'll stream random crap. I also think we should be a bit more user-centric here and maybe report "for host / offload target combination". +static GTY(()) const unsigned char *lto_mode_identity_table; why in GC memory? Ok with changes along these lines. Thanks, Richard. > > 2015-02-18 Jakub Jelinek > > > > * passes.c (ipa_write_summaries_1): Call lto_output_init_mode_table. > > (ipa_write_optimization_summaries): Likewise. > > * tree-streamer.h: Include data-streamer.h. > > (streamer_mode_table): Declare extern variable. > > (bp_pack_machine_mode, bp_unpack_machine_mode): New inline functions. > > * lto-streamer-out.c (lto_output_init_mode_table, > > lto_write_mode_table): New functions. > > (produce_asm_for_decls): Call lto_write_mode_table when streaming > > offloading LTO. > > * lto-section-in.c (lto_section_name): Add "mode_table" entry. > > (lto_create_simple_input_block): Add mode_table argument to the > > lto_input_block constructors. > > * ipa-prop.c (ipa_prop_read_section, read_replacements_section): > > Likewise. > > * data-streamer-in.c (string_for_index): Likewise. > > * ipa-inline-analysis.c (inline_read_section): Likewise. > > * ipa-icf.c (sem_item_optimizer::read_section): Likewise. > > * lto-cgraph.c (input_cgraph_opt_section): Likewise. > > * lto-streamer-in.c (lto_read_body_or_constructor, > > lto_input_toplevel_asms): Likewise. > > (lto_input_mode_table): New function. > > * tree-streamer-out.c (pack_ts_fixed_cst_value_fields, > > pack_ts_decl_common_value_fields, pack_ts_type_common_value_fields): > > Use bp_pack_machine_mode. > > * real.h (struct real_format): Add name field. > > * lto-streamer.h (enum lto_section_type): Add LTO_section_mode_table. > > (class lto_input_block): Add mode_table member. > > (lto_input_block::lto_input_block): Add mode_table_ argument, > > initialize mode_table. > > (struct lto_file_decl_data): Add mode_table field. > > (lto_input_mode_table, lto_output_init_mode_table): New prototypes. > > * tree-streamer-in.c (unpack_ts_fixed_cst_value_fields, > > unpack_ts_decl_common_value_fields, > > unpack_ts_type_common_value_fields): Call bp_unpack_machine_mode. > > * tree-streamer.c (streamer_mode_table): New variable. > > * real.c (ieee_single_format, mips_single_format, > > motorola_single_format, spu_single_format, ieee_double_format, > > mips_double_format, motorola_double_format, > > ieee_extended_motorola_format, ieee_extended_intel_96_format, > > ieee_extended_intel_128_format, ieee_extended_intel_96_round_53_format, > > ibm_extended_format, mips_extended_format, ieee_quad_format, > > mips_quad_format, vax_f_format, vax_d_format, vax_g_format, > > decimal_single_format, decimal_double_format, decimal_quad_format, > > ieee_half_format, arm_half_format, real_internal_format): Add name > > field. > > * config/pdp11/pdp11.c (pdp11_f_format, pdp11_d_format): Likewise. > > lto/ > > * lto.c (lto_mode_identity_table): New variable. > > (lto_read_decls): Add mode_table argument to the lto_input_block > > constructor. > > (lto_file_finalize): Initialize mode_table. > > (lto_init): Initialize lto_mode_identity_table. > > Jakub > > -- Richard Biener SUSE LINUX GmbH, GF: Felix Imendoerffer, Jane Smithard, Jennifer Guild, Dilip Upmanyu, Graham Norton HRB 21284 (AG Nuernberg)