mirror of git://gcc.gnu.org/git/gcc.git
gcc/
* config.gcc (mips*-mti-elf*, mips*-sde-elf*, mips64r5900-*-elf*) (mips64r5900el-*-elf*): Include mips/n32-elf.h. * config/mips/sde.h (LOCAL_LABEL_PREFIX, NO_DOLLAR_IN_LABEL) (LONG_DOUBLE_TYPE_SIZE, LIBGCC2_LONG_DOUBLE_TYPE_SIZE): Move to... * config/mips/n32-elf.h: ...this new file. From-SVN: r200496
This commit is contained in:
parent
bedc293e87
commit
a290fcda13
|
|
@ -1,3 +1,11 @@
|
||||||
|
2013-06-27 Richard Sandiford <rdsandiford@googlemail.com>
|
||||||
|
|
||||||
|
* config.gcc (mips*-mti-elf*, mips*-sde-elf*, mips64r5900-*-elf*)
|
||||||
|
(mips64r5900el-*-elf*): Include mips/n32-elf.h.
|
||||||
|
* config/mips/sde.h (LOCAL_LABEL_PREFIX, NO_DOLLAR_IN_LABEL)
|
||||||
|
(LONG_DOUBLE_TYPE_SIZE, LIBGCC2_LONG_DOUBLE_TYPE_SIZE): Move to...
|
||||||
|
* config/mips/n32-elf.h: ...this new file.
|
||||||
|
|
||||||
2013-06-27 Marc Glisse <marc.glisse@inria.fr>
|
2013-06-27 Marc Glisse <marc.glisse@inria.fr>
|
||||||
|
|
||||||
PR target/57224
|
PR target/57224
|
||||||
|
|
|
||||||
|
|
@ -1851,12 +1851,12 @@ mips*-*-linux*) # Linux MIPS, either endian.
|
||||||
esac
|
esac
|
||||||
;;
|
;;
|
||||||
mips*-mti-elf*)
|
mips*-mti-elf*)
|
||||||
tm_file="elfos.h newlib-stdint.h ${tm_file} mips/elf.h mips/sde.h mips/mti-elf.h"
|
tm_file="elfos.h newlib-stdint.h ${tm_file} mips/elf.h mips/n32-elf.h mips/sde.h mips/mti-elf.h"
|
||||||
tmake_file="mips/t-mti-elf"
|
tmake_file="mips/t-mti-elf"
|
||||||
tm_defines="${tm_defines} MIPS_ISA_DEFAULT=33 MIPS_ABI_DEFAULT=ABI_32"
|
tm_defines="${tm_defines} MIPS_ISA_DEFAULT=33 MIPS_ABI_DEFAULT=ABI_32"
|
||||||
;;
|
;;
|
||||||
mips*-sde-elf*)
|
mips*-sde-elf*)
|
||||||
tm_file="elfos.h newlib-stdint.h ${tm_file} mips/elf.h mips/sde.h"
|
tm_file="elfos.h newlib-stdint.h ${tm_file} mips/elf.h mips/n32-elf.h mips/sde.h"
|
||||||
tmake_file="mips/t-sde"
|
tmake_file="mips/t-sde"
|
||||||
extra_options="${extra_options} mips/sde.opt"
|
extra_options="${extra_options} mips/sde.opt"
|
||||||
case "${with_newlib}" in
|
case "${with_newlib}" in
|
||||||
|
|
@ -1938,7 +1938,7 @@ mips-*-elf* | mipsel-*-elf* | mipsr5900-*-elf* | mipsr5900el-*-elf*)
|
||||||
tmake_file="mips/t-elf"
|
tmake_file="mips/t-elf"
|
||||||
;;
|
;;
|
||||||
mips64r5900-*-elf* | mips64r5900el-*-elf*)
|
mips64r5900-*-elf* | mips64r5900el-*-elf*)
|
||||||
tm_file="elfos.h newlib-stdint.h ${tm_file} mips/elf.h"
|
tm_file="elfos.h newlib-stdint.h ${tm_file} mips/elf.h mips/n32-elf.h"
|
||||||
tmake_file="mips/t-elf"
|
tmake_file="mips/t-elf"
|
||||||
tm_defines="${tm_defines} MIPS_ISA_DEFAULT=3 MIPS_ABI_DEFAULT=ABI_N32"
|
tm_defines="${tm_defines} MIPS_ISA_DEFAULT=3 MIPS_ABI_DEFAULT=ABI_N32"
|
||||||
;;
|
;;
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,35 @@
|
||||||
|
/* Definitions of target machine for GNU compiler.
|
||||||
|
n32 for embedded systems.
|
||||||
|
Copyright (C) 2003-2013 Free Software Foundation, Inc.
|
||||||
|
|
||||||
|
This file is part of GCC.
|
||||||
|
|
||||||
|
GCC is free software; you can redistribute it and/or modify
|
||||||
|
it under the terms of the GNU General Public License as published by
|
||||||
|
the Free Software Foundation; either version 3, or (at your option)
|
||||||
|
any later version.
|
||||||
|
|
||||||
|
GCC is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU General Public License
|
||||||
|
along with GCC; see the file COPYING3. If not see
|
||||||
|
<http://www.gnu.org/licenses/>. */
|
||||||
|
|
||||||
|
/* Use standard ELF-style local labels (not '$' as on early Irix). */
|
||||||
|
#undef LOCAL_LABEL_PREFIX
|
||||||
|
#define LOCAL_LABEL_PREFIX "."
|
||||||
|
|
||||||
|
/* Use periods rather than dollar signs in special g++ assembler names. */
|
||||||
|
#define NO_DOLLAR_IN_LABEL
|
||||||
|
|
||||||
|
/* Force n32 to use 64-bit long doubles. */
|
||||||
|
#undef LONG_DOUBLE_TYPE_SIZE
|
||||||
|
#define LONG_DOUBLE_TYPE_SIZE 64
|
||||||
|
|
||||||
|
#ifdef IN_LIBGCC2
|
||||||
|
#undef LIBGCC2_LONG_DOUBLE_TYPE_SIZE
|
||||||
|
#define LIBGCC2_LONG_DOUBLE_TYPE_SIZE 64
|
||||||
|
#endif
|
||||||
|
|
@ -89,23 +89,6 @@ along with GCC; see the file COPYING3. If not see
|
||||||
#undef PTRDIFF_TYPE
|
#undef PTRDIFF_TYPE
|
||||||
#define PTRDIFF_TYPE "long int"
|
#define PTRDIFF_TYPE "long int"
|
||||||
|
|
||||||
/* Use standard ELF-style local labels (not '$' as on early Irix). */
|
|
||||||
#undef LOCAL_LABEL_PREFIX
|
|
||||||
#define LOCAL_LABEL_PREFIX "."
|
|
||||||
|
|
||||||
/* Use periods rather than dollar signs in special g++ assembler names. */
|
|
||||||
#define NO_DOLLAR_IN_LABEL
|
|
||||||
|
|
||||||
/* Currently we don't support 128bit long doubles, so for now we force
|
|
||||||
n32 to be 64bit. */
|
|
||||||
#undef LONG_DOUBLE_TYPE_SIZE
|
|
||||||
#define LONG_DOUBLE_TYPE_SIZE 64
|
|
||||||
|
|
||||||
#ifdef IN_LIBGCC2
|
|
||||||
#undef LIBGCC2_LONG_DOUBLE_TYPE_SIZE
|
|
||||||
#define LIBGCC2_LONG_DOUBLE_TYPE_SIZE 64
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* Force all .init and .fini entries to be 32-bit, not mips16, so that
|
/* Force all .init and .fini entries to be 32-bit, not mips16, so that
|
||||||
in a mixed environment they are all the same mode. The crti.asm and
|
in a mixed environment they are all the same mode. The crti.asm and
|
||||||
crtn.asm files will also be compiled as 32-bit due to the
|
crtn.asm files will also be compiled as 32-bit due to the
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue