aboutsummaryrefslogtreecommitdiffstats
path: root/main/mariadb/ppc-remove-glibc-dep.patch
diff options
context:
space:
mode:
Diffstat (limited to 'main/mariadb/ppc-remove-glibc-dep.patch')
-rw-r--r--main/mariadb/ppc-remove-glibc-dep.patch23
1 files changed, 5 insertions, 18 deletions
diff --git a/main/mariadb/ppc-remove-glibc-dep.patch b/main/mariadb/ppc-remove-glibc-dep.patch
index 57f5008b860..8d5123498c0 100644
--- a/main/mariadb/ppc-remove-glibc-dep.patch
+++ b/main/mariadb/ppc-remove-glibc-dep.patch
@@ -26,24 +26,11 @@ index f2e26fca..94599b74 100644
#define HMT_high() asm volatile("or 3,3,3")
#else
@@ -72,7 +71,7 @@ static inline void MY_RELAX_CPU(void)
- */
- YieldProcessor();
+ __asm__ __volatile__ ("pause");
+ #endif
#elif defined(_ARCH_PWR8)
- __ppc_get_timebase();
+ __builtin_ppc_get_timebase();
- #else
- int32 var, oldval = 0;
- my_atomic_cas32_strong_explicit(&var, &oldval, 1, MY_MEMORY_ORDER_RELAXED,
-diff --git a/storage/tokudb/PerconaFT/portability/toku_time.h b/storage/tokudb/PerconaFT/portability/toku_time.h
-index c4c45b8e..2f7a07f5 100644
---- a/storage/tokudb/PerconaFT/portability/toku_time.h
-+++ b/storage/tokudb/PerconaFT/portability/toku_time.h
-@@ -110,7 +110,7 @@ static inline tokutime_t toku_time_now(void) {
- __asm __volatile__ ("mrs %[rt], cntvct_el0" : [rt] "=r" (result));
- return result;
- #elif defined(__powerpc__)
-- return __ppc_get_timebase();
-+ return __builtin_ppc_get_timebase();
- #else
- #error No timer implementation for this platform
- #endif
+ #elif defined __GNUC__ && (defined __arm__ || defined __aarch64__)
+ /* Mainly, prevent the compiler from optimizing away delay loops */
+ __asm__ __volatile__ ("":::"memory");