libgcov: use proper type for n_functions
authorMartin Liska <mliska@suse.cz>
Tue, 10 May 2022 08:52:19 +0000 (10:52 +0200)
committerMartin Liska <mliska@suse.cz>
Tue, 10 May 2022 10:47:10 +0000 (12:47 +0200)
gcov_info::n_functions type is initialized by generated
code in build_info_type:

/* n_functions */
field = build_decl (BUILTINS_LOCATION, FIELD_DECL, NULL_TREE,
    get_gcov_unsigned_t ());

It uses gcov_unsigned_t, but the struct definition in libgcov.h uses
unsigned type. That brings troubled on 16-bit targets.

PR gcov-profile/105535

libgcc/ChangeLog:

* libgcov.h (struct gcov_info): Use gcov_unsigned_t for
n_functions.

Co-Authored-By: Hans-Peter Helfert <peter-helfert@t-online.de>
libgcc/libgcov.h

index 487bd14..c7545cc 100644 (file)
@@ -235,7 +235,7 @@ struct gcov_info
   gcov_merge_fn merge[GCOV_COUNTERS];  /* merge functions (null for
                                          unused) */
   
-  unsigned n_functions;                /* number of functions */
+  gcov_unsigned_t n_functions;         /* number of functions */
 
 #ifndef IN_GCOV_TOOL
   const struct gcov_fn_info *const *functions; /* pointer to pointers