diff options
author | meissner <meissner@138bc75d-0d04-0410-961f-82ee72b054a4> | 2015-11-09 16:56:22 +0000 |
---|---|---|
committer | meissner <meissner@138bc75d-0d04-0410-961f-82ee72b054a4> | 2015-11-09 16:56:22 +0000 |
commit | a875ad2ee008234406031af0b72316ae465be863 (patch) | |
tree | 67a2fb9cb34958ba57d1f290473f158c57978d91 /gcc/configure | |
parent | 245b193fb00b928666c2fc1eaa10e9d54c4e3c4c (diff) | |
download | gcc-a875ad2ee008234406031af0b72316ae465be863.tar.gz |
2015-11-09 Michael Meissner <meissner@linux.vnet.ibm.com>
* config/rs6000/rs6000.opt (-mpower9-fusion): Add new switches for
ISA 3.0 (power9).
(-mpower9-vector): Likewise.
(-mpower9-dform): Likewise.
(-mpower9-minmax): Likewise.
(-mtoc-fusion): Likewise.
(-mmodulo): Likewise.
(-mfloat128-hardware): Likewise.
* config/rs6000/rs6000-cpus.def (ISA_3_0_MASKS_SERVER): Add option
mask for ISA 3.0 (power9).
(POWERPC_MASKS): Add new ISA 3.0 switches.
(power9 cpu): Add power9 cpu.
* config/rs6000/rs6000.h (ASM_CPU_POWER9_SPEC): Add support for
power9.
(ASM_CPU_SPEC): Likewise.
(EXTRA_SPECS): Likewise.
* config/rs6000/rs6000-opts.h (enum processor_type): Add
PROCESSOR_POWER9.
* config/rs6000/rs6000.c (power9_cost): Initial cost setup for
power9.
(rs6000_debug_reg_global): Add support for power9 fusion.
(rs6000_setup_reg_addr_masks): Cache mode size.
(rs6000_option_override_internal): Until real power9 tuning is
added, use -mtune=power8 for -mcpu=power9.
(rs6000_setup_reg_addr_masks): Do not allow pre-increment,
pre-decrement, or pre-modify on SFmode/DFmode if we allow the use
of Altivec registers.
(rs6000_option_override_internal): Add support for ISA 3.0
switches.
(rs6000_loop_align): Add support for power9 cpu.
(rs6000_file_start): Likewise.
(rs6000_adjust_cost): Likewise.
(rs6000_issue_rate): Likewise.
(insn_must_be_first_in_group): Likewise.
(insn_must_be_last_in_group): Likewise.
(force_new_group): Likewise.
(rs6000_register_move_cost): Likewise.
(rs6000_opt_masks): Likewise.
* config/rs6000/rs6000.md (cpu attribute): Add power9.
* config/rs6000/rs6000-tables.opt: Regenerate.
* config/rs6000/rs6000-c.c (rs6000_target_modify_macros): Define
_ARCH_PWR9 if power9 support is available.
* config/rs6000/aix61.h (ASM_CPU_SPEC): Add power9.
* config/rs6000/aix53.h (ASM_CPU_SPEC): Likewise.
* configure.ac: Determine if the assembler supports the ISA 3.0
instructions.
* config.in (HAVE_AS_POWER9): Likewise.
* configure: Regenerate.
* doc/invoke.texi (RS/6000 and PowerPC Options): Document ISA 3.0
switches.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230031 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/configure')
-rwxr-xr-x | gcc/configure | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/gcc/configure b/gcc/configure index de6cf13569f..0cd85fb8646 100755 --- a/gcc/configure +++ b/gcc/configure @@ -26333,6 +26333,48 @@ $as_echo "#define HAVE_AS_POWER8 1" >>confdefs.h fi case $target in + *-*-aix*) conftest_s=' .machine "pwr9" + .csect .text[PR]';; + *) conftest_s=' .machine power9 + .text';; + esac + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler for power9 support" >&5 +$as_echo_n "checking assembler for power9 support... " >&6; } +if test "${gcc_cv_as_powerpc_power9+set}" = set; then : + $as_echo_n "(cached) " >&6 +else + gcc_cv_as_powerpc_power9=no + if test $in_tree_gas = yes; then + if test $gcc_cv_gas_vers -ge `expr \( \( 2 \* 1000 \) + 19 \) \* 1000 + 2` + then gcc_cv_as_powerpc_power9=yes +fi + elif test x$gcc_cv_as != x; then + $as_echo "$conftest_s" > conftest.s + if { ac_try='$gcc_cv_as $gcc_cv_as_flags -a32 -o conftest.o conftest.s >&5' + { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5 + (eval $ac_try) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; } + then + gcc_cv_as_powerpc_power9=yes + else + echo "configure: failed program was" >&5 + cat conftest.s >&5 + fi + rm -f conftest.o conftest.s + fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_as_powerpc_power9" >&5 +$as_echo "$gcc_cv_as_powerpc_power9" >&6; } +if test $gcc_cv_as_powerpc_power9 = yes; then + +$as_echo "#define HAVE_AS_POWER9 1" >>confdefs.h + +fi + + case $target in *-*-aix*) conftest_s=' .csect .text[PR] lwsync';; *) conftest_s=' .text |