[Openmcl-cvs-notifications] r14146 - in /trunk/source/lisp-kernel: ppc-constants32.h ppc-constants64.h

gb at clozure.com gb at clozure.com
Thu Aug 5 09:41:13 CDT 2010


Author: gb
Date: Thu Aug  5 09:41:13 2010
New Revision: 14146

Log:
Common struct defs, #defines in constants.h.



Modified:
    trunk/source/lisp-kernel/ppc-constants32.h
    trunk/source/lisp-kernel/ppc-constants64.h

Modified: trunk/source/lisp-kernel/ppc-constants32.h
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- trunk/source/lisp-kernel/ppc-constants32.h (original)
+++ trunk/source/lisp-kernel/ppc-constants32.h Thu Aug  5 09:41:13 2010
@@ -75,14 +75,6 @@
 =

 =

 =

-/*  Order of CAR and CDR doesn't seem to matter much - there aren't */
-/*  too many tricks to be played with predecrement/preincrement addressing=
. */
-/*  Keep them in the confusing MCL 3.0 order, to avoid confusion. */
-
-typedef struct cons {
-  LispObj cdr;
-  LispObj car;
-} cons;
 =

 =

 #define misc_header_offset -fulltag_misc
@@ -195,23 +187,6 @@
 	=

 /*  The objects themselves look something like this: */
 =

-typedef struct lispsymbol {
-  LispObj header;
-  LispObj pname;
-  LispObj vcell;
-  LispObj fcell;
-  LispObj package_predicate;
-  LispObj flags;
-  LispObj plist;
-  LispObj binding_index;
-} lispsymbol;
-
-typedef struct ratio {
-  LispObj header;
-  LispObj numer;
-  LispObj denom;
-} ratio;
-
 typedef struct double_float {
   LispObj header;
   LispObj pad;
@@ -224,21 +199,6 @@
   LispObj value;
 } single_float;
 =

-typedef struct macptr {
-  LispObj header;
-  LispObj address;
-  LispObj class;
-  LispObj type;
-} macptr;
-
-typedef struct xmacptr {
-  LispObj header;
-  LispObj address;
-  LispObj class;
-  LispObj type;
-  LispObj flags;
-  LispObj link;
-} xmacptr;
   =

 =

 typedef struct eabi_c_frame {
@@ -265,23 +225,6 @@
   LispObj savevsp;
 } lisp_frame;
 =

-typedef struct special_binding {
-  struct special_binding *link;
-  struct lispsymbol *sym;
-  LispObj value;
-} special_binding;
-
-/* The GC (at least) needs to know what a
-   package looks like, so that it can do GCTWA. */
-typedef struct package {
-  LispObj header;
-  LispObj itab;			/* itab and etab look like (vector (fixnum . fixnum) */
-  LispObj etab;
-  LispObj used;
-  LispObj used_by;
-  LispObj names;
-  LispObj shadowed;
-} package;
 =

 /*
   The GC also needs to know what a catch_frame looks like.
@@ -320,94 +263,6 @@
 =

 #define fixnum_bitmask(n)  (1<<((n)+fixnumshift))
 =

-/* =

-  The GC (at least) needs to know about hash-table-vectors and their flag =
bits.
-*/
-
-typedef struct hash_table_vector_header {
-  LispObj header;
-  LispObj link;                 /* If weak */
-  LispObj flags;                /* a fixnum; see below */
-  LispObj gc_count;             /* gc-count kernel global */
-  LispObj free_alist;           /* preallocated conses for finalization_al=
ist */
-  LispObj finalization_alist;   /* key/value alist for finalization */
-  LispObj weak_deletions_count; /* incremented when GC deletes weak pair */
-  LispObj hash;                 /* backpointer to hash-table */
-  LispObj deleted_count;        /* number of deleted entries [not maintain=
ed if lock-free] */
-  LispObj count;                /* number of valid entries [not maintained=
 if lock-free] */
-  LispObj cache_idx;            /* index of last cached pair */
-  LispObj cache_key;            /* value of last cached key */
-  LispObj cache_value;          /* last cached value */
-  LispObj size;                 /* number of entries in table */
-  LispObj size_reciprocal;      /* shifted reciprocal of size */
-} hash_table_vector_header;
-
-/*
-  Bits (masks)  in hash_table_vector.flags:
-*/
-
-/* GC should track keys when addresses change */ =

-#define nhash_track_keys_mask fixnum_bitmask(28) =

-
-/* GC should set when nhash_track_keys_bit & addresses change */
-#define nhash_key_moved_mask  fixnum_bitmask(27) =

