changeset 25834:61793eeb4b68

#
author Dave Love <fx@gnu.org>
date Wed, 29 Sep 1999 22:08:57 +0000
parents 65cab65c4a28
children 265202db376b
files src/m/README src/m/ibmrs6000.inp src/m/macppc.h src/m/powerpcle.h src/m/pyrmips.h
diffstat 5 files changed, 187 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/m/README	Wed Sep 29 22:08:57 1999 +0000
@@ -0,0 +1,7 @@
+This directory contains C header files containing machine-specific
+definitions.  Each file describes a particular machine.  The emacs
+configuration script edits ../config.h to include the appropriate one of
+these files, and then each emacs source file includes config.h.
+
+template.h is a generic template for machine descriptions; it
+describes the parameters a machine file can specify.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/m/ibmrs6000.inp	Wed Sep 29 22:08:57 1999 +0000
@@ -0,0 +1,2 @@
+#!
+pthread_yield
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/m/macppc.h	Wed Sep 29 22:08:57 1999 +0000
@@ -0,0 +1,91 @@
+/* machine description file For the powerpc Macintosh.
+   Copyright (C) 1994 Free Software Foundation, Inc.
+
+This file is part of GNU Emacs.
+
+GNU Emacs 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 1, or (at your option)
+any later version.
+
+GNU Emacs 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 Emacs; see the file COPYING.  If not, write to
+the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+Boston, MA 02111-1307, USA.  */
+
+/* Define WORDS_BIG_ENDIAN iff lowest-numbered byte in a word
+   is the most significant byte.  */
+
+#define WORDS_BIG_ENDIAN
+
+/* Define NO_ARG_ARRAY if you cannot take the address of the first of a
+ * group of arguments and treat it as an array of the arguments.  */
+
+#define NO_ARG_ARRAY
+
+/* Define WORD_MACHINE if addresses and such have
+ * to be corrected before they can be used as byte counts.  */
+
+/* #define WORD_MACHINE */
+
+/* Now define a symbol for the cpu type, if your compiler
+   does not define it automatically:
+   Ones defined so far include vax, m68000, ns16000, pyramid,
+   orion, tahoe, APOLLO and many others */
+
+/* Use type EMACS_INT rather than a union, to represent Lisp_Object */
+/* This is desirable for most machines.  */
+
+#define NO_UNION_TYPE
+
+/* Data type of load average, as read out of kmem.  */
+
+#define LOAD_AVE_TYPE long
+
+/* Convert that into an integer that is 100 for a load average of 1.0  */
+
+#define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE)
+
+/* Define C_ALLOCA if this machine does not support a true alloca
+   and the one written in C should be used instead.
+   Define HAVE_ALLOCA to say that the system provides a properly
+   working alloca function and it should be used.
+   Define neither one if an assembler-language alloca
+   in the file alloca.s should be used.  */
+
+#define HAVE_ALLOCA
+
+/* Some really obscure 4.2-based systems (like Sequent DYNIX)
+ * do not support asynchronous I/O (using SIGIO) on sockets,
+ * even though it works fine on tty's.  If you have one of
+ * these systems, define the following, and then use it in
+ * config.h (or elsewhere) to decide when (not) to use SIGIO.
+ *
+ * You'd think this would go in an operating-system description file,
+ * but since it only occurs on some, but not all, BSD systems, the
+ * reasonable place to select for it is in the machine description
+ * file.
+ */
+
+/* #define NO_SOCK_SIGIO */
+
+#if defined(__NetBSD__) || defined(__OpenBSD__)
+#define ORDINARY_LINK
+#endif
+
+#define UNEXEC unexelf.o
+
+#define NO_TERMIO
+
+#if defined (LINUX) || defined (__NetBSD__) || defined (__OpenBSD__)
+# define TEXT_END ({ extern int _etext; &_etext; })
+#endif
+
+#if (defined (__NetBSD__) || defined (__OpenBSD__)) && defined (__ELF__)
+#define HAVE_TEXT_START
+#endif
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/m/powerpcle.h	Wed Sep 29 22:08:57 1999 +0000
@@ -0,0 +1,78 @@
+/* machine description file for PowerPC.
+   Copyright (C) 1987 Free Software Foundation, Inc.
+
+This file is part of GNU Emacs.
+
+GNU Emacs 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 Emacs 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 Emacs; see the file COPYING.  If not, write to
+the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */
+
+/* The following line tells the configuration script what sort of 
+   operating system this machine is likely to run.
+   USUAL-OPSYS="Solaris2.5.1 Windows/NT AIX 4.1.2"
+
+/* Define WORDS_BIG_ENDIAN iff lowest-numbered byte in a word
+   is the most significant byte.  */
+
+#undef WORDS_BIG_ENDIAN
+
+/* Define NO_ARG_ARRAY if you cannot take the address of the first of a
+ * group of arguments and treat it as an array of the arguments.  */
+
+#define NO_ARG_ARRAY
+
+/* Say this machine is a PowerPC Refernce Platform */
+
+#ifndef prep
+#define prep
+#endif
+
+#ifdef __GNUC__
+# define C_OPTIMIZE_SWITCH -O
+#else
+     /* This level of optimization is reported to work.  */
+# define C_OPTIMIZE_SWITCH -O2
+#endif
+
+/* Use type int rather than a union, to represent Lisp_Object */
+
+#define NO_UNION_TYPE
+
+/* XINT must explicitly sign-extend */
+
+#define EXPLICIT_SIGN_EXTEND
+
+/* Data type of load average, as read out of kmem.  */
+
+#define LOAD_AVE_TYPE long
+
+/* Convert that into an integer that is 100 for a load average of 1.0  */
+
+#define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE)
+
+/* Define C_ALLOCA if this machine does not support a true alloca
+   and the one written in C should be used instead.
+   Define HAVE_ALLOCA to say that the system provides a properly
+   working alloca function and it should be used.
+   Define neither one if an assembler-language alloca
+   in the file alloca.s should be used.  */
+
+#define HAVE_ALLOCA
+#ifndef NOT_C_CODE
+#if __GNUC__ < 2 /* Modern versions of GCC handle alloca directly.  */
+#include <alloca.h>
+#endif
+#endif
+
+/* Control a conditional in unexelf.c.  */
+#define SOLARIS_POWERPC
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/m/pyrmips.h	Wed Sep 29 22:08:57 1999 +0000
@@ -0,0 +1,9 @@
+/* Configuration file for the Pyramid machine that uses the MIPS cpu.  */
+/* This does not fully work.  */
+
+#include "m-pyramid.h"
+
+#define SYSTEM_MALLOC
+#define HAVE_ALLOCA
+#define CANNOT_DUMP
+