+2014-08-20 Jan Hubicka <hubicka@ucw.cz>
+
+ * tree-profile.c (tree_profiling): Skip external functions
+ when doing coverage instrumentation.
+ * cgraphunit.c (compile): Do not assert that all nodes are reachable.
+
2014-08-20 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
* config/rs6000/altivec.h (vec_cpsgn): New #define.
cgraph_materialize_all_clones ();
bitmap_obstack_initialize (NULL);
execute_ipa_pass_list (g->get_passes ()->all_late_ipa_passes);
-#ifdef ENABLE_CHECKING
- symtab_node::verify_symtab_nodes ();
- /* Verify late IPA passes cleaned up after themselves. */
- gcc_assert (!symtab_remove_unreachable_nodes (false, dump_file));
-#endif
bitmap_obstack_release (NULL);
mark_functions_to_output ();
* gcc.target/powerpc/swaps-p8-11.c: New test.
* gcc.target/powerpc/swaps-p8-12.c: New test.
+2014-08-20 Jan Hubicka <hubicka@ucw.cz>
+
+ * gcc.dg/ipa/ctor-empty-1.c: Update template.
+
2014-08-20 Jan Hubicka <hubicka@ucw.cz>
* g++.dg/ipa/devirt-37.C: Fix testcase.
/* { dg-do compile } */
-/* { dg-options "-O3 -c -fdump-ipa-cgraph" } */
+/* { dg-options "-O3 -c -fdump-ipa-free-inline-summary" } */
static __attribute__((constructor))
void empty_constructor()
{
}
-/* { dg-final { scan-ipa-dump "Reclaiming functions: empty_constructor" "cgraph" } } */
-/* { dg-final { cleanup-ipa-dump "cgraph" } } */
+/* { dg-final { scan-ipa-dump "Reclaiming functions: empty_constructor" "free-inline-summary" } } */
+/* { dg-final { cleanup-ipa-dump "free-inline-summary" } } */
if (DECL_SOURCE_LOCATION (node->decl) == BUILTINS_LOCATION)
continue;
+ /* Do not instrument extern inline functions when testing coverage.
+ While this is not perfectly consistent (early inlined extern inlines
+ will get acocunted), testsuite expects that. */
+ if (DECL_EXTERNAL (node->decl)
+ && flag_test_coverage)
+ continue;
+
push_cfun (DECL_STRUCT_FUNCTION (node->decl));
/* Local pure-const may imply need to fixup the cfg. */