7 -#include <sys/platform/ppc.h>
8 /* Very low priority */
9 -#define HMT_very_low() __ppc_set_ppr_very_low()
10 +#define HMT_very_low() asm volatile("or 31,31,31")
12 -#define HMT_low() __ppc_set_ppr_low()
13 +#define HMT_low() asm volatile ("or 1,1,1")
14 /* Medium low priority */
15 -#define HMT_medium_low() __ppc_set_ppr_med_low()
16 +#define HMT_medium_low() asm volatile ("or 6,6,6")
18 -#define HMT_medium() __ppc_set_ppr_med()
19 +#define HMT_medium() asm volatile ("or 2,2,2")
20 /* Medium high priority */
21 -#define HMT_medium_high() __ppc_set_ppr_med_high()
22 +#define HMT_medium_high() asm volatile("or 5,5,5")
24 #define HMT_high() asm volatile("or 3,3,3")
26 @@ -80,7 +79,7 @@ static inline void MY_RELAX_CPU(void)
27 __asm__ __volatile__ ("pause");
29 #elif defined(_ARCH_PWR8)
30 - __ppc_get_timebase();
31 + __builtin_ppc_get_timebase();
32 #elif defined __GNUC__ && (defined __arm__ || defined __aarch64__)
33 /* Mainly, prevent the compiler from optimizing away delay loops */
34 __asm__ __volatile__ ("":::"memory");
35 --- a/storage/tokudb/PerconaFT/portability/toku_time.h
36 +++ b/storage/tokudb/PerconaFT/portability/toku_time.h
37 @@ -124,7 +124,7 @@ static inline tokutime_t toku_time_now(v
38 __asm __volatile__ ("mrs %[rt], cntvct_el0" : [rt] "=r" (result));
40 #elif defined(__powerpc__)
41 - return __ppc_get_timebase();
42 + return __builtin_ppc_get_timebase();
44 #error No timer implementation for this platform