Benchtests broken on AArch64

Wilco Dijkstra Wilco.Dijkstra@arm.com
Fri Jun 5 16:05:41 GMT 2020


Hi,

With latest sources after the recent time changes, make bench reports this on AArch64:

In file included from ../sysdeps/generic/hp-timing.h:23,
                 from bench-timing.h:22,
                 from bench-timing-type.c:19:
../include/time.h: In function ‘time_now’:
../include/time.h:298:28: error: implicit declaration of function ‘__clock_gettime’; did you mean ‘__clock_settime’? [-Werror=implicit-function-declaration]
  298 | # define __clock_gettime64 __clock_gettime
      |                            ^~~~~~~~~~~~~~~
bench-timing.h:21:25: note: in expansion of macro ‘__clock_gettime64’
   21 | #define __clock_gettime __clock_gettime64
      |                         ^~~~~~~~~~~~~~~~~
../include/time.h:480:3: note: in expansion of macro ‘__clock_gettime’
  480 |   __clock_gettime (TIME_CLOCK_GETTIME_CLOCKID, &ts);
      |   ^~~~~~~~~~~~~~~
cc1: all warnings being treated as errors

After fixing time_now() to use __clock_gettime64, we get:

In file included from ./bench-timing.h:22,
                 from ./bench-skeleton.c:25,
                 from /home/wdijkstr/build/glibc_write/benchtests/bench-acos.c:2752:
./bench-skeleton.c: In function ‘main’:
../sysdeps/generic/hp-timing.h:37:23: error: storage size of ‘tv’ isn’t known
   37 |   struct __timespec64 tv;      \
      |                       ^~
./bench-timing.h:31:25: note: in expansion of macro ‘HP_TIMING_NOW’
   31 | #define TIMING_NOW(var) HP_TIMING_NOW (var)
      |                         ^~~~~~~~~~~~~
./bench-skeleton.c:82:8: note: in expansion of macro ‘TIMING_NOW’
   82 |        TIMING_NOW (start);
      |        ^~~~~~~~~~
../sysdeps/generic/hp-timing.h:38:3: error: implicit declaration of function ‘__clock_gettime64’; did you mean ‘clock_gettime’? [-Werror=implicit-function-declaration]
   38 |   __clock_gettime64 (CLOCK_MONOTONIC, &tv);   \
      |   ^~~~~~~~~~~~~~~~~

So what is going on here? It seems even the time.h header is now getting confused as to we want gettime or gettime64...

Wilco


More information about the Libc-alpha mailing list