From: Jan Hubicka Date: Mon, 8 Nov 2021 17:58:03 +0000 (+0100) Subject: Remove workaround allowing interposition of nested functions. X-Git-Tag: upstream/12.2.0~3690 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=d44d791012efda1f48ed647d1d3a1538d15d4e19;p=platform%2Fupstream%2Fgcc.git Remove workaround allowing interposition of nested functions. * gimple.c (gimple_call_static_chain_flags): Revert the workaround allowing interposition since issues with binds_to_local_def were hopefully solved. --- diff --git a/gcc/gimple.c b/gcc/gimple.c index 3d1d3a1..9e65fa6 100644 --- a/gcc/gimple.c +++ b/gcc/gimple.c @@ -1645,13 +1645,13 @@ gimple_call_static_chain_flags (const gcall *stmt) modref_summary *summary = node ? get_modref_function_summary (node) : NULL; + /* Nested functions should always bind to current def since + there is no public ABI for them. */ + gcc_checking_assert (node->binds_to_current_def_p ()); if (summary) { int modref_flags = summary->static_chain_flags; - /* ??? Nested functions should always bind to current def. */ - if (!node->binds_to_current_def_p ()) - modref_flags = interposable_eaf_flags (modref_flags, flags); if (dbg_cnt (ipa_mod_ref_pta)) flags |= modref_flags; }