Remove workaround allowing interposition of nested functions.
authorJan Hubicka <hubicka@ucw.cz>
Mon, 8 Nov 2021 17:58:03 +0000 (18:58 +0100)
committerJan Hubicka <hubicka@ucw.cz>
Mon, 8 Nov 2021 17:58:51 +0000 (18:58 +0100)
* 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

index 3d1d3a1..9e65fa6 100644 (file)
@@ -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;
        }