re PR target/61193 (ABI incompatibility between POWER and Z HTM builtins and intrinsics)

PR target/61193
	* config/rs6000/htmxlintrin.h (_HTM_TBEGIN_STARTED): New define.
	(__TM_simple_begin): Use it.
	(__TM_begin): Likewise.

From-SVN: r210486
This commit is contained in:
Peter Bergner 2014-05-15 22:43:12 -05:00 committed by Peter Bergner
parent ef1f23cc6b
commit d8c55b91ae
2 changed files with 14 additions and 2 deletions

View File

@ -1,3 +1,10 @@
2014-05-15 Peter Bergner <bergner@vnet.ibm.com>
PR target/61193
* config/rs6000/htmxlintrin.h (_HTM_TBEGIN_STARTED): New define.
(__TM_simple_begin): Use it.
(__TM_begin): Likewise.
2014-05-15 Martin Jambor <mjambor@suse.cz>
PR ipa/61085

View File

@ -46,12 +46,17 @@ extern "C" {
typedef char TM_buff_type[16];
/* Compatibility macro with s390. This macro can be used to determine
whether a transaction was successfully started from the __TM_begin()
and __TM_simple_begin() intrinsic functions below. */
#define _HTM_TBEGIN_STARTED 1
extern __inline long
__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
__TM_simple_begin (void)
{
if (__builtin_expect (__builtin_tbegin (0), 1))
return 1;
return _HTM_TBEGIN_STARTED;
return 0;
}
@ -61,7 +66,7 @@ __TM_begin (void* const TM_buff)
{
*_TEXASRL_PTR (TM_buff) = 0;
if (__builtin_expect (__builtin_tbegin (0), 1))
return 1;
return _HTM_TBEGIN_STARTED;
#ifdef __powerpc64__
*_TEXASR_PTR (TM_buff) = __builtin_get_texasr ();
#else