summaryrefslogtreecommitdiff
path: root/libitm/config/s390/target.h
diff options
context:
space:
mode:
authorkrebbel <krebbel@138bc75d-0d04-0410-961f-82ee72b054a4>2013-07-29 08:03:38 +0000
committerkrebbel <krebbel@138bc75d-0d04-0410-961f-82ee72b054a4>2013-07-29 08:03:38 +0000
commitaa6aad6fae642f20db3a49fff6a3d1af9b2f4f28 (patch)
treea93a5af9999bdb5672913de89af5b23b583cd6da /libitm/config/s390/target.h
parent8a92cb4c1599e7ad229dacd1ef9085af2070bf20 (diff)
downloadgcc-aa6aad6fae642f20db3a49fff6a3d1af9b2f4f28.tar.gz
2013-07-29 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* config/s390/target.h (htm_begin, htm_commit, htm_abort) (htm_transaction_active): Enable zEC12 instructions in the assembler. * configure.tgt: Remove -Wa,-march=zEC12 from XCFLAGS. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201301 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libitm/config/s390/target.h')
-rw-r--r--libitm/config/s390/target.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/libitm/config/s390/target.h b/libitm/config/s390/target.h
index 17228f844dd..cec49cf7774 100644
--- a/libitm/config/s390/target.h
+++ b/libitm/config/s390/target.h
@@ -85,6 +85,7 @@ htm_init ()
static inline uint32_t
htm_begin ()
{
+ __asm volatile (".machine \"all\" \n\t");
return __builtin_tbegin_nofloat (NULL);
}
@@ -97,12 +98,14 @@ htm_begin_success (uint32_t begin_ret)
static inline void
htm_commit ()
{
+ __asm volatile (".machine \"all\" \n\t");
__builtin_tend ();
}
static inline void
htm_abort ()
{
+ __asm volatile (".machine \"all\" \n\t");
__builtin_tabort (_HTM_FIRST_USER_ABORT_CODE);
}
@@ -115,6 +118,7 @@ htm_abort_should_retry (uint32_t begin_ret)
static inline bool
htm_transaction_active ()
{
+ __asm volatile (".machine \"all\" \n\t");
return __builtin_tx_nesting_depth() != 0;
}