Total rewrite; includes ibmps2-aix.h.
authorRichard M. Stallman <rms@gnu.org>
Fri, 6 Aug 1993 01:01:53 +0000 (01:01 +0000)
committerRichard M. Stallman <rms@gnu.org>
Fri, 6 Aug 1993 01:01:53 +0000 (01:01 +0000)
src/m/ibm370aix.h

dissimilarity index 96%
index 9574539..9ff962b 100644 (file)
-/* ibm370.h
-   For IBM 3090 type systems running AIX370.
-   Concocted by Scott Schwartz <schwartz@cs.psu.edu>
-   Copyright (C) 1985, 1986 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 three symbols give information on
- the size of various data types.  */
-
-#define SHORTBITS 16           /* Number of bits in a short */
-
-#define INTBITS 32             /* Number of bits in an int */
-
-#define LONGBITS 32            /* Number of bits in a long */
-
-/* Define BIG_ENDIAN iff lowest-numbered byte in a word
-   is the most significant byte.  */
-
-#define 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 */
-/* high-c defines _AIX370 */
-
-/* Use type int rather than a union, to represent Lisp_Object */
-/* This is desirable for most machines.  */
-
-#define NO_UNION_TYPE
-
-/* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend
-   the 24-bit bit field into an int.  In other words, if bit fields
-   are always unsigned.
-
-   If you use NO_UNION_TYPE, this flag does not matter.  */
-
-#define EXPLICIT_SIGN_EXTEND
-
-/* Data type of load average, as read out of kmem.  */
-
-#define LOAD_AVE_TYPE double
-
-/* Convert that into an integer that is 100 for a load average of 1.0  */
-
-/* XXX */
-#define LOAD_AVE_CVT(x) (int)(((double) (x)) * 100.0 / 1.0)
-
-/* Define CANNOT_DUMP on machines where unexec does not work.
-   Then the function dump-emacs will not be defined
-   and temacs will do (load "loadup") automatically unless told otherwise.  */
-#define CANNOT_DUMP 
-#define CANNOT_UNEXEC
-
-/* Define VIRT_ADDR_VARIES if the virtual addresses of
-   pure and impure space as loaded can vary, and even their
-   relative order cannot be relied on.
-
-   Otherwise Emacs assumes that text space precedes data space,
-   numerically.  */
-
-#define VIRT_ADDR_VARIES
-
-/* 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 C_ALLOCA */
-#define HAVE_ALLOCA
-
-#ifndef NO_SHORTNAMES
-#include <alloca.h>
-#include <setjmp.h>
-#endif
-
-/* Define NO_REMAP if memory segmentation makes it not work well
-   to change the boundary between the text section and data section
-   when Emacs is dumped.  If you define this, the preloaded Lisp
-   code will not be sharable; but that's better than failing completely.  */
-
-#define NO_REMAP
-
-/* Don't try to include sioctl.h.  */
-#undef NEED_SIOCTL
-/* That probably means we shouldn't try ptem.h either.  */
-#undef NEED_PTEM_H
-
-/* Note we do not define IBMAIX, since the `hft' features
-   don't exist on this machine.  */
-
-#define LIBS_DEBUG -lg
-#ifndef LD_SWITCH_SYSTEM
-#define LD_SWITCH_SYSTEM
-#endif
-
-#define LIBS_SYSTEM -lbsd
-
-/* The symbol in the kernel where the load average is found
-   is named _avenrun.  */
-
-#undef LDAV_SYMBOL
-#define LDAV_SYMBOL "_avenrun"
-
-/* define MAIL_USE_FLOCK if the mailer uses flock
-   to interlock access to /usr/spool/mail/$USER.
-   The alternative is that a lock file named
-   /usr/spool/mail/$USER.lock.  */
-#define MAIL_USE_FLOCK
-
-/* Define CLASH_DETECTION if you want lock files to be written
-   so that Emacs can tell instantly when you try to modify
-   a file that someone else has modified in his Emacs.  */
-#define CLASH_DETECTION
-
-#define BSTRING
-
-/* First pty name is /dev/ptyp0.  */
-#define FIRST_PTY_LETTER 'p'
-
-/*
- *     Define HAVE_TIMEVAL if the system supports the BSD style clock values.
- *     Look in <sys/time.h> for a timeval structure.
- */
-#define HAVE_TIMEVAL
-/*
- *     Define HAVE_SELECT if the system supports the `select' system call.
- */
-#define HAVE_SELECT
-
-/*
- *     Define HAVE_PTYS if the system supports pty devices.
- */
-#define HAVE_PTYS
-
-/* Define HAVE_SOCKETS if system supports 4.2-compatible sockets.  */
-
-#define HAVE_SOCKETS
+/* m/ file for IBM 370 running AIX.  */
+
+#include "ibmps2-aix.h"
+
+#define AIX
+
+/* i370 is  big-endian */
+#define BIG_ENDIAN 
+
+#undef TEXT_START
+#undef SEGMENT_MASK
+#undef DATA_SECTION_ALIGNMENT
+
+#define TEXT_START 0
+#define SEGMENT_MASK 0
+#define DATA_SECTION_ALIGNMENT 0x00001000
+
+#undef LOAD_AVE_CVT
+#undef LOAD_AVE_TYPE
+/* Data type of load average, as read out of kmem.  */
+#define LOAD_AVE_CVT(x) (int)(((double) (x)) * 100.0 / 1.0)
+#define LOAD_AVE_TYPE double
+
+#undef LIBS_MACHINE
+#define LIBS_MACHINE 
+
+#undef LD_SWITCH_MACHINE
+#define LD_SWITCH_MACHINE -xa