config.gcc (mips-sgi-irix6.5*): Set tmake_file to mips/t-irix6 t-slibgcc-dummy.

gcc:
	* config.gcc (mips-sgi-irix6.5*): Set tmake_file to mips/t-irix6
	t-slibgcc-dummy.
	* config/mips/irix-crti.asm: Move to ../libgcc/config/mips/irix-crti.S.
	* config/mips/irix-crtn.asm: Move to ../libgcc/config/mips/irix-crtn.S.
	* config/mips/t-iris: Remove.
	* config/mips/t-irix6: New file.
	* config/mips/t-slibgcc-irix: Move to ../libgcc/config/mips.

	libgcc:
	* config.host (mips-sgi-irix[56]*): Restrict to mips-sgi-irix6.5*.
	Set tmake_file, extra_parts.
	* config/mips/irix-crti.S: Move from ../gcc/config/mips/irix-crti.asm.
	Remove O32 support.
	* config/mips/irix-crtn.S: Move from ../gcc/config/mips/irix-crtn.asm.
	Remove O32 support.
	* config/mips/t-irix6: New file.
	* config/mips/t-slibgcc-irix: New file.

From-SVN: r174608
This commit is contained in:
Rainer Orth 2011-06-03 17:16:44 +00:00 committed by Rainer Orth
parent 4236b2e5c2
commit 737346fa24
11 changed files with 52 additions and 103 deletions

View File

@ -1,3 +1,13 @@
2011-06-03 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* config.gcc (mips-sgi-irix6.5*): Set tmake_file to mips/t-irix6
t-slibgcc-dummy.
* config/mips/irix-crti.asm: Move to ../libgcc/config/mips/irix-crti.S.
* config/mips/irix-crtn.asm: Move to ../libgcc/config/mips/irix-crtn.S.
* config/mips/t-iris: Remove.
* config/mips/t-irix6: New file.
* config/mips/t-slibgcc-irix: Move to ../libgcc/config/mips.
2011-06-03 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* Makefile.in (LIB2ADDEHDEP): Remove.

View File

@ -1778,7 +1778,7 @@ microblaze*-*-*)
;;
mips-sgi-irix6.5*)
tm_file="elfos.h ${tm_file} mips/iris6.h"
tmake_file="mips/t-iris mips/t-iris6 mips/t-slibgcc-irix"
tmake_file="mips/t-irix6 t-slibgcc-dummy"
extra_options="${extra_options} rpath.opt mips/iris6.opt"
target_cpu_default="MASK_ABICALLS"
tm_defines="${tm_defines} MIPS_ISA_DEFAULT=3 MIPS_ABI_DEFAULT=ABI_N32"

View File

@ -1,9 +0,0 @@
$(T)irix-crti.o: $(srcdir)/config/mips/irix-crti.asm $(GCC_PASSES)
$(GCC_FOR_TARGET) $(GCC_CFLAGS) $(MULTILIB_CFLAGS) $(INCLUDES) \
-c -o $@ -x assembler-with-cpp $<
$(T)irix-crtn.o: $(srcdir)/config/mips/irix-crtn.asm $(GCC_PASSES)
$(GCC_FOR_TARGET) $(GCC_CFLAGS) $(MULTILIB_CFLAGS) $(INCLUDES) \
-c -o $@ -x assembler-with-cpp $<
EXTRA_MULTILIB_PARTS = crtbegin.o crtend.o irix-crti.o irix-crtn.o

4
gcc/config/mips/t-irix6 Normal file
View File

@ -0,0 +1,4 @@
MULTILIB_OPTIONS=mabi=n32/mabi=64
MULTILIB_DIRNAMES=n32 64
MULTILIB_MATCHES=
MULTILIB_OSDIRNAMES=../lib32 ../lib64

View File

