diff options
author | Andreas Krebbel <Andreas.Krebbel@de.ibm.com> | 2013-07-29 08:03:38 +0000 |
---|---|---|
committer | Andreas Krebbel <krebbel@gcc.gnu.org> | 2013-07-29 08:03:38 +0000 |
commit | aaaffb2a0dbfca68f5a7551d246a07619ac18f4e (patch) | |
tree | a93a5af9999bdb5672913de89af5b23b583cd6da /libitm | |
parent | a71f074979f6c12902ee08491e70c0f62fc6814e (diff) | |
download | gcc-aaaffb2a0dbfca68f5a7551d246a07619ac18f4e.zip gcc-aaaffb2a0dbfca68f5a7551d246a07619ac18f4e.tar.gz gcc-aaaffb2a0dbfca68f5a7551d246a07619ac18f4e.tar.bz2 |
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.
From-SVN: r201301
Diffstat (limited to 'libitm')
-rw-r--r-- | libitm/ChangeLog | 7 | ||||
-rw-r--r-- | libitm/config/s390/target.h | 4 | ||||
-rw-r--r-- | libitm/configure.tgt | 2 |
3 files changed, 12 insertions, 1 deletions
diff --git a/libitm/ChangeLog b/libitm/ChangeLog index 3e9a706..dd558c0 100644 --- a/libitm/ChangeLog +++ b/libitm/ChangeLog @@ -1,3 +1,10 @@ +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. + 2013-07-17 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> * acinclude.m4: Add htm asm check for s390. diff --git a/libitm/config/s390/target.h b/libitm/config/s390/target.h index 17228f8..cec49cf 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; } diff --git a/libitm/configure.tgt b/libitm/configure.tgt index 4dc2807..5078455 100644 --- a/libitm/configure.tgt +++ b/libitm/configure.tgt @@ -109,7 +109,7 @@ case "${target_cpu}" in ARCH=x86 ;; s390|s390x) - XCFLAGS="${XCFLAGS} -mzarch -mhtm -Wa,-march=zEC12" + XCFLAGS="${XCFLAGS} -mzarch -mhtm" ARCH=s390 ;; |