Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE:Leap:42.3
perftest
perftest-aarch64.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File perftest-aarch64.patch of Package perftest
From a589682e90aefaa2c9ab03a3e1426b0f7c1a5eb2 Mon Sep 17 00:00:00 2001 From: Gil Rockah <gilr@mellanox.com> Date: Mon, 26 May 2014 19:10:33 +0300 Subject: [PATCH 1/1] Add support for aarch64. added config.guess and config.sub scripts to source code. Change-Id: I5ccc5f2a28e40e53fcf13ec1f6cd3c68978347e1 Signed-off-by: Gil Rockah <gilr@mellanox.com> --- Makefile.am | 1 + config/config.guess | 1420 ++++++++++++++++++++++++++++++++++++++++ config/config.sub | 1794 +++++++++++++++++++++++++++++++++++++++++++++++++++ src/get_clock.c | 7 +- src/get_clock.h | 11 + 5 files changed, 3232 insertions(+), 1 deletions(-) create mode 100644 config/config.guess create mode 100644 config/config.sub --- a/src/get_clock.c +++ b/src/get_clock.c @@ -191,7 +191,12 @@ double get_cpu_mhz(int no_cpu_freq_fail) double sample, proc, delta; sample = sample_get_cpu_mhz(); proc = proc_get_cpu_mhz(no_cpu_freq_fail); - + #ifdef __aarch64__ + if (proc < 1) //no cpu_freq info in /proc/cpuinfo + { + proc = sample; + } + #endif if (!proc || !sample) return 0; --- a/src/get_clock.h +++ b/src/get_clock.h @@ -78,6 +78,17 @@ static inline cycles_t get_cycles(void) asm volatile("stck %0" : "=Q" (clk) : : "cc"); return clk >> 2; } +#elif defined(__aarch64__) + +typedef unsigned long cycles_t; +static inline cycles_t get_cycles() +{ + cycles_t cval; + asm volatile("isb" : : : "memory"); + asm volatile("mrs %0, cntvct_el0" : "=r" (cval)); + return cval; +} + #else #warning get_cycles not implemented for this architecture: attempt asm/timex.h #include <asm/timex.h> -- 1.7.1
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor