mirror of
git://gcc.gnu.org/git/gcc.git
synced 2025-03-20 11:20:40 +08:00
gcc/ * doc/invoke.texi (-mpaired-single): Don't say that the option requires 64-bit code. * config/mips/mips-protos.h (mips_modes_tieable_p): Declare. * config/mips/mips.h (ISA_HAS_PAIRED_SINGLE): New macro. (ISA_HAS_NMADD_NMSUB): Add a mode argument. Return true for V2SF if ISA_MIPS32R2. (MODES_TIEABLE_P): Use mips_modes_tieable_p. * config/mips/mips.c (mips_rtx_costs): Pass a mode argument to ISA_HAS_NMADD_NMSUB. (mips_split_doubleword_move): Handle V2SF. (mips_modes_tieable_p): New function. (override_options): Report a warning rather than an error when -mpaired-single is used on ISAs that don't support it; use ISA_HAS_PAIRED_SINGLE to check that case. * config/mips/mips.md (MOVE64): New mode iterator. Replace DI and DF move splitters with a single MOVE64 splitter, thereby adding a V2SF splitter too. (SPLITF): Add TARGET_DOUBLE_FLOAT conditions to DI and DF. Add a TARGET_FLOAT64 condition to TF. Add V2SF to the iterator. (HALFMODE): Add V2SF. (*nmadd<mode>, *nmadd<mode>_fastmath, *nmsub<mode>) (*nmsub<mode>_fastmath): Add a mode argument to ISA_HAS_NMADD_NMSUB. (movv2sf_hardfloat_64bit): Tweak ordering of conditions. (movv2sf_hardfloat_32bit): New pattern. (load_low<mode>, load_high<mode>, store_word<mode>): Remove TARGET_DOUBLE_FLOAT conditions. gcc/testsuite/ * gcc.dg/vect/vect.exp: Extend -mpaired-single handling to all MIPS targets. * g++.dg/vect/vect.exp: Likewise. * lib/fortran-torture.exp: Likewise. * gcc.target/mips/mips-ps-1.c: Use mpaired_single rather than mipsisa64*-*-* as the target selector. Remove -mips64, -mhard-float and -mgp64 from the options list. * gcc.target/mips/mips-ps-2.c: Likewise. * gcc.target/mips/mips-ps-3.c: Likewise. * gcc.target/mips/mips-ps-4.c: Likewise. * gcc.target/mips/mips-ps-6.c: Likewise. * gcc.target/mips/mips-ps-5.c: Remove -mhard-float from the options list. * gcc.target/mips/sb1-1.c: Likewise. * gcc.target/mips/mips-ps-type.c: Likewise. * gcc.target/mips/mips-ps-7.c: New test. * gcc.target/mips/mips-ps-type-2.c: Likewise. * gcc.target/mips/fpr-moves-6.c: Remove XFAIL. * gcc.target/mips/mips.exp (setup_mips_tests): Set mips_fp and mips_gp instead of mips_fp64 and mips_gp64. Treat -mgp32 -mfp64 as forcing an ABI and an architecture. (is_gp32_flag, is_gp64_flag): Fold into... (dg-mips-options): ...here. Make -mpaired-single imply -mfp64, then -mfp64 imply -mhard-float. Apply register rules after the loop. Handle -march=mipsN like -mipsN. From-SVN: r129522
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
This directory contains the GNU Compiler Collection (GCC). The GNU Compiler Collection is free software. See the file COPYING for copying permission. The manuals, and some of the runtime libraries, are under different terms; see the individual source files for details. The directory INSTALL contains copies of the installation information as HTML and plain text. The source of this information is gcc/doc/install.texi. The installation information includes details of what is included in the GCC sources and what files GCC installs. See the file gcc/doc/gcc.texi (together with other files that it includes) for usage and porting information. An online readable version of the manual is in the files gcc/doc/gcc.info*. See http://gcc.gnu.org/bugs.html for how to report bugs usefully.
Description
Languages
C++
31.9%
C
31.3%
Ada
12%
D
6.5%
Go
6.4%
Other
11.5%