Source: benchmark
Severity: normal
Tags: patch
Dear Maintainer,
The build fails here:
[ 25%] Building CXX object src/CMakeFiles/benchmark.dir/sysinfo.cc.o
cd /<<PKGBUILDDIR>>/obj-hppa-linux-gnu/src && /usr/bin/c++ -DHAVE_POSIX_REGEX
-DHAVE_STD_REGEX -DHAVE_STEADY_CLOCK -Dbenchmark_EXPORTS
-I/<<PKGBUILDDIR>>/include -I/<<PKGBUILDDIR>>/src
-I/<<PKGBUILDDIR>>/src/../include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=.
-Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -std=c++11
-Wall -Wextra -Wshadow -pedantic -pedantic-errors -Wfloat-equal
-fstrict-aliasing -Wstrict-aliasing -fPIC -o
CMakeFiles/benchmark.dir/sysinfo.cc.o -c /<<PKGBUILDDIR>>/src/sysinfo.cc
In file included from /<<PKGBUILDDIR>>/src/sysinfo.cc:57:
/<<PKGBUILDDIR>>/src/cycleclock.h:171:2: error: #error You need to define
CycleTimer for your OS and CPU
#error You need to define CycleTimer for your OS and CPU
The attached patch adds a bit of code to access the interval timer on hppa.
This fixes the build error.
Note that a 32-bit counter value is returned when the processor is running
in narrow mode. The counter nominally runs at the processor frequency.
Regards,
Dave Anglin
-- System Information:
Debian Release: buster/sid
APT prefers buildd-unstable
APT policy: (500, 'buildd-unstable'), (500, 'unstable')
Architecture: hppa (parisc64)
Kernel: Linux 4.14.74+ (SMP w/4 CPU cores)
Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968), LANGUAGE=C
(charmap=ANSI_X3.4-1968)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
--- cycleclock.h.save 2018-10-08 11:07:53.775998772 -0400
+++ cycleclock.h 2018-10-08 12:01:01.013408888 -0400
@@ -100,6 +100,11 @@
int64_t itc;
asm("mov %0 = ar.itc" : "=r"(itc));
return itc;
+#elif defined(__hppa__)
+ // Counter can only be read when PSW S bit is 0.
+ long itc;
+ asm("mfctl 16,%0" : "=r"(itc));
+ return static_cast<int64_t>(itc);
#elif defined(COMPILER_MSVC) && defined(_M_IX86)
// Older MSVC compilers (like 7.x) don't seem to support the
// __rdtsc intrinsic properly, so I prefer to use _asm instead
--
debian-science-maintainers mailing list
[email protected]
https://alioth-lists.debian.net/cgi-bin/mailman/listinfo/debian-science-maintainers