backport: target.h (htm_available): Add support for PPC_FEATURE2_HTM_NO_SUSPEND.

libitm/
	Backport from mainline
	2018-12-13  Peter Bergner  <bergner@linux.ibm.com>

	* config/powerpc/target.h (htm_available):  Add support for
	PPC_FEATURE2_HTM_NO_SUSPEND.  Use __builtin_cpu_supports if available.

From-SVN: r267103
This commit is contained in:
Peter Bergner 2018-12-13 18:08:47 +00:00 committed by Peter Bergner
parent 6304f16966
commit 5241690ceb
2 changed files with 22 additions and 1 deletions

View File

@ -1,3 +1,11 @@
2018-12-13 Peter Bergner <bergner@linux.ibm.com>
Backport from mainline
2018-12-13 Peter Bergner <bergner@linux.ibm.com>
* config/powerpc/target.h (htm_available): Add support for
PPC_FEATURE2_HTM_NO_SUSPEND. Use __builtin_cpu_supports if available.
2018-12-06 Release Manager
* GCC 7.4.0 released.

View File

@ -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