This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] Add MIPS64r2 configuration
- From: Richard Sandiford <rdsandiford at googlemail dot com>
- To: Adam Nemet <anemet at caviumnetworks dot com>
- Cc: gcc-patches at gcc dot gnu dot org
- Date: Thu, 31 Jul 2008 20:17:47 +0100
- Subject: Re: [PATCH] Add MIPS64r2 configuration
- References: <4890CAC4.8040108@caviumnetworks.com>
Thanks for plugging one of the major gaps in the MIPS port.
Adam Nemet <anemet@caviumnetworks.com> writes:
> * config.gcc (mipsisa64*-*-linux*): New configuration. Set ISA
> to MIPS64r2 for mipsisa64r2*.
> * config/mips/mips.h (GENERATE_MIPS16E): Update comment.
> (ISA_MIPS64R2): New macro.
> (TARGET_CPU_CPP_BUILTINS, MULTILIB_ISA_DEFAULT): Handle it.
> (ISA_HAS_64BIT_REGS, ISA_HAS_MUL3, ISA_HAS_FP_CONDMOVE,
> ISA_HAS_8CC, ISA_HAS_FP4, ISA_HAS_PAIRED_SINGLE,
> ISA_HAS_MADD_MSUB, ISA_HAS_NMADD4_NMSUB4, ISA_HAS_CLZ_CLO,
> ISA_HAS_ROR, ISA_HAS_PREFETCH, ISA_HAS_PREFETCHX, ISA_HAS_SEB_SEH,
> ISA_HAS_EXT_INS, ISA_HAS_MXHC1, ISA_HAS_HILO_INTERLOCKS,
> ISA_HAS_SYNCI, MIN_FPRS_PER_FMT): Return true for ISA_MIPS64R2.
> (MIPS_ISA_LEVEL_SPEC, ASM_SPEC, LINK_SPEC): Handle -mips64r2.
> (TARGET_LOONGSON_2E, TARGET_LOONGSON_2F, TARGET_LOONGSON_2EF):
> Move up to keep list alphabetically sorted.
> (TUNE_20KC, TUNE_24K, TUNE_74K, TUNE_LOONGSON_2EF): Likewise.
> * config/mips/mips.c (mips_cpu_info_table): Add default MIPS64r2
> processor.
> * doc/invoke.texi (MIPS Options): Add -mips64r2.
> (-march=@var{arch}): Add mips64r2.
>
> testsuite/
>
> * gcc.target/mips/ext-1.c: New test.
OK with one minor change:
> Index: gcc/doc/invoke.texi
> ===================================================================
> --- gcc.orig/doc/invoke.texi 2008-07-28 17:06:31.000000000 -0700
> +++ gcc/doc/invoke.texi 2008-07-29 11:44:15.000000000 -0700
> @@ -627,7 +627,7 @@ Objective-C and Objective-C++ Dialects}.
>
> @emph{MIPS Options}
> @gccoptlist{-EL -EB -march=@var{arch} -mtune=@var{arch} @gol
> --mips1 -mips2 -mips3 -mips4 -mips32 -mips32r2 -mips64 @gol
> +-mips1 -mips2 -mips3 -mips4 -mips32 -mips32r2 -mips64 -mips64r2 @gol
There should be two spaces between options.
This needs a changes.html entry, but I'll wait until the Octeon
support is in.
Richard