From 947154bc5cdaea8112f35289ed3b7055fcb28e08 Mon Sep 17 00:00:00 2001 From: meissner Date: Wed, 24 Apr 1996 17:27:53 +0000 Subject: [PATCH] update last change git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@11876 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/config/rs6000/linux.h | 45 +++++++++++++++++++++++++++++++++++++++++++++ gcc/config/rs6000/sol2.h | 8 ++------ gcc/config/rs6000/sysv4.h | 14 ++++++++++---- 3 files changed, 57 insertions(+), 10 deletions(-) create mode 100644 gcc/config/rs6000/linux.h diff --git a/gcc/config/rs6000/linux.h b/gcc/config/rs6000/linux.h new file mode 100644 index 00000000000..618158cf225 --- /dev/null +++ b/gcc/config/rs6000/linux.h @@ -0,0 +1,45 @@ +/* Definitions of target machine for GNU compiler, + for IBM RS/6000 running AIX version 3.1. + Copyright (C) 1996 Free Software Foundation, Inc. + Contributed by Michael Meissner (meissner@cygnus.com). + +This file is part of GNU CC. + +GNU CC 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 2, or (at your option) +any later version. + +GNU CC 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 GNU CC; see the file COPYING. If not, write to +the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ + +#include "rs6000/sysv4.h" + +#undef CPP_PREDEFINES +#define CPP_PREDEFINES \ + "-DPPC -Dunix -Dlinux -Dpowerpc -Asystem(unix) -Asystem(linux) -Acpu(powerpc) -Amachine(powerpc)" + +/* For now, remove most of the System V.4 stuff */ +#undef LINK_SPEC +#define LINK_SPEC "" + +#undef LIB_DEFAULT_SPEC +#define LIB_DEFAULT_SPEC LIB_LINUX_SPEC + +#undef STARTFILE_DEFAULT_SPEC +#define STARTFILE_DEFAULT_SPEC STARTFILE_LINUX_SPEC + +#undef ENDFILE_DEFAULT_SPEC +#define ENDFILE_DEFAULT_SPEC ENDFILE_LINUX_SPEC + +#undef LINK_START_DEFAULT_SPEC +#define LINK_START_DEFAULT_SPEC LINK_START_LINUX_SPEC + +#undef TARGET_VERSION +#define TARGET_VERSION fprintf (stderr, " (PowerPC Linux)"); diff --git a/gcc/config/rs6000/sol2.h b/gcc/config/rs6000/sol2.h index 700640b7ff3..9ed7ac23c64 100644 --- a/gcc/config/rs6000/sol2.h +++ b/gcc/config/rs6000/sol2.h @@ -1,7 +1,7 @@ /* Definitions of target machine for GNU compiler, for IBM RS/6000 running AIX version 3.1. - Copyright (C) 1993 Free Software Foundation, Inc. - Contributed by Richard Kenner (kenner@nyu.edu) + Copyright (C) 1996 Free Software Foundation, Inc. + Contributed by David Reese (Dave.Reese@East.Sun.COM) This file is part of GNU CC. @@ -49,14 +49,10 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ %{!p:-Y P,/usr/ccs/lib:/usr/lib}}} \ %{Qy:} %{!Qn:-Qy}" -/* This defines which switch letters take arguments. - It is as in svr4.h but with -R added. */ - #undef TARGET_DEFAULT #define TARGET_DEFAULT (MASK_POWERPC | \ MASK_NEW_MNEMONICS | \ MASK_LITTLE_ENDIAN | \ - MASK_NO_MAIN_INIT | \ MASK_REGNAMES) #undef LIB_DEFAULT_SPEC diff --git a/gcc/config/rs6000/sysv4.h b/gcc/config/rs6000/sysv4.h index 0b3de6093a6..854d773f3f1 100644 --- a/gcc/config/rs6000/sysv4.h +++ b/gcc/config/rs6000/sysv4.h @@ -95,7 +95,7 @@ extern char *rs6000_abi_name; /* Default ABI to use */ #define RS6000_ABI_NAME "sysv" -#define SUBTARGET_OPTIONS {"call-", &rs6000_abi_name} +#define SUBTARGET_OPTIONS {"call-", &rs6000_abi_name} /* Max # of bytes for variables to automatically be put into the .sdata or .sdata2 sections. */ @@ -149,6 +149,11 @@ do { \ error ("Bad value for -mcall-%s", rs6000_abi_name); \ } \ \ + /* CYGNUS LOCAL -fcombine-statics vs. -msdata */ \ + if (TARGET_SDATA) \ + flag_combine_statics = 0; \ + /* END CYGNUS LOCAL -fcombine-statics vs. -msdata */ \ + \ if (TARGET_RELOCATABLE && TARGET_SDATA) \ { \ target_flags &= ~MASK_SDATA; \ @@ -1012,11 +1017,12 @@ do { \ #endif #ifndef STARTFILE_LINUX_SPEC -#define STARTFILE_LINUX_SPEC "crt0.o%s" -#endif +#define STARTFILE_LINUX_SPEC "\ +%{!shared: %{pg:gcrt1.o%s} %{!pg:%{p:gcrt1.o%s} %{!p:crt1.o%s}}} \ +scrti.o%s" #ifndef ENDFILE_LINUX_SPEC -#define ENDFILE_LINUX_SPEC "" +#define ENDFILE_LINUX_SPEC "scrtn.o%s" #endif #ifndef LINK_START_LINUX_SPEC -- 2.11.4.GIT