summaryrefslogtreecommitdiffstats
path: root/gcc/config/i386
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/config/i386')
-rw-r--r--gcc/config/i386/beos-elf.h234
-rw-r--r--gcc/config/i386/kaos-i386.h23
-rw-r--r--gcc/config/i386/ptx4-i.h95
-rw-r--r--gcc/config/i386/sco5.h311
-rw-r--r--gcc/config/i386/sco5.opt24
-rw-r--r--gcc/config/i386/sysv4-cpp.h31
-rw-r--r--gcc/config/i386/sysv5.h33
-rw-r--r--gcc/config/i386/t-beos4
-rw-r--r--gcc/config/i386/t-sco515
-rw-r--r--gcc/config/i386/t-uwin5
-rw-r--r--gcc/config/i386/uwin.asm32
-rw-r--r--gcc/config/i386/uwin.h85
12 files changed, 0 insertions, 892 deletions
diff --git a/gcc/config/i386/beos-elf.h b/gcc/config/i386/beos-elf.h
deleted file mode 100644
index 7a9d9889a9b..00000000000
--- a/gcc/config/i386/beos-elf.h
+++ /dev/null
@@ -1,234 +0,0 @@
-/* Definitions for Intel x86 running BeOS
- Copyright (C) 1998, 1999, 2000, 2001, 2002, 2004, 2007
- 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/>. */
-
-
-#define TARGET_VERSION fprintf (stderr, " (i386 BeOS/ELF)");
-
-/* Change debugging to Dwarf2. */
-#undef PREFERRED_DEBUGGING_TYPE
-#define PREFERRED_DEBUGGING_TYPE DWARF2_DEBUG
-
-/* The SVR4 ABI for the i386 says that records and unions are returned
- in memory. */
-#undef DEFAULT_PCC_STRUCT_RETURN
-#define DEFAULT_PCC_STRUCT_RETURN 1
-
-#undef ASM_COMMENT_START
-#define ASM_COMMENT_START " #"
-
-#undef DBX_REGISTER_NUMBER
-#define DBX_REGISTER_NUMBER(n) \
- (TARGET_64BIT ? dbx64_register_map[n] : svr4_dbx_register_map[n])
-
-/* Output assembler code to FILE to increment profiler label # LABELNO
- for profiling a function entry. */
-
-#undef MCOUNT_NAME
-#define MCOUNT_NAME "mcount"
-
-#undef SIZE_TYPE
-#define SIZE_TYPE "long unsigned int"
-
-#undef PTRDIFF_TYPE
-#define PTRDIFF_TYPE "long int"
-
-#undef WCHAR_TYPE
-#define WCHAR_TYPE "short unsigned int"
-
-#undef WCHAR_TYPE_SIZE
-#define WCHAR_TYPE_SIZE 16
-
-#define TARGET_DECLSPEC 1
-
-#define TARGET_OS_CPP_BUILTINS() \
- do \
- { \
- builtin_define ("__BEOS__"); \
- builtin_define ("__INTEL__"); \
- builtin_define ("_X86_"); \
- builtin_define ("__stdcall=__attribute__((__stdcall__))"); \
- builtin_define ("__cdecl=__attribute__((__cdecl__))"); \
- builtin_assert ("system=beos"); \
- } \
- while (0)
-
-/* BeOS uses lots of multichars, so don't warn about them unless the
- user explicitly asks for the warnings with -Wmultichar. Note that
- CC1_SPEC is used for both cc1 and cc1plus. */
-
-#undef CC1_SPEC
-#define CC1_SPEC "%{!no-fpic:%{!fno-pic:%{!fno-pie:%{!fpie:%{!fPIC:%{!fPIE:-fpic}}}}}} %{!Wmultichar: -Wno-multichar} %(cc1_cpu) %{profile:-p}"
-
-#undef CC1PLUS_SPEC
-#define CC1PLUS_SPEC "%{!Wctor-dtor-privacy:-Wno-ctor-dtor-privacy}"
-
-/* Provide a LINK_SPEC appropriate for BeOS. Here we provide support
- for the special GCC options -static and -shared, which allow us to
- link things in one of these three modes by applying the appropriate
- combinations of options at link-time. */
-
-/* If ELF is the default format, we should not use /lib/elf. */
-
-#undef LINK_SPEC
-#define LINK_SPEC "%{!o*:-o %b} -m elf_i386_be -shared -Bsymbolic %{nostart:-e 0}"
-
-/* Provide start and end file specs appropriate to glibc. */
-
-/* LIB_SPEC for BeOS */
-#undef LIB_SPEC
-#define LIB_SPEC "-lnet -lroot"
-
-/* gcc runtime lib is built into libroot.so on BeOS */
-/* ??? This is gonna be lovely when the next release of gcc has
- some new symbol in, so that links start failing. */
-#undef LIBGCC_SPEC
-#define LIBGCC_SPEC ""
-
-#undef STARTFILE_SPEC
-#define STARTFILE_SPEC "crti.o%s crtbegin.o%s %{!nostart:start_dyn.o%s} init_term_dyn.o%s %{p:i386-mcount.o%s}"
-
-#undef ENDFILE_SPEC
-#define ENDFILE_SPEC "crtend.o%s crtn.o%s"
-
-/* A C statement (sans semicolon) to output to the stdio stream
- FILE the assembler definition of uninitialized global DECL named
- NAME whose size is SIZE bytes and alignment is ALIGN bytes.
- Try to use asm_output_aligned_bss to implement this macro. */
-
-#define ASM_OUTPUT_ALIGNED_BSS(FILE, DECL, NAME, SIZE, ALIGN) \
- asm_output_aligned_bss (FILE, DECL, NAME, SIZE, ALIGN)
-
-/* A C statement to output to the stdio stream FILE an assembler
- command to advance the location counter to a multiple of 1<<LOG
- bytes if it is within MAX_SKIP bytes.
-
- This is used to align code labels according to Intel recommendations. */
-
-#ifdef HAVE_GAS_MAX_SKIP_P2ALIGN
-#define ASM_OUTPUT_MAX_SKIP_ALIGN(FILE,LOG,MAX_SKIP) \
- if ((LOG)!=0) \
- if ((MAX_SKIP)==0) fprintf ((FILE), "\t.p2align %d\n", (LOG)); \
- else fprintf ((FILE), "\t.p2align %d,,%d\n", (LOG), (MAX_SKIP))
-#endif
-
-/* For native compiler, use standard BeOS include file search paths
- rooted in /boot/develop/headers. For a cross compiler, don't
- expect the host to use the BeOS directory scheme, and instead look
- for the BeOS include files relative to TOOL_INCLUDE_DIR. Yes, we
- use ANSI string concatenation here (FIXME) */
-
-#ifndef CROSS_DIRECTORY_STRUCTURE
-#undef INCLUDE_DEFAULTS
-#define INCLUDE_DEFAULTS \
- { \
- { GPLUSPLUS_INCLUDE_DIR, "G++", 1, 1 },\
- { GCC_INCLUDE_DIR, "GCC", 0, 0 },\
- { TOOL_INCLUDE_DIR, "BINUTILS", 0, 1}, \
- { "/boot/develop/headers/be/add-ons/graphics", 0, 0, 0 },\
- { "/boot/develop/headers/be/devel", 0, 0, 0 },\
- { "/boot/develop/headers/be/translation", 0, 0, 0 },\
- { "/boot/develop/headers/be/mail", 0, 0, 0 },\
- { "/boot/develop/headers/gnu", 0, 0, 0 },\
- { "/boot/develop/headers/be/drivers", 0, 0, 0 },\
- { "/boot/develop/headers/be/opengl", 0, 0, 0 },\
- { "/boot/develop/headers/be/game", 0, 0, 0 },\
- { "/boot/develop/headers/be/support", 0, 0, 0 },\
- { "/boot/develop/headers/be/storage", 0, 0, 0 },\
- { "/boot/develop/headers/be/kernel", 0, 0, 0 },\
- { "/boot/develop/headers/be/net", 0, 0, 0 },\
- { "/boot/develop/headers/be/midi", 0, 0, 0 },\
- { "/boot/develop/headers/be/midi2", 0, 0, 0 },\
- { "/boot/develop/headers/be/media", 0, 0, 0 },\
- { "/boot/develop/headers/be/interface", 0, 0, 0 },\
- { "/boot/develop/headers/be/device", 0, 0, 0 },\
- { "/boot/develop/headers/be/app", 0, 0, 0 },\
- { "/boot/develop/headers/be/precompiled", 0, 0, 0 },\
- { "/boot/develop/headers/be/add-ons/input_server", 0, 0, 0 },\
- { "/boot/develop/headers/be/add-ons/net_server", 0, 0, 0 },\
- { "/boot/develop/headers/be/add-ons/screen_saver", 0, 0, 0 },\
- { "/boot/develop/headers/be/add-ons/tracker", 0, 0, 0 },\
- { "/boot/develop/headers/be/be_apps/Deskbar", 0, 0, 0 },\
- { "/boot/develop/headers/be/be_apps/NetPositive", 0, 0, 0 },\
- { "/boot/develop/headers/be/be_apps/Tracker", 0, 0, 0 },\
- { "/boot/develop/headers/be/drivers/tty", 0, 0, 0 },\
- { "/boot/develop/headers/be/net/netinet", 0, 0, 0 },\
- { "/boot/develop/headers/be/storage", 0, 0, 0 },\
- { "/boot/develop/headers/be", 0, 0, 0 },\
- { "/boot/develop/headers/cpp", 0, 0, 0 },\
- { "/boot/develop/headers/posix", 0, 0, 0 },\
- { "/boot/develop/headers", 0, 0, 0 }, \
- { 0, 0, 0, 0 } \
- }
-#else /* CROSS_DIRECTORY_STRUCTURE */
-#undef INCLUDE_DEFAULTS
-#define INCLUDE_DEFAULTS \
- { \
- { GPLUSPLUS_INCLUDE_DIR, "G++", 1, 1 },\
- { GCC_INCLUDE_DIR, "GCC", 0, 0 },\
- { TOOL_INCLUDE_DIR, "BINUTILS", 0, 1}, \
- { CROSS_INCLUDE_DIR "/be/add-ons/graphics", 0, 0, 0 },\
- { CROSS_INCLUDE_DIR "/be/devel", 0, 0, 0 },\
- { CROSS_INCLUDE_DIR "/be/translation", 0, 0, 0 },\
- { CROSS_INCLUDE_DIR "/be/mail", 0, 0, 0 },\
- { CROSS_INCLUDE_DIR "/gnu", 0, 0, 0 },\
- { CROSS_INCLUDE_DIR "/be/drivers", 0, 0, 0 },\
- { CROSS_INCLUDE_DIR "/be/opengl", 0, 0, 0 },\
- { CROSS_INCLUDE_DIR "/be/game", 0, 0, 0 },\
- { CROSS_INCLUDE_DIR "/be/support", 0, 0, 0 },\
- { CROSS_INCLUDE_DIR "/be/storage", 0, 0, 0 },\
- { CROSS_INCLUDE_DIR "/be/kernel", 0, 0, 0 },\
- { CROSS_INCLUDE_DIR "/be/net", 0, 0, 0 },\
- { CROSS_INCLUDE_DIR "/be/midi", 0, 0, 0 },\
- { CROSS_INCLUDE_DIR "/be/midi2", 0, 0, 0 },\
- { CROSS_INCLUDE_DIR "/be/media", 0, 0, 0 },\
- { CROSS_INCLUDE_DIR "/be/interface", 0, 0, 0 },\
- { CROSS_INCLUDE_DIR "/be/device", 0, 0, 0 },\
- { CROSS_INCLUDE_DIR "/be/app", 0, 0, 0 },\
- { CROSS_INCLUDE_DIR "/be/precompiled", 0, 0, 0 },\
- { CROSS_INCLUDE_DIR "/be/add-ons/input_server", 0, 0, 0 },\
- { CROSS_INCLUDE_DIR "/be/add-ons/net_server", 0, 0, 0 },\
- { CROSS_INCLUDE_DIR "/be/add-ons/screen_saver", 0, 0, 0 },\
- { CROSS_INCLUDE_DIR "/be/add-ons/tracker", 0, 0, 0 },\
- { CROSS_INCLUDE_DIR "/be/be_apps/Deskbar", 0, 0, 0 },\
- { CROSS_INCLUDE_DIR "/be/be_apps/NetPositive", 0, 0, 0 },\
- { CROSS_INCLUDE_DIR "/be/be_apps/Tracker", 0, 0, 0 },\
- { CROSS_INCLUDE_DIR "/be/drivers/tty", 0, 0, 0 },\
- { CROSS_INCLUDE_DIR "/be/net/netinet", 0, 0, 0 },\
- { CROSS_INCLUDE_DIR "/be/storage", 0, 0, 0 },\
- { CROSS_INCLUDE_DIR "/be", 0, 0, 0 },\
- { CROSS_INCLUDE_DIR "/cpp", 0, 0, 0 },\
- { CROSS_INCLUDE_DIR "/posix", 0, 0, 0 },\
- { CROSS_INCLUDE_DIR , 0, 0, 0 }, \
- { 0, 0, 0, 0 } \
- }
-#endif
-
-/* Whee. LIBRARY_PATH is Be's LD_LIBRARY_PATH, which of course will
- cause nasty problems if we override it. */
-#define LIBRARY_PATH_ENV "BELIBRARIES"
-
-/* BeOS doesn't have a separate math library. */
-#define MATH_LIBRARY ""
-
-/* BeOS headers are C++-aware (and often use C++). */
-#define NO_IMPLICIT_EXTERN_C
-
-/* BeOS uses explicit import from shared libraries. */
-#define MULTIPLE_SYMBOL_SPACES 1
diff --git a/gcc/config/i386/kaos-i386.h b/gcc/config/i386/kaos-i386.h
deleted file mode 100644
index df1a906393a..00000000000
--- a/gcc/config/i386/kaos-i386.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/* Definitions of target machine for GCC.
- kaOS on ia32 architecture version.
- Copyright (C) 2003, 2007 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/>. */
-
-#undef TARGET_VERSION
-#define TARGET_VERSION fputs (" (i386/kaOS[ELF])", stderr);
-
diff --git a/gcc/config/i386/ptx4-i.h b/gcc/config/i386/ptx4-i.h
deleted file mode 100644
index 15959af70d3..00000000000
--- a/gcc/config/i386/ptx4-i.h
+++ /dev/null
@@ -1,95 +0,0 @@
-/* Target definitions for GCC for Intel 80386 running Dynix/ptx v4
- Copyright (C) 1996, 2002, 2007 Free Software Foundation, Inc.
-
- Modified from sysv4.h
- Originally written by Ron Guilmette (rfg@netcom.com).
- Modified by Tim Wright (timw@sequent.com).
-
-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/>. */
-
-
-#define TARGET_VERSION fprintf (stderr, " (i386 Sequent Dynix/ptx Version 4)");
-
-/* The svr4 ABI for the i386 says that records and unions are returned
- in memory. */
-
-#define SUBTARGET_RETURN_IN_MEMORY(TYPE, FNTYPE) \
- (TYPE_MODE (TYPE) == BLKmode \
- || (VECTOR_MODE_P (TYPE_MODE (TYPE)) && int_size_in_bytes (TYPE) == 8));
-
-#define TARGET_OS_CPP_BUILTINS() \
- do \
- { \
- builtin_define_std ("unix"); \
- builtin_define ("_SEQUENT_"); \
- builtin_assert ("system=unix"); \
- builtin_assert ("system=ptx4"); \
- } \
- while (0)
-
-#undef DBX_REGISTER_NUMBER
-#define DBX_REGISTER_NUMBER(n) svr4_dbx_register_map[n]
-
-/* The routine used to output sequences of byte values. We use a special
- version of this for most svr4 targets because doing so makes the
- generated assembly code more compact (and thus faster to assemble)
- as well as more readable. Note that if we find subparts of the
- character sequence which end with NUL (and which are shorter than
- STRING_LIMIT) we output those using ASM_OUTPUT_LIMITED_STRING. */
-
-#undef ASM_OUTPUT_ASCII
-#define ASM_OUTPUT_ASCII(FILE, STR, LENGTH) \
- do \
- { \
- const unsigned char *_ascii_bytes = \
- (const unsigned char *) (STR); \
- const unsigned char *limit = _ascii_bytes + (LENGTH); \
- unsigned bytes_in_chunk = 0; \
- for (; _ascii_bytes < limit; _ascii_bytes++) \
- { \
- const unsigned char *p; \
- if (bytes_in_chunk >= 64) \
- { \
- fputc ('\n', (FILE)); \
- bytes_in_chunk = 0; \
- } \
- for (p = _ascii_bytes; p < limit && *p != '\0'; p++) \
- continue; \
- if (p < limit && (p - _ascii_bytes) <= (long) STRING_LIMIT) \
- { \
- if (bytes_in_chunk > 0) \
- { \
- fputc ('\n', (FILE)); \
- bytes_in_chunk = 0; \
- } \
- ASM_OUTPUT_LIMITED_STRING ((FILE), _ascii_bytes); \
- _ascii_bytes = p; \
- } \
- else \
- { \
- if (bytes_in_chunk == 0) \
- fprintf ((FILE), "\t.byte\t"); \
- else \
- fputc (',', (FILE)); \
- fprintf ((FILE), "0x%02x", *_ascii_bytes); \
- bytes_in_chunk += 5; \
- } \
- } \
- if (bytes_in_chunk > 0) \
- fprintf ((FILE), "\n"); \
- } \
- while (0)
diff --git a/gcc/config/i386/sco5.h b/gcc/config/i386/sco5.h
deleted file mode 100644
index 4f19fd4f85d..00000000000
--- a/gcc/config/i386/sco5.h
+++ /dev/null
@@ -1,311 +0,0 @@
-/* Definitions for Intel 386 running SCO Unix System V 3.2 Version 5.
- Copyright (C) 1992, 1995, 1996, 1997, 1998, 1999, 2000, 2002, 2003, 2004,
- 2007 Free Software Foundation, Inc.
- Contributed by Kean Johnston (jkj@sco.com)
-
-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/>. */
-
-#undef TARGET_VERSION
-#define TARGET_VERSION fprintf (stderr, " (i386, SCO OpenServer 5 Syntax)");
-
-#undef ASM_QUAD
-
-#undef GLOBAL_ASM_OP
-#define GLOBAL_ASM_OP "\t.globl\t"
-
-#undef BSS_SECTION_ASM_OP
-#define BSS_SECTION_ASM_OP "\t.section\t.bss, \"aw\", @nobits"
-
-/*
- * NOTE: We really do want CTORS_SECTION_ASM_OP and DTORS_SECTION_ASM_OP.
- * Here's the reason why. If we dont define them, and we dont define them
- * to always emit to the same section, the default is to emit to "named"
- * ctors and dtors sections. This would be great if we could use GNU ld,
- * but we can't. The native linker could possibly be trained to coalesce
- * named ctors sections, but that hasn't been done either. So if we don't
- * define these, many C++ ctors and dtors dont get run, because they never
- * wind up in the ctors/dtors arrays.
- */
-#define CTORS_SECTION_ASM_OP "\t.section\t.ctors, \"aw\""
-#define DTORS_SECTION_ASM_OP "\t.section\t.dtors, \"aw\""
-
-#define TARGET_ASM_FILE_START_FILE_DIRECTIVE true
-#undef X86_FILE_START_VERSION_DIRECTIVE
-#define X86_FILE_START_VERSION_DIRECTIVE true
-
-/* A C statement (sans semicolon) to output to the stdio stream
- FILE the assembler definition of uninitialized global DECL named
- NAME whose size is SIZE bytes and alignment is ALIGN bytes.
- Try to use asm_output_aligned_bss to implement this macro. */
-
-#define ASM_OUTPUT_ALIGNED_BSS(FILE, DECL, NAME, SIZE, ALIGN) \
- asm_output_aligned_bss (FILE, DECL, NAME, SIZE, ALIGN)
-
-#undef DBX_REGISTER_NUMBER
-#define DBX_REGISTER_NUMBER(n) svr4_dbx_register_map[n]
-
-#define DWARF2_DEBUGGING_INFO 1
-#define DBX_DEBUGGING_INFO 1
-
-#undef PREFERRED_DEBUGGING_TYPE
-#define PREFERRED_DEBUGGING_TYPE DWARF2_DEBUG
-
-#undef DWARF2_UNWIND_INFO
-#define DWARF2_UNWIND_INFO 1
-
-#undef NO_IMPLICIT_EXTERN_C
-#define NO_IMPLICIT_EXTERN_C 1
-
-#undef SWITCH_TAKES_ARG
-#define SWITCH_TAKES_ARG(CHAR) \
- (DEFAULT_SWITCH_TAKES_ARG(CHAR) \
- || (CHAR) == 'h' \
- || (CHAR) == 'R' \
- || (CHAR) == 'Y' \
- || (CHAR) == 'z')
-
-#undef WORD_SWITCH_TAKES_ARG
-#define WORD_SWITCH_TAKES_ARG(STR) \
- (DEFAULT_WORD_SWITCH_TAKES_ARG (STR) \
- && strcmp (STR, "Tdata") && strcmp (STR, "Ttext") \
- && strcmp (STR, "Tbss"))
-
-#undef TARGET_SUBTARGET_DEFAULT
-#define TARGET_SUBTARGET_DEFAULT (MASK_80387 | MASK_IEEE_FP | MASK_FLOAT_RETURNS)
-
-/*
- * Define sizes and types
- */
-#undef SIZE_TYPE
-#undef PTRDIFF_TYPE
-#undef WCHAR_TYPE
-#undef WCHAR_TYPE_SIZE
-#undef WINT_TYPE
-#define SIZE_TYPE "unsigned int"
-#define PTRDIFF_TYPE "int"
-#define WCHAR_TYPE "long int"
-#define WCHAR_TYPE_SIZE BITS_PER_WORD
-#define WINT_TYPE "long int"
-
-/*
- * New for multilib support. Set the default switches for multilib,
- * which is -melf.
- */
-#define MULTILIB_DEFAULTS { "melf" }
-
-
-/* Please note that these specs may look messy but they are required in
- order to emulate the SCO Development system as closely as possible.
- With SCO Open Server 5.0, you now get the linker and assembler free,
- so that is what these specs are targeted for. These utilities are
- very argument sensitive: a space in the wrong place breaks everything.
- So please forgive this mess. It works.
-
- Parameters which can be passed to gcc, and their SCO equivalents:
- GCC Parameter SCO Equivalent
- -ansi -a ansi
- -posix -a posix
- -Xpg4 -a xpg4
- -Xpg4plus -a xpg4plus
- -Xods30 -a ods30
-
- As with SCO, the default is XPG4 plus mode. SCO also allows you to
- specify a C dialect with -Xt, -Xa, -Xc, -Xk and -Xm. These are passed
- on to the assembler and linker in the same way that the SCO compiler
- does.
-
- SCO also allows you to compile, link and generate either ELF or COFF
- binaries. With gcc, we now only support ELF mode.
-
- GCC also requires that the user has installed OSS646, the Execution
- Environment Update, or is running release 5.0.7 or later. This has
- many fixes to the ELF link editor and assembler, and a considerably
- improved libc and RTLD.
-
- In terms of tool usage, we want to use the standard link editor always,
- and either the GNU assembler or the native assembler. With OSS646 the
- native assembler has grown up quite a bit. Some of the specs below
- assume that /usr/gnu is the prefix for the GNU tools, because thats
- where the SCO provided ones go. This is especially important for
- include and library search path ordering. We want to look in /usr/gnu
- first because frequently people are linking against -lintl, and they
- MEAN to link with gettext. What they get is the SCO intl library. Its
- a REAL pity that GNU gettext chose that name; perhaps in a future
- version they can be persuaded to change it to -lgnuintl and have a
- link so that -lintl will work for other systems. The same goes for
- header files. We want /usr/gnu/include searched for before the system
- header files. Hence the -isystem /usr/gnu/include in the CPP_SPEC.
- We get /usr/gnu/lib first by virtue of the MD_STARTFILE_PREFIX below.
-*/
-
-#define MD_STARTFILE_PREFIX "/usr/gnu/lib/"
-#define MD_STARTFILE_PREFIX_1 "/usr/ccs/lib/"
-
-#if USE_GAS
-# define MD_EXEC_PREFIX "/usr/gnu/bin/"
-#else
-# define MD_EXEC_PREFIX "/usr/ccs/bin/elf/"
-#endif
-
-/* Always use the system linker, please. */
-#ifndef DEFAULT_LINKER
-# define DEFAULT_LINKER "/usr/ccs/bin/elf/ld"
-#endif
-
-/* Set up assembler flags for PIC and ELF compilations */
-#undef ASM_SPEC
-
-#if USE_GAS
- /* Leave ASM_SPEC undefined so we pick up the master copy from gcc.c */
-#else
-#define ASM_SPEC \
- "%{Ym,*} %{Yd,*} %{Wa,*:%*} \
- -E%{Xa:a}%{!Xa:%{Xc:c}%{!Xc:%{Xk:k}%{!Xk:%{Xt:t}%{!Xt:a}}}},%{ansi:ansi}%{!ansi:%{posix:posix}%{!posix:%{Xpg4:xpg4}%{!Xpg4:%{Xpg4plus:XPG4PLUS}%{!Xpg4plus:%{Xods30:ods30}%{!Xods30:XPG4PLUS}}}}},ELF %{Qn:} %{!Qy:-Qn}"
-#endif
-
-/*
- * Use crti.o for shared objects, crt1.o for normal executables. Make sure
- * to recognize both -G and -shared as a valid way of introducing shared
- * library generation. This is important for backwards compatibility.
- */
-
-#undef STARTFILE_SPEC
-#define STARTFILE_SPEC \
- "%{pg:%e-pg not supported on this platform} \
- %{p:%{pp:%e-p and -pp specified - pick one}} \
- %{!shared:\
- %{!symbolic: \
- %{!G: \
- %{pp:pcrt1elf.o%s}%{p:mcrt1.o%s}%{!p:%{!pp:crt1.o%s}}}}} \
- crti.o%s \
- %{ansi:values-Xc.o%s} \
- %{!ansi: \
- %{traditional:values-Xt.o%s} \
- %{!traditional: \
- %{Xa:values-Xa.o%s} \
- %{!Xa:%{Xc:values-Xc.o%s} \
- %{!Xc:%{Xk:values-Xk.o%s} \
- %{!Xk:%{Xt:values-Xt.o%s} \
- %{!Xt:values-Xa.o%s}}}}}} \
- crtbegin.o%s"
-
-#undef ENDFILE_SPEC
-#define ENDFILE_SPEC \
- "crtend.o%s crtn.o%s"
-
-#define TARGET_OS_CPP_BUILTINS() \
- do \
- { \
- builtin_define ("__unix"); \
- builtin_define ("_SCO_DS"); \
- builtin_define ("_SCO_DS_LL"); \
- builtin_define ("_SCO_ELF"); \
- builtin_define ("_M_I386"); \
- builtin_define ("_M_XENIX"); \
- builtin_define ("_M_UNIX"); \
- builtin_assert ("system=svr3"); \
- if (flag_iso) \
- cpp_define (pfile, "_STRICT_ANSI"); \
- } \
- while (0)
-
-#undef CPP_SPEC
-#define CPP_SPEC "\
- -isystem /usr/gnu/include \
- %{!Xods30:-D_STRICT_NAMES} \
- %{!ansi:%{!posix:%{!Xods30:-D_SCO_XPG_VERS=4}}} \
- %{ansi:-isystem include/ansi%s -isystem /usr/include/ansi} \
- %{!ansi: \
- %{posix:-isystem include/posix%s -isystem /usr/include/posix \
- -D_POSIX_C_SOURCE=2 -D_POSIX_SOURCE=1} \
- %{!posix:%{Xpg4:-isystem include/xpg4%s -isystem /usr/include/xpg4 \
- -D_XOPEN_SOURCE=1} \
- %{!Xpg4:-D_M_I86 -D_M_I86SM -D_M_INTERNAT -D_M_SDATA -D_M_STEXT \
- -D_M_BITFIELDS -D_M_SYS5 -D_M_SYSV -D_M_SYSIII \
- -D_M_WORDSWAP -Dunix -DM_I386 -DM_UNIX -DM_XENIX \
- %{Xods30:-isystem include/ods_30_compat%s \
- -isystem /usr/include/ods_30_compat \
- -D_SCO_ODS_30 -DM_I86 -DM_I86SM -DM_SDATA -DM_STEXT \
- -DM_BITFIELDS -DM_SYS5 -DM_SYSV -DM_INTERNAT -DM_SYSIII \
- -DM_WORDSWAP}}}} \
- %{scointl:-DM_INTERNAT -D_M_INTERNAT} \
- %{Xa:-D_SCO_C_DIALECT=1} \
- %{!Xa:%{Xc:-D_SCO_C_DIALECT=3} \
- %{!Xc:%{Xk:-D_SCO_C_DIALECT=4} \
- %{!Xk:%{Xt:-D_SCO_C_DIALECT=2} \
- %{!Xt:-D_SCO_C_DIALECT=1}}}}"
-
-#undef LINK_SPEC
-#define LINK_SPEC \
- "%{!shared:%{!symbolic:%{!G:-E%{Xa:a}%{!Xa:%{Xc:c}%{!Xc:%{Xk:k}%{!Xk:%{Xt:t}%{!Xt:a}}}},%{ansi:ansi}%{!ansi:%{posix:posix}%{!posix:%{Xpg4:xpg4}%{!Xpg4:%{Xpg4plus:XPG4PLUS}%{!Xpg4plus:%{Xods30:ods30}%{!Xods30:XPG4PLUS}}}}},ELF}}} \
- %{YP,*} %{YL,*} %{YU,*} \
- %{!YP,*:%{p:-YP,/usr/ccs/libp:/lib/libp:/usr/lib/libp:/usr/ccs/lib:/lib:/usr/lib} \
- %{!p:-YP,/usr/ccs/lib:/lib:/usr/lib}} \
- %{h*} %{static:-dn -Bstatic %{G:%e-G and -static are mutually exclusive}} \
- %{shared:%{!G:-G}} %{G:%{!shared:-G}} %{shared:%{G:-G}} \
- %{shared:-dy %{symbolic:-Bsymbolic -G} %{z*}} %{R*} %{Y*} \
- %{Qn:} %{!Qy:-Qn} -z alt_resolve"
-
-/* Library spec. If we are not building a shared library, provide the
- standard libraries, as per the SCO compiler. */
-
-#undef LIB_SPEC
-#define LIB_SPEC \
- "%{shared:%{!G:pic/libgcc.a%s}} \
- %{G:%{!shared:pic/libgcc.a%s}} \
- %{shared:%{G:pic/libgcc.a%s}} \
- %{p:%{!pp:-lelfprof -lelf}} %{pp:%{!p:-lelfprof -lelf}} \
- %{!shared:%{!symbolic:%{!G:-lcrypt -lgen -lc}}}"
-
-#undef LIBGCC_SPEC
-#define LIBGCC_SPEC \
- "%{!shared:%{!G:-lgcc}}"
-
-/* Handle special EH pointer encodings. Absolute, pc-relative, and
- indirect are handled automatically. */
-#define ASM_MAYBE_OUTPUT_ENCODED_ADDR_RTX(FILE, ENCODING, SIZE, ADDR, DONE) \
- do { \
- if ((SIZE) == 4 && ((ENCODING) & 0x70) == DW_EH_PE_datarel) \
- { \
- fputs (ASM_LONG, FILE); \
- assemble_name (FILE, XSTR (ADDR, 0)); \
- fputs (((ENCODING) & DW_EH_PE_indirect ? "@GOT" : "@GOTOFF"), FILE); \
- goto DONE; \
- } \
- } while (0)
-
-/* Used by crtstuff.c to initialize the base of data-relative relocations.
- These are GOT relative on x86, so return the pic register. */
-#ifdef __PIC__
-#define CRT_GET_RFIB_DATA(BASE) \
- { \
- register void *ebx_ __asm__("ebx"); \
- BASE = ebx_; \
- }
-#else
-#define CRT_GET_RFIB_DATA(BASE) \
- __asm__ ("call\t.LPR%=\n" \
- ".LPR%=:\n\t" \
- "pop{l}\t%0\n\t" \
- /* Due to a GAS bug, this cannot use EAX. That encodes \
- smaller than the traditional EBX, which results in the \
- offset being off by one. */ \
- "add{l}\t{$_GLOBAL_OFFSET_TABLE_+[.-.LPR%=],%0" \
- "|%0,_GLOBAL_OFFSET_TABLE_+(.-.LPR%=)}" \
- : "=d"(BASE))
-#endif
-
diff --git a/gcc/config/i386/sco5.opt b/gcc/config/i386/sco5.opt
deleted file mode 100644
index 1fc5092b5a8..00000000000
--- a/gcc/config/i386/sco5.opt
+++ /dev/null
@@ -1,24 +0,0 @@
-; SCO Unix-specific options.
-
-; Copyright (C) 2005, 2007 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/>.
-
-;; Legacy option
-melf
-Target RejectNegative
-Generate ELF output
diff --git a/gcc/config/i386/sysv4-cpp.h b/gcc/config/i386/sysv4-cpp.h
deleted file mode 100644
index d057e12b1f0..00000000000
--- a/gcc/config/i386/sysv4-cpp.h
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Target definitions for GCC for Intel 80386 running System V.4
- Copyright (C) 1991, 2001, 2002, 2007 Free Software Foundation, Inc.
-
- Written by Ron Guilmette (rfg@netcom.com).
-
-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/>. */
-
-#define TARGET_OS_CPP_BUILTINS() \
- do \
- { \
- builtin_define_std ("unix"); \
- builtin_define ("__svr4__"); \
- builtin_assert ("system=unix"); \
- builtin_assert ("system=svr4"); \
- } \
- while (0)
-
diff --git a/gcc/config/i386/sysv5.h b/gcc/config/i386/sysv5.h
deleted file mode 100644
index 7e2ab04d55a..00000000000
--- a/gcc/config/i386/sysv5.h
+++ /dev/null
@@ -1,33 +0,0 @@
-/* Definitions for Intel 386 running System V Release 5 (i.e. UnixWare 7)
- Copyright (C) 1999, 2007 Free Software Foundation, Inc.
- Contributed by Robert Lipe (robertlipe@usa.net)
-
-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/>. */
-
-
-/* Dwarf2 is supported by native debuggers */
-
-#undef PREFERRED_DEBUGGING_TYPE
-#define PREFERRED_DEBUGGING_TYPE DWARF2_DEBUG
-
-/* Add -lcrt for Dwarf2 abbreviation table */
-#undef LIB_SPEC
-#define LIB_SPEC "%{pthread:-lthread} %{pthreadT:-lthreadT} \
- %{!shared:%{!symbolic:-lc -lcrt}}"
-
-#undef CPP_SPEC
-#define CPP_SPEC "%{pthread:-D_REENTRANT} %{pthreadT:-D_REENTRANT}"
diff --git a/gcc/config/i386/t-beos b/gcc/config/i386/t-beos
deleted file mode 100644
index b5c8ec20871..00000000000
--- a/gcc/config/i386/t-beos
+++ /dev/null
@@ -1,4 +0,0 @@
-# There are system headers elsewhere, but these are the ones that
-# we are most likely to want to apply any fixes to.
-SYSTEM_HEADER_DIR = /boot/develop/headers/posix
-CROSS_SYSTEM_HEADER_DIR = $(tooldir)/sys-include/posix
diff --git a/gcc/config/i386/t-sco5 b/gcc/config/i386/t-sco5
deleted file mode 100644
index c6155930e54..00000000000
--- a/gcc/config/i386/t-sco5
+++ /dev/null
@@ -1,15 +0,0 @@
-# We multilib libgcc for -fPIC, to get real PIC code in it.
-# NOTE: We must use -fPIC on crt{begi,end}.o else we get an RTLD error
-# "cant set protections on segment of length blah at 0x8048000".
-CRTSTUFF_T_CFLAGS = -fPIC -fno-omit-frame-pointer
-
-MULTILIB_OPTIONS = fPIC
-MULTILIB_DIRNAMES = pic
-MULTILIB_MATCHES = fPIC=fpic
-MULTILIB_EXTRA_OPTS =
-
-LIBGCC=stmp-multilib
-INSTALL_LIBGCC=install-multilib
-
-# See all the declarations.
-FIXPROTO_DEFINES = -D_XOPEN_SOURCE -D_POSIX_C_SOURCE=2
diff --git a/gcc/config/i386/t-uwin b/gcc/config/i386/t-uwin
deleted file mode 100644
index 8e598683cdc..00000000000
--- a/gcc/config/i386/t-uwin
+++ /dev/null
@@ -1,5 +0,0 @@
-#
-# This is included *after* t-cygwin to override LIB1ASMSRC.
-#
-LIB1ASMSRC = i386/uwin.asm
-
diff --git a/gcc/config/i386/uwin.asm b/gcc/config/i386/uwin.asm
deleted file mode 100644
index 8566be18a1d..00000000000
--- a/gcc/config/i386/uwin.asm
+++ /dev/null
@@ -1,32 +0,0 @@
-/* stuff needed for libgcc on win32. */
-
-#ifdef L_chkstk
-
- .global __chkstk
- .global __alloca
-__chkstk:
-__alloca:
- pushl %ecx /* save temp */
- movl %esp,%ecx /* get sp */
- addl $0x8,%ecx /* and point to return addr */
-
-probe: cmpl $0x1000,%eax /* > 4k ?*/
- jb done
-
- subl $0x1000,%ecx /* yes, move pointer down 4k*/
- orl $0x0,(%ecx) /* probe there */
- subl $0x1000,%eax /* decrement count */
- jmp probe /* and do it again */
-
-done: subl %eax,%ecx
- orl $0x0,(%ecx) /* less that 4k, just peek here */
-
- movl %esp,%eax
- movl %ecx,%esp /* decrement stack */
-
- movl (%eax),%ecx /* recover saved temp */
- movl 4(%eax),%eax /* get return address */
- jmp *%eax
-
-
-#endif
diff --git a/gcc/config/i386/uwin.h b/gcc/config/i386/uwin.h
deleted file mode 100644
index 8884b08b7d0..00000000000
--- a/gcc/config/i386/uwin.h
+++ /dev/null
@@ -1,85 +0,0 @@
-/* Operating system specific defines to be used when targeting GCC for
- hosting on U/WIN (Windows32), using GNU tools and the Windows32 API
- Library, as distinct from winnt.h, which is used to build GCC for use
- with a windows style library and tool set and uses the Microsoft tools.
- Copyright (C) 1999, 2002, 2003, 2004, 2007 Free Software Foundation, Inc.
- Contributed by Mumit Khan <khan@xraylith.wisc.edu>.
-
-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/>. */
-
-/* Most of this is the same as for Cygwin32, except for changing some
- specs. */
-
-#define STANDARD_INCLUDE_COMPONENT "UWIN"
-#define SYSTEM_INCLUDE_DIR "/usr/gnu/include"
-#undef MD_STARTFILE_PREFIX
-#define MD_STARTFILE_PREFIX "/usr/gnu/lib/"
-
-#undef MAYBE_UWIN_CPP_BUILTINS
-#define MAYBE_UWIN_CPP_BUILTINS() \
- do \
- { \
- builtin_define_std ("WINNT"); \
- builtin_define ("_WIN32"); \
- builtin_define ("__WIN32__"); \
- builtin_define ("_UWIN"); \
- builtin_define ("__UWIN__"); \
- builtin_define ("__MSVCRT__"); \
- builtin_define ("_STD_INCLUDE_DIR=mingw32"); \
- } \
- while (0)
-
-#undef CPP_SPEC
-#define CPP_SPEC "-remap %{posix:-D_POSIX_SOURCE} \
- -include /usr/include/astwin32.h \
- -idirafter /usr/gnu/include/mingw32"
-
-/* For Windows applications, include more libraries, but always include
- kernel32. */
-#undef LIB_SPEC
-#define LIB_SPEC \
- "%{pg:-lgmon} %{mwindows:-luser32 -lgdi32 -lcomdlg32} -lkernel32 -ladvapi32"
-
-/* Include in the mingw32 libraries with libgcc */
-#undef LIBGCC_SPEC
-#define LIBGCC_SPEC "-lgnuwin -lposix -lgcc -last -lmoldname -lmsvcrt"
-
-/* Specify a different entry point when linking a DLL */
-#undef LINK_SPEC
-#define LINK_SPEC \
- "%{mwindows:--subsystem windows} %{mdll:--dll -e _DllMainCRTStartup@12} \
- %{!mdll:-u _main}"
-
-#undef STARTFILE_SPEC
-#define STARTFILE_SPEC "%{mdll:dllcrt2%O%s} %{!mdll:crt2%O%s} %{pg:gcrt2%O%s}"
-
-/* These are PE BFD bug workarounds. Should go away eventually. */
-
-/* Write the extra assembler code needed to declare a function
- properly. If we are generating SDB debugging information, this
- will happen automatically, so we only need to handle other cases. */
-#undef ASM_DECLARE_FUNCTION_NAME
-#define ASM_DECLARE_FUNCTION_NAME(FILE, NAME, DECL) \
- do \
- { \
- i386_pe_maybe_record_exported_symbol (DECL, NAME, 0); \
- } \
- while (0)
-
-#undef ASM_OUTPUT_EXTERNAL
-#undef ASM_OUTPUT_EXTERNAL_LIBCALL
-
OpenPOWER on IntegriCloud