Re: Remove obsolete OpenBSD/MIPS support
Richard Sandiford writes: > Rainer Orth writes: >> I'm currently working on removing the obsolete Tru64 UNIX and IRIX >> ports. When IRIX is gone, the obsoleted OpenBSD/MIPS is the only >> remaining port that uses MIPS_DEBUGGING_INFO (which I plan to remove as >> a followup once IRIX is gone). >> >> The following patch has been included in a i386-pc-solaris2.10 bootstrap >> to make sure that no obvious syntactic errors have crept in. >> >> Ok for mainline? > > Definitely. Thanks for saving me the legwork :-) > > There are also some SDB_OUTPUT_SOURCE_LINE references in mips.c and > mips.h that could go. Removing those is preapproved if you want to > do it as part of the same patch, otherwise I can do it this weekend. Here's what I've installed. The patch was bootstrapped (together with a bunch of other removal patches to be submitted shortly) on i386-pc-solaris2.11 and tested on an i386-solaris2.11 x mips-elf C-only cross to make sure cc1 still builds. Rainer 2012-02-24 Rainer Orth libgcc: * config.host (mips*-*-openbsd*): Remove. gcc: * config.gcc (mips*-*-openbsd*): Remove. * config/mips/openbsd.h: Remove. * config/mips/sdb.h: Remove. * config/mips/mips.h (SDB_OUTPUT_SOURCE_LINE): Remove. * config/mips/mips.c (sdb_label_count): Remove. (mips_debugger_offset): Remove #if 0 code. (mips_output_function_prologue) [SDB_DEBUGGING_INFO]: Remove. * config/mips/sde.h (SDB_DEBUGGING_INFO): Don't undef. contrib: * config-list.mk (LIST): Remove mips-openbsd. # HG changeset patch # Parent 629d4a30bc2bbb27d12aa73bd6e0221cecf83144 Remove obsolete OpenBSD/MIPS support diff --git a/contrib/config-list.mk b/contrib/config-list.mk --- a/contrib/config-list.mk +++ b/contrib/config-list.mk @@ -39,7 +39,7 @@ LIST = alpha-linux-gnu alpha-freebsd6 al mips-sgi-irix6.5OPT-with-stabsOPT-enable-threads=posixOPT-enable-obsolete \ mips-netbsd \ mips64el-st-linux-gnu mips64octeon-linux mipsisa64r2-linux \ - mipsisa32r2-linux-gnu mips-openbsd mipsisa64r2-sde-elf mipsisa32-elfoabi \ + mipsisa32r2-linux-gnu mipsisa64r2-sde-elf mipsisa32-elfoabi \ mipsisa64-elfoabi mipsisa64r2el-elf mipsisa64sr71k-elf mipsisa64sb1-elf \ mipsel-elf mips64-elf mips64vr-elf mips64orion-elf mips-rtems \ mips-wrs-vxworks mipstx39-elf mmix-knuth-mmixware mn10300-elf moxie-elf \ diff --git a/gcc/config.gcc b/gcc/config.gcc --- a/gcc/config.gcc +++ b/gcc/config.gcc @@ -251,7 +251,6 @@ case ${target} in | arm*-*-uclinux* \ | arm*-wince-pe* \ | mips-sgi-irix6.5 \ - | mips*-*-openbsd* \ | score-*\ | *-*-solaris2.8* \ ) @@ -1744,17 +1743,6 @@ mips*-*-linux*)# Linux MIPS, either esac test x$with_llsc != x || with_llsc=yes ;; -mips*-*-openbsd*) - tm_defines="${tm_defines} OBSD_HAS_DECLARE_FUNCTION_NAME OBSD_HAS_DECLARE_OBJECT OBSD_HAS_CORRECT_SPECS" - target_cpu_default="MASK_ABICALLS" - tm_file="mips/mips.h openbsd.h openbsd-stdint.h openbsd-libpthread.h mips/openbsd.h mips/sdb.h" - extra_options="${extra_options} openbsd.opt" - case ${target} in - mips*el-*-openbsd*) - tm_defines="${tm_defines} TARGET_ENDIAN_DEFAULT=0";; - *) tm_defines="${tm_defines} TARGET_ENDIAN_DEFAULT=MASK_BIG_ENDIAN";; -esac - ;; mips*-sde-elf*) tm_file="elfos.h newlib-stdint.h ${tm_file} mips/elf.h mips/sde.h" tmake_file="mips/t-sde" diff --git a/gcc/config/mips/mips.c b/gcc/config/mips/mips.c --- a/gcc/config/mips/mips.c +++ b/gcc/config/mips/mips.c @@ -494,9 +494,6 @@ int num_source_filenames; written anything yet. */ const char *current_function_file = ""; -/* A label counter used by PUT_SDB_BLOCK_START and PUT_SDB_BLOCK_END. */ -int sdb_label_count; - /* Arrays that map GCC register numbers to debugger register numbers. */ int mips_dbx_regno[FIRST_PSEUDO_REGISTER]; int mips_dwarf_regno[FIRST_PSEUDO_REGISTER]; @@ -8114,13 +8111,6 @@ mips_debugger_offset (rtx addr, HOST_WID offset += cfun->machine->frame.hard_frame_pointer_offset; } - /* sdbout_parms does not want this to crash for unrecognized cases. */ -#if 0 - else if (reg != arg_pointer_rtx) -fatal_insn ("mips_debugger_offset called with non stack/frame/arg pointer", - addr); -#endif - return offset; } @@ -10129,11 +10119,6 @@ mips_output_function_prologue (FILE *fil { const char *fnname; -#ifdef SDB_DEBUGGING_INFO - if (debug_info_level != DINFO_LEVEL_TERSE && write_symbols == SDB_DEBUG) -SDB_OUTPUT_SOURCE_LINE (file, DECL_SOURCE_LINE (current_function_decl)); -#endif - /* In MIPS16 mode, we may need to generate a non-MIPS16 stub to handle floating-point arguments. */ if (TARGET_MIPS16 diff --git a/gcc/config/mips/mips.h b/gcc/config/mips/mips.h --- a/g
Re: Remove obsolete OpenBSD/MIPS support
Richard Sandiford writes: > Definitely. Thanks for saving me the legwork :-) It was both easy to do and a prerequisite for the MIPS_DEBUGGING_INFO removal :-) > There are also some SDB_OUTPUT_SOURCE_LINE references in mips.c and > mips.h that could go. Removing those is preapproved if you want to > do it as part of the same patch, otherwise I can do it this weekend. I'll probably get to it since I have to make minor adjustments to a couple of patches anyway, but won't be able to before the weekend myself. Rainer -- - Rainer Orth, Center for Biotechnology, Bielefeld University
Re: Remove obsolete OpenBSD/MIPS support
Rainer Orth writes: > I'm currently working on removing the obsolete Tru64 UNIX and IRIX > ports. When IRIX is gone, the obsoleted OpenBSD/MIPS is the only > remaining port that uses MIPS_DEBUGGING_INFO (which I plan to remove as > a followup once IRIX is gone). > > The following patch has been included in a i386-pc-solaris2.10 bootstrap > to make sure that no obvious syntactic errors have crept in. > > Ok for mainline? Definitely. Thanks for saving me the legwork :-) There are also some SDB_OUTPUT_SOURCE_LINE references in mips.c and mips.h that could go. Removing those is preapproved if you want to do it as part of the same patch, otherwise I can do it this weekend. Richard
Remove obsolete OpenBSD/MIPS support
I'm currently working on removing the obsolete Tru64 UNIX and IRIX ports. When IRIX is gone, the obsoleted OpenBSD/MIPS is the only remaining port that uses MIPS_DEBUGGING_INFO (which I plan to remove as a followup once IRIX is gone). The following patch has been included in a i386-pc-solaris2.10 bootstrap to make sure that no obvious syntactic errors have crept in. Ok for mainline? Rainer 2012-02-24 Rainer Orth libgcc: * config.host (mips*-*-openbsd*): Remove. gcc: * config.gcc (mips*-*-openbsd*): Remove. * config/mips/openbsd.h: Remove. * config/mips/sdb.h: Remove. contrib: * config-list.mk (LIST): Remove mips-openbsd. # HG changeset patch # Parent a45494fba4427f160e6f6b624c53e28274d2744c Remove obsolete OpenBSD/MIPS support diff --git a/contrib/config-list.mk b/contrib/config-list.mk --- a/contrib/config-list.mk +++ b/contrib/config-list.mk @@ -40,7 +40,7 @@ LIST = alpha-linux-gnu alpha-freebsd6 al mips-sgi-irix6.5OPT-with-stabsOPT-enable-threads=posixOPT-enable-obsolete \ mips-netbsd \ mips64el-st-linux-gnu mips64octeon-linux mipsisa64r2-linux \ - mipsisa32r2-linux-gnu mips-openbsd mipsisa64r2-sde-elf mipsisa32-elfoabi \ + mipsisa32r2-linux-gnu mipsisa64r2-sde-elf mipsisa32-elfoabi \ mipsisa64-elfoabi mipsisa64r2el-elf mipsisa64sr71k-elf mipsisa64sb1-elf \ mipsel-elf mips64-elf mips64vr-elf mips64orion-elf mips-rtems \ mips-wrs-vxworks mipstx39-elf mmix-knuth-mmixware mn10300-elf moxie-elf \ diff --git a/gcc/config.gcc b/gcc/config.gcc --- a/gcc/config.gcc +++ b/gcc/config.gcc @@ -244,7 +244,6 @@ md_file= case ${target} in alpha*-dec-osf5.1* \ | mips-sgi-irix6.5 \ - | mips*-*-openbsd* \ | score-*\ | *-*-solaris2.8* \ ) @@ -1765,17 +1764,6 @@ mips*-*-linux*)# Linux MIPS, either esac test x$with_llsc != x || with_llsc=yes ;; -mips*-*-openbsd*) - tm_defines="${tm_defines} OBSD_HAS_DECLARE_FUNCTION_NAME OBSD_HAS_DECLARE_OBJECT OBSD_HAS_CORRECT_SPECS" - target_cpu_default="MASK_ABICALLS" - tm_file="mips/mips.h openbsd.h openbsd-stdint.h openbsd-libpthread.h mips/openbsd.h mips/sdb.h" - extra_options="${extra_options} openbsd.opt" - case ${target} in - mips*el-*-openbsd*) - tm_defines="${tm_defines} TARGET_ENDIAN_DEFAULT=0";; - *) tm_defines="${tm_defines} TARGET_ENDIAN_DEFAULT=MASK_BIG_ENDIAN";; -esac - ;; mips*-sde-elf*) tm_file="elfos.h newlib-stdint.h ${tm_file} mips/elf.h mips/sde.h" tmake_file="mips/t-sde" diff --git a/gcc/config/mips/openbsd.h b/gcc/config/mips/openbsd.h deleted file mode 100644 --- a/gcc/config/mips/openbsd.h +++ /dev/null @@ -1,101 +0,0 @@ -/* Configuration for a MIPS ABI32 OpenBSD target. - Copyright (C) 1999, 2003, 2004, 2007, 2008, 2009, 2010, 2011 - 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/>. */ - -/* Definitions needed for OpenBSD, to avoid picking mips 'defaults'. */ - -/* GAS must know this. */ -#undef SUBTARGET_ASM_SPEC -#define SUBTARGET_ASM_SPEC "%{fPIC|fPIE:-KPIC}" - -/* CPP specific OpenBSD specs. */ -#undef SUBTARGET_CPP_SPEC -#define SUBTARGET_CPP_SPEC OBSD_CPP_SPEC - -/* Needed for ELF (inspired by netbsd-elf). */ -#undef LOCAL_LABEL_PREFIX -#define LOCAL_LABEL_PREFIX "." - -/* The profiling lib spec here is not really correct but we leave - it as it is until we have some kind of profiling working. */ -#define LIB_SPEC OBSD_LIB_SPEC - -/* mips assembler uses .set for arcane purposes. __attribute__((alias)) - and friends won't work until we get recent binutils with .weakext - support. */ -#undef SET_ASM_OP - -#define TARGET_OS_CPP_BUILTINS() \ -do { \ - builtin_define ("__unix__"); \ - builtin_define ("__SYSTYPE_BSD__"); \ - builtin_define ("__NO_LEADING_UNDERSCORES__"); \ - builtin_define ("__GP_SUPPORT__"); \ - builtin_define ("__OpenBSD__"); \ - builtin_assert ("system=unix"); \ - builtin_assert ("system=OpenBSD"); \ -} while (0) - -/* Layout of source language data types. */ - -/* This must agree with . */ -#undef SIZE_TYPE -#define SIZE_TYPE "long unsigned int" - -#undef PTRDIFF_TYPE -#define PTRDIFF_TYPE "long int" - -#undef WCHAR