Changes to make FIXNUM_LENGTH_AS_BIGNUM visible to cpp.
authorChris Hanson <org/chris-hanson/cph>
Wed, 17 Dec 1986 06:35:06 +0000 (06:35 +0000)
committerChris Hanson <org/chris-hanson/cph>
Wed, 17 Dec 1986 06:35:06 +0000 (06:35 +0000)
v7/src/microcode/bignum.h
v7/src/microcode/config.h
v7/src/microcode/object.h
v8/src/microcode/object.h

index aedf261a88796f897b44f0a83f6c9ec632391910..e2bf1a71e68f810c21b73a224b3dc198d7a19965 100644 (file)
@@ -30,7 +30,7 @@ Technology nor of any adaptation thereof in any advertising,
 promotional, or sales literature without prior written consent from
 MIT in each case. */
 
-/* $Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/microcode/bignum.h,v 5.2 1986/12/17 06:00:03 cph Exp $
+/* $Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/microcode/bignum.h,v 5.3 1986/12/17 06:34:23 cph Exp $
 
 Head file for bignums.  This is shared by bignum.c and generic.c. */
 \f
@@ -65,7 +65,7 @@ typedef long bigdouble;
 #if ((USHORT_SIZE * 2) <= ULONG_SIZE)
 #define bigdigit               unsigned short
 #define bigdouble              long    /* Should be unsigned */
-#define SHIFT                  (CHAR_SIZE*sizeof(bigdigit))
+#define SHIFT                  USHORT_SIZE
 #define factor                 (sizeof(Pointer)/sizeof(bigdigit))
 #else
 #if ((CHAR_SIZE * 2) <= ULONG_SIZE)
index b67f22c0991e1271c4d0647e91fa11ffff7747c5..ca4852f224978ee79f492af0de370ec1e22615f6 100644 (file)
@@ -1,51 +1,42 @@
-/*          Hey EMACS, this is -*- C -*- code!                 */
-
-/****************************************************************
-*                                                               *
-*                         Copyright (c) 1986                    *
-*               Massachusetts Institute of Technology           *
-*                                                               *
-* This material was developed by the Scheme project at the      *
-* Massachusetts Institute of Technology, Department of          *
-* Electrical Engineering and Computer Science.  Permission to   *
-* copy this software, to redistribute it, and to use it for any *
-* purpose is granted, subject to the following restrictions and *
-* understandings.                                               *
-*                                                               *
-* 1. Any copy made of this software must include this copyright *
-* notice in full.                                               *
-*                                                               *
-* 2. Users of this software agree to make their best efforts (a)*
-* to return to the MIT Scheme project any improvements or       *
-* extensions that they make, so that these may be included in   *
-* future releases; and (b) to inform MIT of noteworthy uses of  *
-* this software.                                                *
-*                                                               *
-* 3.  All materials developed as a consequence of the use of    *
-* this software shall duly acknowledge such use, in accordance  *
-* with the usual standards of acknowledging credit in academic  *
-* research.                                                     *
-*                                                               *
-* 4. MIT has made no warrantee or representation that the       *
-* operation of this software will be error-free, and MIT is     *
-* under no obligation to provide any services, by way of        *
-* maintenance, update, or otherwise.                            *
-*                                                               *
-* 5.  In conjunction with products arising from the use of this *
-* material, there shall be no use of the name of the            *
-* Massachusetts Institute of Technology nor of any adaptation   *
-* thereof in any advertising, promotional, or sales literature  *
-* without prior written consent from MIT in each case.          *
-*                                                               *
-****************************************************************/
-\f
-/* File: CONFIG.H
+/* -*-C-*-
+
+Copyright (c) 1986 Massachusetts Institute of Technology
+
+This material was developed by the Scheme project at the Massachusetts
+Institute of Technology, Department of Electrical Engineering and
+Computer Science.  Permission to copy this software, to redistribute
+it, and to use it for any purpose is granted, subject to the following
+restrictions and understandings.
+
+1. Any copy made of this software must include this copyright notice
+in full.
+
+2. Users of this software agree to make their best efforts (a) to
+return to the MIT Scheme project any improvements or extensions that
+they make, so that these may be included in future releases; and (b)
+to inform MIT of noteworthy uses of this software.
+
+3. All materials developed as a consequence of the use of this
+software shall duly acknowledge such use, in accordance with the usual
+standards of acknowledging credit in academic research.
+
+4. MIT has made no warrantee or representation that the operation of
+this software will be error-free, and MIT is under no obligation to
+provide any services, by way of maintenance, update, or otherwise.
+
+5. In conjunction with products arising from the use of this material,
+there shall be no use of the name of the Massachusetts Institute of
+Technology nor of any adaptation thereof in any advertising,
+promotional, or sales literature without prior written consent from
+MIT in each case. */
+
+/* $Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/microcode/Attic/config.h,v 5.2 1986/12/17 06:34:57 cph Exp $
  *
  * This file contains the configuration information and the information
  * given on the command line on Unix.
  *
  */
