* configure.in (enable-coverage): Add SELF_COVERAGE.
* profile.c (end_branch_prob): Use SELF_COVERAGE.
From-SVN: r60476
+2002-12-24 Nathan Sidwell <nathan@codesourcery.com>
+
+ * configure.in (enable-coverage): Add SELF_COVERAGE.
+ * profile.c (end_branch_prob): Use SELF_COVERAGE.
+
2002-12-24 Jim Wilson <wilson@redhat.com>
* alias.c (record_set): Handle multi-reg hard registers.
[ --enable-coverage[=LEVEL]
enable compiler\'s code coverage collection.
Use to measure compiler performance and locate
- unused parts of the compiler. With LEVEL, specificy
+ unused parts of the compiler. With LEVEL, specify
optimization. Values are opt, noopt,
default is noopt],
[case "${enableval}" in
yes|noopt)
- coverage_flags="-fprofile-arcs -ftest-coverage -O0"
+ coverage_flags="-fprofile-arcs -ftest-coverage -O0 -DSELF_COVERAGE=1"
;;
opt)
- coverage_flags="-fprofile-arcs -ftest-coverage -O2"
+ coverage_flags="-fprofile-arcs -ftest-coverage -O2 -DSELF_COVERAGE=2"
;;
*)
AC_MSG_ERROR(unknown coverage setting $enableval)
{
if (bbg_file)
{
-#if __GNUC__ && !CROSS_COMPILE && SUPPORTS_WEAK
- /* If __gcov_init has a value in the compiler, it means we
- are instrumenting ourselves. We should not remove the
- counts file, because we might be recompiling
- ourselves. The .da files are all removed during copying
- the stage1 files. */
- extern void __gcov_init (void *)
- __attribute__ ((weak));
-
- if (!__gcov_init)
- unlink (da_file_name);
-#else
+#if !SELF_COVERAGE
+ /* If the compiler is instrumented, we should not remove the
+ counts file, because we might be recompiling
+ ourselves. The .da files are all removed during copying
+ the stage1 files. */
unlink (da_file_name);
#endif
fclose (bbg_file);