-
-/* weak on key or value (need new "weak both" encoding.) */
-#define nhash_weak_mask       fixnum_bitmask(12)
-
-/* weak on value */
-#define nhash_weak_value_mask fixnum_bitmask(11)
-
-/* finalizable */
-#define nhash_finalizable_mask fixnum_bitmask(10)
-
-/* keys frozen, i.e. don't clobber keys, only values */
-#define nhash_keys_frozen_mask fixnum_bitmask(9)
-
-/* Lfun bits */
-
-#define lfbits_nonnullenv_mask fixnum_bitmask(0)
-#define lfbits_keys_mask fixnum_bitmask(1)
-#define lfbits_restv_mask fixnum_bitmask(7)
-#define lfbits_optinit_mask fixnum_bitmask(14)
-#define lfbits_rest_mask fixnum_bitmask(15)
-#define lfbits_aok_mask fixnum_bitmask(16)
-#define lfbits_lap_mask fixnum_bitmask(23)
-#define lfbits_trampoline_mask fixnum_bitmask(24)
-#define lfbits_evaluated_mask fixnum_bitmask(25)
-#define lfbits_cm_mask fixnum_bitmask(26)         /* combined_method */
-#define lfbits_nextmeth_mask fixnum_bitmask(26)   /* or call_next_method w=
ith method_mask */
-#define lfbits_gfn_mask fixnum_bitmask(27)        /* generic_function */
-#define lfbits_nextmeth_with_args_mask fixnum_bitmask(27)   /* or call_nex=
t_method_with_args with method_mask */
-#define lfbits_method_mask fixnum_bitmask(28)     /* method function */
-/* PPC only but want it defined for xcompile */
-#define lfbits_noname_mask fixnum_bitmask(29)
-
-
-/* Creole */
-
-#define doh_quantum 400
-#define doh_block_slots ((doh_quantum >> 2) - 3)
-
-typedef struct doh_block {
-  struct doh_block *link;
-  unsigned size;
-  unsigned free;
-  LispObj data[doh_block_slots];
-} doh_block, *doh_block_ptr;
-
-
-#define population_weak_list (0<<fixnum_shift)
-#define population_weak_alist (1<<fixnum_shift)
-#define population_termination_bit (16+fixnum_shift)
-#define population_type_mask ((1<<population_termination_bit)-1)
-
-#define gc_retain_pages_bit fixnum_bitmask(0)
-#define gc_integrity_check_bit fixnum_bitmask(2)
-#define egc_verbose_bit fixnum_bitmask(3)
-#define gc_verbose_bit fixnum_bitmask(4)
-#define gc_allow_stack_overflows_bit fixnum_bitmask(5)
-#define gc_postgc_pending fixnum_bitmask(26)
 =

 #include "lisp-errors.h"
 =


Modified: trunk/source/lisp-kernel/ppc-constants64.h
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- trunk/source/lisp-kernel/ppc-constants64.h (original)
+++ trunk/source/lisp-kernel/ppc-constants64.h Thu Aug  5 09:41:13 2010
@@ -172,56 +172,12 @@
 =

 /* The objects themselves look something like this: */
 =

-/*  Order of CAR and CDR doesn't seem to matter much - there aren't */
-/*  too many tricks to be played with predecrement/preincrement addressing=
. */
-/*  Keep them in the confusing MCL 3.0 order, to avoid confusion. */
-
-typedef struct cons {
-  LispObj cdr;
-  LispObj car;
-} cons;
-
-
-
-typedef struct lispsymbol {
-  LispObj header;
-  LispObj pname;
-  LispObj vcell;
-  LispObj fcell;
-  LispObj package_predicate;
-  LispObj flags;
-  LispObj plist;
-  LispObj binding_index;
-} lispsymbol;
-
-typedef struct ratio {
-  LispObj header;
-  LispObj numer;
-  LispObj denom;
-} ratio;
-
 typedef struct double_float {
   LispObj header;
   LispObj value;
 } double_float;
 =

 =

-typedef struct macptr {
-  LispObj header;
-  LispObj address;
-  LispObj class;
-  LispObj type;
-} macptr;
-
-typedef struct xmacptr {
-  LispObj header;
-  LispObj address;
-  LispObj class;
-  LispObj type;
-  LispObj flags;
-  LispObj link;
-} xmacptr;
-  =

 =

 typedef struct eabi_c_frame {
   struct eabi_c_frame *backlink;
@@ -247,23 +203,6 @@
   LispObj savevsp;
 } lisp_frame;
 =