-
+\f
 /* Default pathnames. */
 
 #ifndef DEFAULT_BAND_NAME
index 582c59e6c2c8784cf522bf1902512d5c34904129..02b8fbd22576f4153564688506d8b39a22d8e776 100644 (file)
@@ -30,7 +30,7 @@ Technology nor of any adaptation thereof in any advertising,
 promotional, or sales literature without prior written consent from
 MIT in each case. */
 
-/* File: object.h
+/* $Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/microcode/object.h,v 5.2 1986/12/17 06:35:06 cph Exp $
  *
  * This file contains definitions pertaining to the C view of 
  * Scheme pointers: widths of fields, extraction macros, pre-computed
@@ -38,8 +38,13 @@ MIT in each case. */
  *
  */
 \f
-/* The C type Pointer is defined at the end of CONFIG.H */
+/* The C type Pointer is defined at the end of CONFIG.H
+   The definition of POINTER_LENGTH here assumes that Pointer is the same
+   as unsigned long.  If that ever changes, this definition must also.
+   POINTER_LENGTH is defined this way to make it available to
+   the preprocessor. */
 
+#define POINTER_LENGTH         ULONG_SIZE
 #define TYPE_CODE_LENGTH       8       /* Not CHAR_SIZE!! */
 #define MAX_TYPE_CODE          0xFF    /* ((1<<TYPE_CODE_LENGTH) - 1) */
 
@@ -57,7 +62,6 @@ MIT in each case. */
 
 #ifndef b32                    /* Safe versions */
 
-#define POINTER_LENGTH         (CHAR_SIZE*sizeof(Pointer))
 #define ADDRESS_LENGTH         (POINTER_LENGTH-TYPE_CODE_LENGTH)
 #define ADDRESS_MASK           ((1<<ADDRESS_LENGTH) - 1)
 #define TYPE_CODE_MASK         (~ADDRESS_MASK)
@@ -71,7 +75,6 @@ MIT in each case. */
 
 #else                          /* 32 bit word versions */
 
-#define POINTER_LENGTH         32
 #define ADDRESS_LENGTH         24
 #define ADDRESS_MASK           0x00FFFFFF
 #define TYPE_CODE_MASK         0xFF000000
index 582c59e6c2c8784cf522bf1902512d5c34904129..73b3cbc8e6f4c729a9a0f041b2700786c42b7a0f 100644 (file)
@@ -30,7 +30,7 @@ Technology nor of any adaptation thereof in any advertising,
 promotional, or sales literature without prior written consent from
 MIT in each case. */
 
-/* File: object.h
+/* $Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v8/src/microcode/object.h,v 5.2 1986/12/17 06:35:06 cph Exp $
  *
  * This file contains definitions pertaining to the C view of 
  * Scheme pointers: widths of fields, extraction macros, pre-computed
@@ -38,8 +38,13 @@ MIT in each case. */
  *
  */
 \f
-/* The C type Pointer is defined at the end of CONFIG.H */
+/* The C type Pointer is defined at the end of CONFIG.H
+   The definition of POINTER_LENGTH here assumes that Pointer is the same
+   as unsigned long.  If that ever changes, this definition must also.
+   POINTER_LENGTH is defined this way to make it available to
+   the preprocessor. */
 
+#define POINTER_LENGTH         ULONG_SIZE
 #define TYPE_CODE_LENGTH       8       /* Not CHAR_SIZE!! */
 #define MAX_TYPE_CODE          0xFF    /* ((1<<TYPE_CODE_LENGTH) - 1) */
 
@@ -57,7 +62,6 @@ MIT in each case. */
 
 #ifndef b32                    /* Safe versions */
 
-#define POINTER_LENGTH         (CHAR_SIZE*sizeof(Pointer))
 #define ADDRESS_LENGTH         (POINTER_LENGTH-TYPE_CODE_LENGTH)
 #define ADDRESS_MASK           ((1<<ADDRESS_LENGTH) - 1)
 #define TYPE_CODE_MASK         (~ADDRESS_MASK)
@@ -71,7 +75,6 @@ MIT in each case. */
 
 #else                          /* 32 bit word versions */
 
-#define POINTER_LENGTH         32
 #define ADDRESS_LENGTH         24
 #define ADDRESS_MASK           0x00FFFFFF
 #define TYPE_CODE_MASK         0xFF000000