@ -1,52 +0,0 @@
# Copyright (C) 2004, 2005 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/>.
# Build a shared libgcc library.
SHLIB_EXT = .so
SHLIB_SOLINK = @shlib_base_name@.so
SHLIB_SOVERSION = 1
SHLIB_SONAME = @shlib_base_name@.so.$(SHLIB_SOVERSION)
SHLIB_MAP = @shlib_map_file@
SHLIB_OBJS = @shlib_objs@
SHLIB_DIR = @multilib_dir@
SHLIB_SLIBDIR_QUAL = @shlib_slibdir_qual@
SHLIB_LC = -lc
SHLIB_LINK = $(GCC_FOR_TARGET) $(LIBGCC2_CFLAGS) -shared -nodefaultlibs \
-Wl,-soname,$(SHLIB_SONAME) \
-o $(SHLIB_DIR)/$(SHLIB_SONAME).tmp @multilib_flags@ \
$(SHLIB_OBJS) $(SHLIB_LC) && \
rm -f $(SHLIB_DIR)/$(SHLIB_SOLINK) && \
if [ -f $(SHLIB_DIR)/$(SHLIB_SONAME) ]; then \
mv -f $(SHLIB_DIR)/$(SHLIB_SONAME) \
$(SHLIB_DIR)/$(SHLIB_SONAME).backup; \
else true; fi && \
mv $(SHLIB_DIR)/$(SHLIB_SONAME).tmp $(SHLIB_DIR)/$(SHLIB_SONAME) && \
$(LN_S) $(SHLIB_SONAME) $(SHLIB_DIR)/$(SHLIB_SOLINK)
# $(slibdir) double quoted to protect it from expansion while building
# libgcc.mk. We want this delayed until actual install time.
SHLIB_INSTALL = \
$$(mkinstalldirs) $$(DESTDIR)$$(slibdir)$(SHLIB_SLIBDIR_QUAL); \
$(INSTALL_DATA) $(SHLIB_DIR)/$(SHLIB_SONAME) \
$$(DESTDIR)$$(slibdir)$(SHLIB_SLIBDIR_QUAL)/$(SHLIB_SONAME); \
rm -f $$(DESTDIR)$$(slibdir)$(SHLIB_SLIBDIR_QUAL)/$(SHLIB_SOLINK); \
$(LN_S) $(SHLIB_SONAME) \
$$(DESTDIR)$$(slibdir)$(SHLIB_SLIBDIR_QUAL)/$(SHLIB_SOLINK)
SHLIB_MKMAP = $(srcdir)/mkmap-flat.awk
SHLIB_MAPFILES = $$(libgcc_objdir)/libgcc-std.ver

View File

@ -1,3 +1,14 @@
2011-06-03 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* config.host (mips-sgi-irix[56]*): Restrict to mips-sgi-irix6.5*.
Set tmake_file, extra_parts.
* config/mips/irix-crti.S: Move from ../gcc/config/mips/irix-crti.asm.
Remove O32 support.
* config/mips/irix-crtn.S: Move from ../gcc/config/mips/irix-crtn.asm.
Remove O32 support.
* config/mips/t-irix6: New file.
* config/mips/t-slibgcc-irix: New file.
2011-06-03 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* config/s390/t-tpf (LIB2ADDEHDEP): Remove.

View File

