diff options
author | Steve Murphree <smurph@cvs.openbsd.org> | 1999-02-09 03:32:46 +0000 |
---|---|---|
committer | Steve Murphree <smurph@cvs.openbsd.org> | 1999-02-09 03:32:46 +0000 |
commit | 3d04c3892f5974aa845566bb6d3544cd56116ee2 (patch) | |
tree | 2f8f69b160709b7d8178fb8d41fb93816c5f89af /gnu/usr.bin/gcc | |
parent | ee3bd85f36b99a0a43135889cf1d49e01ea21ab1 (diff) |
Adding support for Motorola mvme88k
Diffstat (limited to 'gnu/usr.bin/gcc')
-rw-r--r-- | gnu/usr.bin/gcc/config/m88k/openbsd.h | 72 | ||||
-rw-r--r-- | gnu/usr.bin/gcc/config/m88k/t-openbsd | 13 | ||||
-rw-r--r-- | gnu/usr.bin/gcc/config/m88k/xm-openbsd.h | 4 | ||||
-rw-r--r-- | gnu/usr.bin/gcc/configure | 7 |
4 files changed, 96 insertions, 0 deletions
diff --git a/gnu/usr.bin/gcc/config/m88k/openbsd.h b/gnu/usr.bin/gcc/config/m88k/openbsd.h new file mode 100644 index 00000000000..dd07d64da75 --- /dev/null +++ b/gnu/usr.bin/gcc/config/m88k/openbsd.h @@ -0,0 +1,72 @@ +/* BSD a.out, not COFF or ELF. */ + +#define DBX_DEBUGGING_INFO +#define DEFAULT_GDB_EXTENSIONS 0 + +#include "aoutos.h" +#include "m88k/m88k.h" +#include <openbsd.h> + +/* Identify the compiler. */ +#undef VERSION_INFO1 +#define VERSION_INFO1 "Motorola m88k, " + +/* Macros to be automatically defined. */ +#undef CPP_PREDEFINES +#define CPP_PREDEFINES \ + "-Dunix -D__OpenBSD__ -D__CLASSIFY_TYPE__=2 -Asystem(unix) -Asystem(OpenBSD) -Acpu(m88k) -Amachine(m88k)" + +/* If -m88000 is in effect, add -Dmc88000; similarly for -m88100 and -m88110. + However, reproduce the effect of -Dmc88100 previously in CPP_PREDEFINES. + Here, the CPU_DEFAULT is assumed to be -m88100. */ +#undef CPP_SPEC +#define CPP_SPEC "%{m88000:-D__mc88000__} \ + %{!m88000:%{m88100:%{m88110:-D__mc88000__}}} \ + %{!m88000:%{!m88100:%{m88110:-D__mc88110__}}} \ + %{!m88000:%{!m88110:%{!ansi:%{traditional:-Dmc88100}} \ + -D__mc88100__ -D__mc88100}} %{posix:-D_POSIX_SOURCE}" + +/* For the 88k, a float function returns a double in traditional + mode (and a float in ansi mode). */ +#undef TRADITIONAL_RETURN_FLOAT + +/* Make gcc agree with <machine/ansi.h> */ +#undef SIZE_TYPE +#define SIZE_TYPE "unsigned int" + +#undef PTRDIFF_TYPE +#define PTRDIFF_TYPE "int" + +#undef WCHAR_TYPE +#define WCHAR_TYPE "int" + +#undef WCHAR_UNSIGNED +#define WCHAR_UNSIGNED 0 + +#undef WCHAR_TYPE_SIZE +#define WCHAR_TYPE_SIZE 32 + +/* Every structure or union's size must be a multiple of 2 bytes. */ + +#undef STRUCTURE_SIZE_BOUNDARY +#define STRUCTURE_SIZE_BOUNDARY 16 + +/* This is BSD, so it wants DBX format. */ + +/* This is the char to use for continuation (in case we need to turn + continuation back on). */ + +#define DBX_CONTIN_CHAR '?' + +/* Don't use the `xsfoo;' construct in DBX output; this system + doesn't support it. */ + +#define DBX_NO_XREFS + +/* Don't default to pcc-struct-return, because gcc is the only compiler, and + we want to retain compatibility with older gcc versions. */ +#define DEFAULT_PCC_STRUCT_RETURN 0 + +#undef SET_ASM_OP +#define SET_ASM_OP ".def" + diff --git a/gnu/usr.bin/gcc/config/m88k/t-openbsd b/gnu/usr.bin/gcc/config/m88k/t-openbsd new file mode 100644 index 00000000000..c35ad60e539 --- /dev/null +++ b/gnu/usr.bin/gcc/config/m88k/t-openbsd @@ -0,0 +1,13 @@ +# Specify how to create the *.asm files + +MOVE_ASM = moveHI15x.asm moveQI16x.asm moveSI46x.asm moveSI64n.asm \ + moveHI48x.asm moveSI45x.asm moveSI47x.asm moveSI96x.asm \ + moveDI96x.asm + +$(MOVE_ASM): $(srcdir)/config/m88k/m88k-move.sh + $(srcdir)/config/m88k/m88k-move.sh -no-tdesc + +LIB2FUNCS_EXTRA = $(MOVE_ASM) +LIBGCC1 = libgcc1.null +CROSS_LIBGCC1 = libgcc1.null +T_CPPFLAGS = -DUSE_GAS diff --git a/gnu/usr.bin/gcc/config/m88k/xm-openbsd.h b/gnu/usr.bin/gcc/config/m88k/xm-openbsd.h new file mode 100644 index 00000000000..fbd8b39f95f --- /dev/null +++ b/gnu/usr.bin/gcc/config/m88k/xm-openbsd.h @@ -0,0 +1,4 @@ +/* Configuration for GCC for Motorola 88k running OpenBSD as host. */ + +#include <m88k/xm-m88k.h> +#include <xm-openbsd.h> diff --git a/gnu/usr.bin/gcc/configure b/gnu/usr.bin/gcc/configure index 22a22f09e59..74956d4ea48 100644 --- a/gnu/usr.bin/gcc/configure +++ b/gnu/usr.bin/gcc/configure @@ -4106,6 +4106,13 @@ for machine in $build $host $target; do tmake_file=m88k/t-luna fi ;; + m88k-*-openbsd*) + tm_file=m88k/openbsd.h + # On OpenBSD, the headers are already okay. + fixincludes=Makefile.in + tmake_file=m88k/t-openbsd + xmake_file=x-openbsd + ;; m88k-*-sysv3*) tm_file=m88k/sysv3.h extra_parts="crtbegin.o crtend.o" |