diff options
author | dje <dje@138bc75d-0d04-0410-961f-82ee72b054a4> | 1995-02-18 17:35:43 +0000 |
---|---|---|
committer | dje <dje@138bc75d-0d04-0410-961f-82ee72b054a4> | 1995-02-18 17:35:43 +0000 |
commit | f3da0ac3a46b56a0c155f24c037a951ffbbb34cc (patch) | |
tree | fad80588f959bafbcbf9b99109a826964b419809 /gcc/config/rs6000/lynx.h | |
parent | 94ff37a1cefd52231706abd094d76afc56c096ab (diff) | |
download | gcc-f3da0ac3a46b56a0c155f24c037a951ffbbb34cc.tar.gz |
Initial revision
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@8966 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/rs6000/lynx.h')
-rw-r--r-- | gcc/config/rs6000/lynx.h | 102 |
1 files changed, 102 insertions, 0 deletions
diff --git a/gcc/config/rs6000/lynx.h b/gcc/config/rs6000/lynx.h new file mode 100644 index 00000000000..0e57d221b14 --- /dev/null +++ b/gcc/config/rs6000/lynx.h @@ -0,0 +1,102 @@ +/* Definitions for Rs6000 running LynxOS. + Copyright (C) 1995 Free Software Foundation, Inc. + Contributed by David Henkel-Wallace, Cygnus Support (gumby@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 "lynx.h" + +/* Definitions we want to override with those from rs6000.h: */ +#undef LIB_SPEC +#undef PTRDIFF_TYPE +#undef WCHAR_TYPE +#undef WCHAR_TYPE_SIZE +#undef ASM_FILE_START +#undef EXTRA_SECTIONS +#undef READONLY_DATA_SECTION +#undef EXTRA_SECTION_FUNCTIONS +#undef SELECT_RTX_SECTION +#undef SELECT_SECTION +#undef ASM_OUTPUT_LABELREF +#undef ASM_OUTPUT_INTERNAL_LABEL +#undef ASM_GENERATE_INTERNAL_LABEL +#undef ASM_OUTPUT_COMMON +#undef ASM_OUTPUT_LOCAL +#undef ASM_OUTPUT_CONSTRUCTOR +#undef ASM_OUTPUT_DESTRUCTOR +#undef CTORS_SECTION_FUNCTION +#undef DTORS_SECTION_FUNCTION + +#undef SDB_DEBUGGING_INFO +#undef DBX_DEBUGGING_INFO +#undef PREFERRED_DEBUGGING_TYPE + +#undef FUNCTION_PROFILER + +#include "rs6000/rs6000.h" + +/* LynxOS has signed chars, regardless of what most R/S 6000 systems do */ +#undef DEFAULT_SIGNED_CHAR +#define DEFAULT_SIGNED_CHAR 1 + +#undef CPP_PREDEFINES +#define CPP_PREDEFINES "-Acpu(rs6000) -Amachine(rs6000) -Asystem(lynx) -Asystem(unix) -DLynx -D_IBMR2 -Dunix -Drs6000 -Dlynx -DLYNX" + +#undef LINK_SPEC +#define LINK_SPEC "-T0x10001000 -H0x1000 -D0x20000000 -btextro -bhalt:4 -bnodelcsect -bnso -bro -bnoglink %{v} %{b*}" + +#undef LIB_SPEC +#define LIB_SPEC "%{mthreads:-L/lib/thread/} \ + %{msystem-v:-lc_v -lm.v} \ + %{!msystem-v:%{mposix:-lc_p} -lc -lm}" + +#undef STARTFILE_SPEC +#define STARTFILE_SPEC "%{p:%{mthreads:thread/pinit.o%s}%{!mthreads:pinit.o%s}}%{!p:%{msystem-v:vinit.o%s -e_start}%{!msystem-v:%{mthreads:thread/init.o%s}%{!mthreads:init.o%s}}}" + +#undef ENDFILE_SPEC + +/* This can become more refined as we have more powerpc options. */ +#undef ASM_SPEC +#define ASM_SPEC "-u %{m601:-m601} %{power*:-m601}" + +#undef SUBTARGET_SWITCHES +#define SUBTARGET_SWITCHES \ + {"threads", MASK_THREADS}, \ + {"posix", MASK_POSIX}, \ + {"system-v", MASK_SYSTEM_V}, + +#undef SUBTARGET_OVERRIDE_OPTIONS +#define SUBTARGET_OVERRIDE_OPTIONS \ +do { \ + if (TARGET_SYSTEM_V && profile_flag) \ + warning ("-msystem-v and -p are incompatible"); \ + if (TARGET_SYSTEM_V && TARGET_THREADS) \ + warning ("-msystem-v and -mthreads are incompatible"); \ +} while (0) + +/* For collect2 */ +#define OBJECT_FORMAT_NONE +#undef OBJECT_FORMAT_COFF +#undef OBJECT_FORMAT_ROSE +#undef MD_EXEC_PREFIX +#undef REAL_LD_FILE_NAME +#undef REAL_NM_FILE_NAME +#undef REAL_STRIP_FILE_NAME + +/* LynxOS doesn't have mcount. */ +#undef FUNCTION_PROFILER +#define FUNCTION_PROFILER(file, profile_label_no) |