From d170ecc9fcb386bd5f62eb86dd6e411e6fcb4cef Mon Sep 17 00:00:00 2001 From: Sebastian Huber <sebastian.huber@embedded-brains.de> Date: Thu, 24 Mar 2022 21:59:21 +0100 Subject: [PATCH] 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. --- gcc/gcov-io.cc | 7 ------- gcc/gcov-io.h | 5 +---- libgcc/libgcov-driver-system.c | 4 ++-- libgcc/libgcov-util.c | 2 +- libgcc/libgcov.h | 1 - 5 files changed, 4 insertions(+), 15 deletions(-) diff --git a/gcc/gcov-io.cc b/gcc/gcov-io.cc index 72c40f8eaa06..017a6e32a5d0 100644 --- a/gcc/gcov-io.cc +++ b/gcc/gcov-io.cc @@ -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; diff --git a/gcc/gcov-io.h b/gcc/gcov-io.h index 99ce7dbccc8a..afe74b002f1e 100644 --- a/gcc/gcov-io.h +++ b/gcc/gcov-io.h @@ -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; diff --git a/libgcc/libgcov-driver-system.c b/libgcc/libgcov-driver-system.c index eef6e3cbda1c..9abb2fe7f74b 100644 --- a/libgcc/libgcov-driver-system.c +++ b/libgcc/libgcov-driver-system.c @@ -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; diff --git a/libgcc/libgcov-util.c b/libgcc/libgcov-util.c index 100f1b19f1a2..db157220c9d8 100644 --- a/libgcc/libgcov-util.c +++ b/libgcc/libgcov-util.c @@ -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; diff --git a/libgcc/libgcov.h b/libgcc/libgcov.h index 40e845ce3ea4..f190547e819d 100644 --- a/libgcc/libgcov.h +++ b/libgcc/libgcov.h @@ -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; -- GitLab