From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 5787 invoked by alias); 1 Apr 2014 17:41:43 -0000 Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org Received: (qmail 5755 invoked by uid 48); 1 Apr 2014 17:41:40 -0000 From: "jamborm at gcc dot gnu.org" To: gcc-bugs@gcc.gnu.org Subject: [Bug ipa/60727] ICE in ipcp_verify_propagated_values, at ipa-cp.c:892 Date: Tue, 01 Apr 2014 17:41:00 -0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: ipa X-Bugzilla-Version: 4.9.0 X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: jamborm at gcc dot gnu.org X-Bugzilla-Status: UNCONFIRMED X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-SW-Source: 2014-04/txt/msg00078.txt.bz2 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60727 --- Comment #4 from Martin Jambor --- OK, the bit is actually calculated when streaming the node out (ugh) in the following way: bp_pack_value (&bp, tag == LTO_symtab_analyzed_node && symtab_get_symbol_partitioning_class (node) == SYMBOL_PARTITION && (reachable_from_other_partition_p (node, encoder) || referenced_from_other_partition_p (&node->ref_list, encoder)), 1); and with the patch, reachable_from_other_partition_p returns true because it goes over all callers and if it does not find one in the encoder it assumes it is in another partition. The one caller is an always_inline function that is not streamed after being squashed. Honza told me on IRC that he would come up with a different patch to fix the FORTIFY_SOURCE issue so I guess we don't need to fix this. Otherwise we'd need to aff !flag_wpa or some such thing to the condition.