2019-05-13 12:06:42 +02:00
|
|
|
commit 92d5b11beaf8919979705f44d56eb0569feceb93
|
|
|
|
Author: Nicolas Morey-Chaisemartin <NMoreyChaisemartin@suse.com>
|
|
|
|
Date: Thu Jun 8 15:11:12 2017 +0200
|
|
|
|
|
|
|
|
mvapich2-s390_get_cycles
|
|
|
|
|
|
|
|
Signed-off-by: Nicolas Morey-Chaisemartin <NMoreyChaisemartin@suse.com>
|
|
|
|
|
2017-06-09 09:27:29 +02:00
|
|
|
diff --git src/mpid/ch3/channels/common/include/mv2_clock.h src/mpid/ch3/channels/common/include/mv2_clock.h
|
2019-05-13 12:06:42 +02:00
|
|
|
index dba8e51bf129..af8bb2b77d08 100644
|
2017-06-09 09:27:29 +02:00
|
|
|
--- src/mpid/ch3/channels/common/include/mv2_clock.h
|
2017-06-08 10:50:26 +02:00
|
|
|
+++ src/mpid/ch3/channels/common/include/mv2_clock.h
|
2019-05-13 12:06:42 +02:00
|
|
|
@@ -93,6 +93,14 @@ static inline cycles_t get_cycles()
|
|
|
|
return ret;
|
2017-06-08 10:50:26 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
+#elif defined(__s390__) || defined(__s390x__)
|
|
|
|
+typedef unsigned long cycles_t;
|
|
|
|
+static inline cycles_t get_cycles()
|
|
|
|
+{
|
|
|
|
+ unsigned long clk;
|
|
|
|
+ asm volatile("stck %0" : "=Q" (clk) : : "cc");
|
|
|
|
+ return clk >> 2;
|
|
|
|
+}
|
|
|
|
#else
|
|
|
|
#warning get_cycles not implemented for this architecture: attempt asm/timex.h
|
|
|
|
#include <asm/timex.h>
|