libgcov: report about a different timestamp (PR gcov-profile/85759).
2018-05-29 Martin Liska <mliska@suse.cz> PR gcov-profile/85759 * doc/gcov.texi: Document GCOV_ERROR_FILE and GCOV_EXIT_AT_ERROR env variables. 2018-05-29 Martin Liska <mliska@suse.cz> PR gcov-profile/85759 * libgcov-driver-system.c (gcov_error): Introduce usage of GCOV_EXIT_AT_ERROR env. variable. * libgcov-driver.c (merge_one_data): Print error that we overwrite a gcov file with a different timestamp. From-SVN: r260895
This commit is contained in:
parent
e379122d1f
commit
0e8f29daae
5 changed files with 37 additions and 3 deletions
|
@ -1,3 +1,9 @@
|
|||
2018-05-29 Martin Liska <mliska@suse.cz>
|
||||
|
||||
PR gcov-profile/85759
|
||||
* doc/gcov.texi: Document GCOV_ERROR_FILE and GCOV_EXIT_AT_ERROR
|
||||
env variables.
|
||||
|
||||
2018-05-29 Jakub Jelinek <jakub@redhat.com>
|
||||
|
||||
* tree-cfg.c (verify_gimple_assign_unary): Add checking for
|
||||
|
|
|
@ -801,6 +801,14 @@ as well as handlers registered with @code{atexit}.
|
|||
If an executable loads a dynamic shared object via dlopen functionality,
|
||||
@option{-Wl,--dynamic-list-data} is needed to dump all profile data.
|
||||
|
||||
Profiling run-time library reports various errors related to profile
|
||||
manipulation and profile saving. Errors are printed into standard error output
|
||||
or @samp{GCOV_ERROR_FILE} file, if environment variable is used.
|
||||
In order to terminate immediately after an errors occurs
|
||||
set @samp{GCOV_EXIT_AT_ERROR} environment variable.
|
||||
That can help users to find profile clashing which leads
|
||||
to a misleading profile.
|
||||
|
||||
@c man end
|
||||
|
||||
@node Gcov Data Files
|
||||
|
|
|
@ -1,3 +1,11 @@
|
|||
2018-05-29 Martin Liska <mliska@suse.cz>
|
||||
|
||||
PR gcov-profile/85759
|
||||
* libgcov-driver-system.c (gcov_error): Introduce usage of
|
||||
GCOV_EXIT_AT_ERROR env. variable.
|
||||
* libgcov-driver.c (merge_one_data): Print error that we
|
||||
overwrite a gcov file with a different timestamp.
|
||||
|
||||
2018-05-23 Kalamatee <kalamatee@gmail.com>
|
||||
|
||||
* config/m68k/lb1sf68.S (Laddsf$nf): Fix sign bit handling in
|
||||
|
|
|
@ -62,8 +62,16 @@ gcov_error (const char *fmt, ...)
|
|||
va_list argp;
|
||||
|
||||
va_start (argp, fmt);
|
||||
ret = vfprintf (get_gcov_error_file (), fmt, argp);
|
||||
FILE *f = get_gcov_error_file ();
|
||||
ret = vfprintf (f, fmt, argp);
|
||||
va_end (argp);
|
||||
|
||||
if (getenv ("GCOV_EXIT_AT_ERROR"))
|
||||
{
|
||||
fprintf (f, "profiling:exiting after an error\n");
|
||||
exit (1);
|
||||
}
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
|
|
@ -372,8 +372,12 @@ merge_one_data (const char *filename,
|
|||
|
||||
length = gcov_read_unsigned ();
|
||||
if (length != gi_ptr->stamp)
|
||||
/* Read from a different compilation. Overwrite the file. */
|
||||
return 0;
|
||||
{
|
||||
/* Read from a different compilation. Overwrite the file. */
|
||||
gcov_error ("profiling:%s:overwriting an existing profile data "
|
||||
"with a different timestamp\n", filename);
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* Look for program summary. */
|
||||
for (f_ix = 0;;)
|
||||
|
|
Loading…
Add table
Reference in a new issue