From d1573fe051974d73af613b1ccce5dcecc21ee94a Mon Sep 17 00:00:00 2001 From: Peter Bergner Date: Thu, 13 Dec 2018 18:04:11 +0000 Subject: target.h (htm_available): Add support for PPC_FEATURE2_HTM_NO_SUSPEND. libitm/ * config/powerpc/target.h (htm_available): Add support for PPC_FEATURE2_HTM_NO_SUSPEND. Use __builtin_cpu_supports if available. From-SVN: r267101 --- libitm/config/powerpc/target.h | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) (limited to 'libitm/config/powerpc') diff --git a/libitm/config/powerpc/target.h b/libitm/config/powerpc/target.h index 8288173..77652a6 100644 --- a/libitm/config/powerpc/target.h +++ b/libitm/config/powerpc/target.h @@ -81,7 +81,20 @@ cpu_relax (void) static inline bool htm_available (void) { - return (getauxval (AT_HWCAP2) & PPC_FEATURE2_HAS_HTM) ? true : false; +#ifdef __BUILTIN_CPU_SUPPORTS__ + if (__builtin_cpu_supports ("htm-no-suspend") + || __builtin_cpu_supports ("htm")) + return true; +#else + unsigned long htm_flags = PPC_FEATURE2_HAS_HTM +#ifdef PPC_FEATURE2_HTM_NO_SUSPEND + | PPC_FEATURE2_HTM_NO_SUSPEND +#endif + | 0; + if (getauxval (AT_HWCAP2) & htm_flags) + return true; +#endif + return false; } static inline uint32_t -- cgit v1.1