-typedef struct special_binding {
-  struct special_binding *link;
-  struct lispsymbol *sym;
-  LispObj value;
-} special_binding;
-
-/* The GC (at least) needs to know what a
-   package looks like, so that it can do GCTWA. */
-typedef struct package {
-  LispObj header;
-  LispObj itab;			/* itab and etab look like (vector (fixnum . fixnum) */
-  LispObj etab;
-  LispObj used;
-  LispObj used_by;
-  LispObj names;
-  LispObj shadowed;
-} package;
 =

 /*
   The GC also needs to know what a catch_frame looks like.
@@ -295,95 +234,6 @@
 =

 #define fixnum_bitmask(n)  (1LL<<((n)+fixnumshift))
 =

-/* =

-  The GC (at least) needs to know about hash-table-vectors and their flag =
bits.
-*/
-
-typedef struct hash_table_vector_header {
-  LispObj header;
-  LispObj link;                 /* If weak */
-  LispObj flags;                /* a fixnum; see below */
-  LispObj gc_count;             /* gc-count kernel global */
-  LispObj free_alist;           /* preallocated conses for finalization_al=
ist */
-  LispObj finalization_alist;   /* key/value alist for finalization */
-  LispObj weak_deletions_count; /* incremented when GC deletes weak pair */
-  LispObj hash;                 /* backpointer to hash-table */
-  LispObj deleted_count;        /* number of deleted entries [not maintain=
ed if lock-free] */
-  LispObj count;                /* number of valid entries [not maintained=
 if lock-free] */
-  LispObj cache_idx;            /* index of last cached pair */
-  LispObj cache_key;            /* value of last cached key */
-  LispObj cache_value;          /* last cached value */
-  LispObj size;                 /* number of entries in table */
-  LispObj size_reciprocal;      /* shifted reciprocal of size */
-} hash_table_vector_header;
-
-/*
-  Bits (masks)  in hash_table_vector.flags:
-*/
-
-/* GC should track keys when addresses change */ =

-#define nhash_track_keys_mask fixnum_bitmask(28) =

-
-/* GC should set when nhash_track_keys_bit & addresses change */
-#define nhash_key_moved_mask  fixnum_bitmask(27) =

-
-/* weak on key or value (need new "weak both" encoding.) */
-#define nhash_weak_mask       fixnum_bitmask(12)
-
-/* weak on value */
-#define nhash_weak_value_mask fixnum_bitmask(11)
-
-/* finalizable */
-#define nhash_finalizable_mask fixnum_bitmask(10)
-
-/* keys frozen, i.e. don't clobber keys, only values */
-#define nhash_keys_frozen_mask fixnum_bitmask(9)
-
-/* Lfun bits */
-
-#define lfbits_nonnullenv_mask fixnum_bitmask(0)
-#define lfbits_keys_mask fixnum_bitmask(1)
-#define lfbits_restv_mask fixnum_bitmask(7)
-#define lfbits_optinit_mask fixnum_bitmask(14)
-#define lfbits_rest_mask fixnum_bitmask(15)
-
-#define lfbits_aok_mask fixnum_bitmask(16)
-#define lfbits_lap_mask fixnum_bitmask(23)
-#define lfbits_trampoline_mask fixnum_bitmask(24)
-#define lfbits_evaluated_mask fixnum_bitmask(25)
-#define lfbits_cm_mask fixnum_bitmask(26)         /* combined_method */
-#define lfbits_nextmeth_mask fixnum_bitmask(26)   /* or call_next_method w=
ith method_mask */
-#define lfbits_gfn_mask fixnum_bitmask(27)        /* generic_function */
-#define lfbits_nextmeth_with_args_mask fixnum_bitmask(27)   /* or call_nex=
t_method_with_args with method_mask */
-#define lfbits_method_mask fixnum_bitmask(28)     /* method function */
-/* PPC only but want it defined for xcompile */
-#define lfbits_noname_mask fixnum_bitmask(29)
-
-
-/* Creole */
-
-#define doh_quantum 400
-#define doh_block_slots ((doh_quantum >> 2) - 3)
-
-typedef struct doh_block {
-  struct doh_block *link;
-  unsigned size;
-  unsigned free;
-  LispObj data[doh_block_slots];
-} doh_block, *doh_block_ptr;
-
-
-#define population_weak_list (0<<fixnum_shift)
-#define population_weak_alist (1<<fixnum_shift)
-#define population_termination_bit (16+fixnum_shift)
-#define population_type_mask ((1<<population_termination_bit)-1)
-
-#define gc_retain_pages_bit fixnum_bitmask(0)
-#define gc_integrity_check_bit fixnum_bitmask(2)
-#define egc_verbose_bit fixnum_bitmask(3)
-#define gc_verbose_bit fixnum_bitmask(4)
-#define gc_allow_stack_overflows_bit fixnum_bitmask(5)
-#define gc_postgc_pending fixnum_bitmask(26)
 =

 #include "lisp-errors.h"
 =




More information about the Openmcl-cvs-notifications mailing list