[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH] coverage: update gcov info for newer versions of gcc
On 02.09.2023 17:11, Javi Merino wrote: > --- a/xen/common/coverage/Makefile > +++ b/xen/common/coverage/Makefile > @@ -5,7 +5,9 @@ obj-y += $(call cc-ifversion,-lt,0407, \ > gcc_3_4.o, $(call cc-ifversion,-lt,0409, \ > gcc_4_7.o, $(call cc-ifversion,-lt,0500, \ > gcc_4_9.o, $(call cc-ifversion,-lt,0700, \ > - gcc_5.o, gcc_7.o)))) > + gcc_5.o, $(call cc-ifversion,-lt,1000, \ > + gcc_7.o, $(call cc-ifversion,-lt,1200, \ > + gcc_10.o, gcc_12.o)))))) This is getting unwieldy, so I think we ought to try to limit the number of different files we have. Already gcc_4_9.c and gcc_7.c specify the same GCOV_COUNTERS and differ only in the version checks (which could be combined). Therefore ... > --- /dev/null > +++ b/xen/common/coverage/gcc_10.c > @@ -0,0 +1,31 @@ > +/* > + * This code provides functions to handle gcc's profiling data format > + * introduced with gcc 10. > + * > + * For a better understanding, refer to gcc source: > + * gcc/gcov-io.h > + * libgcc/libgcov.c > + * > + * Uses gcc-internal data definitions. > + */ > + > +#include "gcov.h" > + > +#if GCC_VERSION < 100000 || GCC_VERSION > 120000 > +#error "Wrong version of GCC used to compile gcov" > +#endif > + > +#define GCOV_COUNTERS 8 > +#define GCOV_UNIT_SIZE 1 > + > +#include "gcc_4_7.c" ... this could simply re-use gcc_4_7.c directly, with just the version check there suitably tweaked. > --- a/xen/common/coverage/gcc_4_7.c > +++ b/xen/common/coverage/gcc_4_7.c > @@ -27,6 +27,7 @@ > # error "Wrong version of GCC used to compile gcov" > # endif > #define GCOV_COUNTERS 8 > +#define GCOV_UNIT_SIZE 1 > #endif If further this became a separate #ifdef, ... > --- a/xen/common/coverage/gcc_4_9.c > +++ b/xen/common/coverage/gcc_4_9.c > @@ -19,6 +19,7 @@ > #endif > > #define GCOV_COUNTERS 9 > +#define GCOV_UNIT_SIZE 1 > > #include "gcc_4_7.c" > > --- a/xen/common/coverage/gcc_5.c > +++ b/xen/common/coverage/gcc_5.c > @@ -19,6 +19,7 @@ > #endif > > #define GCOV_COUNTERS 10 > +#define GCOV_UNIT_SIZE 1 > > #include "gcc_4_7.c" > ... touching these two files could be avoided altogether. Henry - afaict this was submitted after the feature submission deadline, so you may want to consider giving it an exception. Jan
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |