From d44d791012efda1f48ed647d1d3a1538d15d4e19 Mon Sep 17 00:00:00 2001 From: Jan Hubicka Date: Mon, 8 Nov 2021 18:58:03 +0100 Subject: [PATCH] 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. --- gcc/gimple.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) 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; } -- 2.7.4