From 817698810e42383eed3ef9cad506ceaa42b6b496 Mon Sep 17 00:00:00 2001 From: krebbel Date: Wed, 10 Oct 2012 05:02:11 +0000 Subject: 2012-10-10 Andreas Krebbel * config.gcc: Enable zEC12 for with-arch and with-tune configure switches. * common/config/s390/s390-common.c (processor_flags_table): Add zEC12 entry. * config/s390/2827.md: New file. * config/s390/s390-opts.h (enum processor_type): Add PROCESSOR_2827_ZEC12. * config/s390/s390.h (enum processor_flags): Add PF_ZEC12. (TARGET_CPU_ZEC12, TARGET_ZEC12): New macro definitions. * config/s390/s390.c (zEC12_cost): New definition. (s390_option_override): Set costs for zEC12. Set parameter defaults for zEC12. (legitimate_reload_fp_constant_p): Adjust comment. (preferred_la_operand_p): Adjust comment. (s390_expand_insv): Generate insv pattern without CC clobber for zEC12. (s390_adjust_priority): Add zEC12 check. (s390_issue_rate): Return 2 for zEC12. (s390_reorg): Enable code optimizations for zEC12. (s390_sched_reorder): Reorder insns according to OOO attributes. (s390_get_sched_attrmask): New function. (s390_sched_score): New function. (s390_sched_variable_issue): Update s390_sched_state. (s390_sched_init): Reset s390_sched_state. (s390_loop_unroll_adjust): Enable for zEC12. * config/s390/s390.opt: Add zEC12 processor type value. * config/s390/s390.md: Enable mnemonic attribute. (attr cpu, cpu_facility): Add zEC12. Include 2827.md. ("*insv_zEC12", "*insv_zEC12_noshift") ("*load_and_trap"): New insn definition. ("*cmp_and_trap_unsigned_int"): Add clt and clgt. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192289 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/common/config/s390/s390-common.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'gcc/common') diff --git a/gcc/common/config/s390/s390-common.c b/gcc/common/config/s390/s390-common.c index 0c9a1616cf0..6bbe3785ef4 100644 --- a/gcc/common/config/s390/s390-common.c +++ b/gcc/common/config/s390/s390-common.c @@ -41,7 +41,9 @@ EXPORTED_CONST int processor_flags_table[] = /* z10 */ PF_IEEE_FLOAT | PF_ZARCH | PF_LONG_DISPLACEMENT | PF_EXTIMM | PF_DFP | PF_Z10, /* z196 */ PF_IEEE_FLOAT | PF_ZARCH | PF_LONG_DISPLACEMENT - | PF_EXTIMM | PF_DFP | PF_Z10 | PF_Z196 + | PF_EXTIMM | PF_DFP | PF_Z10 | PF_Z196, + /* zEC12 */ PF_IEEE_FLOAT | PF_ZARCH | PF_LONG_DISPLACEMENT + | PF_EXTIMM | PF_DFP | PF_Z10 | PF_Z196 | PF_ZEC12 }; /* Change optimizations to be performed, depending on the -- cgit v1.2.1