@ -412,7 +412,9 @@ mcore-*-elf)
microblaze*-*-*)
tmake_file="microblaze/t-microblaze"
;;
mips-sgi-irix[56]*)
mips-sgi-irix6.5*)
tmake_file="mips/t-irix6 t-slibgcc mips/t-slibgcc-irix"
extra_parts="crtbegin.o crtend.o irix-crti.o irix-crtn.o"
;;
mips*-*-netbsd*) # NetBSD/mips, either endian.
;;

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2004, 2008 Free Software Foundation, Inc.
/* Copyright (C) 2004, 2008, 2011 Free Software Foundation, Inc.
This file is part of GCC.
@ -52,26 +52,16 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
.section .gcc_init,"ax",@progbits
.globl __gcc_init
__gcc_init:
#if _MIPS_SIM == _ABIO32
addiu $sp,$sp,-16
sw $31,0($sp)
#else
daddiu $sp,$sp,-16
sd $31,0($sp)
sd $28,8($sp)
#endif
.section .gcc_fini,"ax",@progbits
.globl __gcc_fini
__gcc_fini:
#if _MIPS_SIM == _ABIO32
addiu $sp,$sp,-16
sw $31,0($sp)
#else
daddiu $sp,$sp,-16
sd $31,0($sp)
sd $28,8($sp)
#endif
/* This object will typically be included in the final link for both
shared libraries and executable, and we need to hide the symbols to

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2004 Free Software Foundation, Inc.
/* Copyright (C) 2004, 2011 Free Software Foundation, Inc.
This file is part of GCC.
@ -26,25 +26,13 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
.set nomacro
.section .gcc_init,"ax",@progbits
#if _MIPS_SIM == _ABIO32
lw $31,0($sp)
jr $31
addiu $sp,$sp,16
#else
ld $31,0($sp)
ld $28,8($sp)
jr $31
daddiu $sp,$sp,16
#endif
.section .gcc_fini,"ax",@progbits
#if _MIPS_SIM == _ABIO32
lw $31,0($sp)
jr $31
addiu $sp,$sp,16
#else
ld $31,0($sp)
ld $28,8($sp)
jr $31
daddiu $sp,$sp,16
#endif

View File

@ -1,5 +1,5 @@
# Copyright (C) 1995, 1996, 1997, 1998, 2000, 2001, 2002, 2003, 2004, 2005,
# 2006, 2010 Free Software Foundation, Inc.
# 2006, 2010, 2011 Free Software Foundation, Inc.
#
# This file is part of GCC.
#
@ -17,22 +17,20 @@
# along with GCC; see the file COPYING3. If not see
# <http://www.gnu.org/licenses/>.
MULTILIB_OPTIONS=mabi=n32/mabi=64
MULTILIB_DIRNAMES=n32 64
MULTILIB_MATCHES=
MULTILIB_OSDIRNAMES=../lib32 ../lib64
irix-crti.o: $(srcdir)/config/mips/irix-crti.S
$(crt_compile) -c $<
LIBGCC = stmp-multilib
INSTALL_LIBGCC = install-multilib
irix-crtn.o: $(srcdir)/config/mips/irix-crtn.S
$(crt_compile) -c $<
TPBIT = tp-bit.c
tp-bit.c: $(srcdir)/config/fp-bit.c
echo '#ifdef __MIPSEL__' > tp-bit.c
echo '# define FLOAT_BIT_ORDER_MISMATCH' >> tp-bit.c
echo '#endif' >> tp-bit.c
echo '#define QUIET_NAN_NEGATED' >> tp-bit.c
echo '#if __LDBL_MANT_DIG__ == 106' >> tp-bit.c
echo '# define TFLOAT' >> tp-bit.c
cat $(srcdir)/config/fp-bit.c >> tp-bit.c
echo '#endif' >> tp-bit.c
$(gcc_objdir)/tp-bit.c: $(gcc_srcdir)/config/fp-bit.c
echo '#ifdef __MIPSEL__' > $@
echo '# define FLOAT_BIT_ORDER_MISMATCH' >> $@
echo '#endif' >> $@
echo '#define QUIET_NAN_NEGATED' >> $@
echo '#if __LDBL_MANT_DIG__ == 106' >> $@
echo '# define TFLOAT' >> $@
cat $< >> $@
echo '#endif' >> $@

View File

@ -0,0 +1,7 @@
# Build a shared libgcc library with the SGI linker.
SHLIB_LDFLAGS = -Wl,-soname,$(SHLIB_SONAME) \
-Wl,-exports_file,$(SHLIB_MAP)
SHLIB_MKMAP = $(gcc_srcdir)/mkmap-flat.awk
SHLIB_MAPFILES = libgcc-std.ver