This is the mail archive of the
gcc-cvs@gcc.gnu.org
mailing list for the GCC project.
r201440 - in /branches/gcc-4_8-branch: gcc/Chan...
- From: krebbel at gcc dot gnu dot org
- To: gcc-cvs at gcc dot gnu dot org
- Date: Fri, 02 Aug 2013 15:41:10 -0000
- Subject: r201440 - in /branches/gcc-4_8-branch: gcc/Chan...
Author: krebbel
Date: Fri Aug 2 15:41:10 2013
New Revision: 201440
URL: http://gcc.gnu.org/viewcvs?rev=201440&root=gcc&view=rev
Log:
2013-08-02 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
Backports from mainline:
2013-06-27 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* config/s390/s390.c: Rename UNSPEC_CCU_TO_INT to
UNSPEC_STRCMPCC_TO_INT and UNSPEC_CCZ_TO_INT to UNSPEC_CC_TO_INT.
(struct machine_function): Add tbegin_p.
(s390_canonicalize_comparison): Fold CC mode compares to
conditional jump if possible.
(s390_emit_jump): Return the emitted jump.
(s390_branch_condition_mask, s390_branch_condition_mnemonic):
Handle CCRAWmode compares.
(s390_option_override): Default to -mhtm if available.
(s390_reg_clobbered_rtx): Handle floating point regs as well.
(s390_regs_ever_clobbered): Use s390_regs_ever_clobbered also for
FPRs instead of df_regs_ever_live_p.
(s390_optimize_nonescaping_tx): New function.
(s390_init_frame_layout): Extend clobbered_regs array to cover
FPRs as well.
(s390_emit_prologue): Call s390_optimize_nonescaping_tx.
(s390_expand_tbegin): New function.
(enum s390_builtin): New enum definition.
(code_for_builtin): New array definition.
(s390_init_builtins): New function.
(s390_expand_builtin): New function.
(TARGET_INIT_BUILTINS): Define.
(TARGET_EXPAND_BUILTIN): Define.
* common/config/s390/s390-common.c (processor_flags_table): Add
PF_TX.
* config/s390/predicates.md (s390_comparison): Handle CCRAWmode.
(s390_alc_comparison): Likewise.
* config/s390/s390-modes.def: Add CCRAWmode.
* config/s390/s390.h (processor_flags): Add PF_TX.
(TARGET_CPU_HTM): Define macro.
(TARGET_HTM): Define macro.
(TARGET_CPU_CPP_BUILTINS): Define __HTM__ for htm.
* config/s390/s390.md: Rename UNSPEC_CCU_TO_INT to
UNSPEC_STRCMPCC_TO_INT and UNSPEC_CCZ_TO_INT to UNSPEC_CC_TO_INT.
(UNSPECV_TBEGIN, UNSPECV_TBEGINC, UNSPECV_TEND, UNSPECV_TABORT)
(UNSPECV_ETND, UNSPECV_NTSTG, UNSPECV_PPA): New unspecv enum
values.
(TBEGIN_MASK, TBEGINC_MASK): New constants.
("*cc_to_int"): Move up.
("*mov<mode>cc", "*cjump_64", "*cjump_31"): Accept integer
constants other than 0.
("*ccraw_to_int"): New insn and splitter definition.
("tbegin", "tbegin_nofloat", "tbegin_retry")
("tbegin_retry_nofloat", "tbeginc", "tend", "tabort")
("tx_assist"): New expander.
("tbegin_1", "tbegin_nofloat_1", "*tbeginc_1", "*tend_1")
("*tabort_1", "etnd", "ntstg", "*ppa"): New insn definition.
* config/s390/s390.opt: Add -mhtm option.
* config/s390/s390-protos.h (s390_emit_jump): Add return type.
* config/s390/htmxlintrin.h: New file.
* config/s390/htmintrin.h: New file.
* config/s390/s390intrin.h: New file.
* doc/extend.texi: Document htm builtins.
* config.gcc: Add the new header files to extra_headers.
2013-07-17 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* config/s390/s390.c: (s390_expand_builtin): Allow -mhtm to be
enabled without -march=zEC12.
* config/s390/s390.h (TARGET_HTM): Do not require EC12 machine
flags to be set.
2013-08-02 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
Backports from mainline:
2013-04-23 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* config/s390/sjlj.S: New file.
* config/s390/target.h: New file.
* configure.tgt: Set options for S/390.
2013-06-27 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* config/s390/target.h: Include htmintrin.h.
(_HTM_ITM_RETRIES): New macro definition.
(htm_available, htm_init, htm_begin, htm_begin_success)
(htm_commit, htm_abort, htm_abort_should_retry): New functions.
2013-07-17 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* acinclude.m4: Add htm asm check for s390.
* configure.tgt: Add -mhtm and -Wa,-march=zEC12 to the
options.
* configure: Regenerate.
* config/s390/target.h: Remove __HTM__ check.
(htm_available): Call getauxval to get hwcaps and check
whether HTM is available or not.
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-08-02 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* configure.tgt: Add -msoft-float to XCFLAGS.
2013-08-02 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
Backport from mainline
2013-06-27 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* gcc.target/s390/htm-1.c: New file.
* gcc.target/s390/htm-nofloat-1.c: New file.
* gcc.target/s390/htm-xl-intrin-1.c: New file.
Modified:
branches/gcc-4_8-branch/gcc/ChangeLog
branches/gcc-4_8-branch/gcc/common/config/s390/s390-common.c
branches/gcc-4_8-branch/gcc/config.gcc
branches/gcc-4_8-branch/gcc/config/s390/predicates.md
branches/gcc-4_8-branch/gcc/config/s390/s390-modes.def
branches/gcc-4_8-branch/gcc/config/s390/s390-protos.h
branches/gcc-4_8-branch/gcc/config/s390/s390.c
branches/gcc-4_8-branch/gcc/config/s390/s390.h
branches/gcc-4_8-branch/gcc/config/s390/s390.md
branches/gcc-4_8-branch/gcc/config/s390/s390.opt
branches/gcc-4_8-branch/gcc/doc/extend.texi
branches/gcc-4_8-branch/gcc/testsuite/ChangeLog
branches/gcc-4_8-branch/libitm/ChangeLog
branches/gcc-4_8-branch/libitm/acinclude.m4
branches/gcc-4_8-branch/libitm/config.h.in
branches/gcc-4_8-branch/libitm/configure
branches/gcc-4_8-branch/libitm/configure.ac
branches/gcc-4_8-branch/libitm/configure.tgt