gcov: Add mode to all gcov_open()

gcc/

	* gcov-io.cc (gcov_open): Always use the mode parameter.
	* gcov-io.h (gcov_open): Declare it unconditionally.

libgcc/

	* libgcov-driver-system.c (gcov_exit_open_gcda_file): Open file for
	reading and writing.
	* libgcov-util.c (read_gcda_file): Open file for reading.
	* libgcov.h (gcov_open): Delete declaration.
This commit is contained in:
Sebastian Huber 2022-03-24 21:59:21 +01:00
parent 336ea18ad7
commit d170ecc9fc
5 changed files with 4 additions and 15 deletions

View File

@ -89,15 +89,8 @@ from_file (gcov_unsigned_t value)
Return zero on failure, non-zero on success. */
GCOV_LINKAGE int
#if IN_LIBGCOV
gcov_open (const char *name)
#else
gcov_open (const char *name, int mode)
#endif
{
#if IN_LIBGCOV
int mode = 0;
#endif
#if GCOV_LOCKED
struct flock s_flock;
int fd;

View File

@ -347,15 +347,12 @@ struct gcov_summary
functions for writing. Your file may become corrupted if you break
these invariants. */
#if !IN_LIBGCOV
GCOV_LINKAGE int gcov_open (const char */*name*/, int /*direction*/);
#endif
#if !IN_LIBGCOV || defined (IN_GCOV_TOOL)
GCOV_LINKAGE int gcov_magic (gcov_unsigned_t, gcov_unsigned_t);
#endif
/* Available everywhere. */
GCOV_LINKAGE int gcov_open (const char *, int) ATTRIBUTE_HIDDEN;
GCOV_LINKAGE int gcov_close (void) ATTRIBUTE_HIDDEN;
GCOV_LINKAGE gcov_unsigned_t gcov_read_unsigned (void) ATTRIBUTE_HIDDEN;
GCOV_LINKAGE gcov_type gcov_read_counter (void) ATTRIBUTE_HIDDEN;

View File

@ -309,7 +309,7 @@ gcov_exit_open_gcda_file (struct gcov_info *gi_ptr,
gf->filename = replace_filename_variables (gf->filename);
if (!gcov_open (gf->filename))
if (!gcov_open (gf->filename, 0))
{
/* Open failed likely due to missed directory.
Create directory and retry to open file. */
@ -318,7 +318,7 @@ gcov_exit_open_gcda_file (struct gcov_info *gi_ptr,
fprintf (stderr, "profiling:%s:Skip\n", gf->filename);
return -1;
}
if (!gcov_open (gf->filename))
if (!gcov_open (gf->filename, 0))
{
fprintf (stderr, "profiling:%s:Cannot open\n", gf->filename);
return -1;

View File

@ -268,7 +268,7 @@ read_gcda_file (const char *filename)
k_ctrs_mask[i] = 0;
k_ctrs_types = 0;
if (!gcov_open (filename))
if (!gcov_open (filename, 1))
{
fnotice (stderr, "%s:cannot open\n", filename);
return NULL;

View File

@ -343,7 +343,6 @@ extern int __gcov_execve (const char *, char *const [], char *const [])
ATTRIBUTE_HIDDEN;
/* Functions that only available in libgcov. */
GCOV_LINKAGE int gcov_open (const char */*name*/) ATTRIBUTE_HIDDEN;
GCOV_LINKAGE void gcov_write_summary (gcov_unsigned_t /*tag*/,
const struct gcov_summary *)
ATTRIBUTE_HIDDEN;