/[cmucl]/src/lisp/gc.c
ViewVC logotype

Log of /src/lisp/gc.c

Parent Directory Parent Directory | Revision Log Revision Log


Links to HEAD: (view) (annotate)
Sticky Tag:

Revision 1.26 - (view) (annotate) - [select for diffs]
Mon Jan 1 11:53:03 2007 UTC (7 years, 3 months ago) by cshapiro
Branch: MAIN
CVS Tags: GIT-CONVERSION, HEAD, RELEASE_19f, RELEASE_20a, RELEASE_20b, amd64-dd-start, cross-sol-x86-2010-12-20, cross-sol-x86-base, cross-sol-x86-merged, cross-sparc-branch-base, intl-2-branch-base, intl-branch-2010-03-18-1300, intl-branch-base, intl-branch-working-2010-02-11-1000, intl-branch-working-2010-02-19-1000, label-2009-03-16, label-2009-03-25, merge-sse2-packed, merge-with-19f, merged-unicode-utf16-extfmt-2009-06-11, portable-clx-base, portable-clx-import-2009-06-16, post-merge-intl-branch, pre-merge-intl-branch, pre-telent-clx, release-19e, release-19e-base, release-19e-pre1, release-19e-pre2, release-19f-base, release-19f-pre1, release-20a-base, release-20a-pre1, release-20b-pre1, release-20b-pre2, snapshot-2007-01, snapshot-2007-02, snapshot-2007-03, snapshot-2007-04, snapshot-2007-05, snapshot-2007-06, snapshot-2007-07, snapshot-2007-08, snapshot-2007-09, snapshot-2007-10, snapshot-2007-11, snapshot-2007-12, snapshot-2008-01, snapshot-2008-02, snapshot-2008-03, snapshot-2008-04, snapshot-2008-05, snapshot-2008-06, snapshot-2008-07, snapshot-2008-08, snapshot-2008-09, snapshot-2008-10, snapshot-2008-11, snapshot-2008-12, snapshot-2009-01, snapshot-2009-02, snapshot-2009-04, snapshot-2009-05, snapshot-2009-07, snapshot-2009-08, snapshot-2009-11, snapshot-2009-12, snapshot-2010-01, snapshot-2010-02, snapshot-2010-03, snapshot-2010-04, snapshot-2010-05, snapshot-2010-06, snapshot-2010-07, snapshot-2010-08, snapshot-2010-11, snapshot-2010-12, snapshot-2011-01, snapshot-2011-02, snapshot-2011-03, snapshot-2011-04, snapshot-2011-06, snapshot-2011-07, snapshot-2011-09, sparc-tramp-assem-2010-07-19, sparc-tramp-assem-base, sse2-base, sse2-checkpoint-2008-10-01, sse2-merge-with-2008-10, sse2-merge-with-2008-11, sse2-packed-2008-11-12, sse2-packed-base, unicode-snapshot-2009-05, unicode-snapshot-2009-06, unicode-string-buffer-base, unicode-string-buffer-impl-base, unicode-utf16-base, unicode-utf16-char-support-2009-03-25, unicode-utf16-char-support-2009-03-26, unicode-utf16-extfmt-2009-03-27, unicode-utf16-extfmt-2009-06-11, unicode-utf16-extfmts-pre-sync-2008-11, unicode-utf16-extfmts-sync-2008-12, unicode-utf16-string-support, unicode-utf16-sync-2008-07, unicode-utf16-sync-2008-09, unicode-utf16-sync-2008-11, unicode-utf16-sync-2008-12, unicode-utf16-sync-label-2009-03-16
Branch point for: RELEASE-19F-BRANCH, RELEASE-20A-BRANCH, RELEASE-20B-BRANCH, amd64-dd-branch, cross-sol-x86-branch, cross-sparc-branch, intl-2-branch, intl-branch, portable-clx-branch, release-19e-branch, sparc-tramp-assem-branch, sse2-branch, sse2-packed-branch, unicode-string-buffer-branch, unicode-string-buffer-impl-branch, unicode-utf16-branch, unicode-utf16-extfmt-branch
Changes since 1.25: +1 -13 lines
Diff to previous 1.25
Remove old-style signals code and make our POSIX_SIGS behavior the default.

Revision 1.25 - (view) (annotate) - [select for diffs]
Fri Jul 14 13:18:48 2006 UTC (7 years, 9 months ago) by rtoy
Branch: MAIN
CVS Tags: release-19d, release-19d-base, release-19d-pre1, release-19d-pre2, snapshot-2006-08, snapshot-2006-09, snapshot-2006-10, snapshot-2006-11, snapshot-2006-12
Branch point for: release-19d-branch
Changes since 1.24: +102 -1 lines
Diff to previous 1.24
Add support for double-double-float.

Revision 1.22.2.1 - (view) (annotate) - [select for diffs]
Mon Dec 19 01:10:12 2005 UTC (8 years, 4 months ago) by rtoy
Branch: ppc_gencgc_branch
CVS Tags: ppc_gencgc_snap_2005-12-17, ppc_gencgc_snap_2006-01-06
Changes since 1.22: +1273 -1261 lines
Diff to previous 1.22 , to next main 1.26
Merge code from main branch of 2005-12-17 to ppc gencgc branch.  Still
doesn't work of course.

Revision 1.24 - (view) (annotate) - [select for diffs]
Sun Dec 11 18:30:48 2005 UTC (8 years, 4 months ago) by rtoy
Branch: MAIN
CVS Tags: double-double-array-base, double-double-array-checkpoint, double-double-base, double-double-init-%make-sparc, double-double-init-checkpoint-1, double-double-init-ppc, double-double-init-sparc, double-double-init-sparc-2, double-double-init-x86, double-double-irrat-end, double-double-irrat-start, double-double-reader-base, double-double-reader-checkpoint-1, double-double-sparc-checkpoint-1, snapshot-2006-01, snapshot-2006-02, snapshot-2006-03, snapshot-2006-04, snapshot-2006-05, snapshot-2006-06, snapshot-2006-07
Branch point for: double-double-array-branch, double-double-branch, double-double-reader-branch
Changes since 1.23: +3 -3 lines
Diff to previous 1.23
Make ppc port look a little more like sparc by making
fdefn-raw-addr-slot actually hold a tagged pointer instead of the raw
address.  Not sure if this is good or not, but making it like sparc
makes ppc a little easier.

Might need a cross-compile; the 2005-12-1-ppc cross-compile script
works fine.

assembly/ppc/arith.lisp:
o Static functions are now tagged, so need to adjust address before
  branching to them.

compiler/generic/new-genesis.lisp:
o Fill fdefn-raw-addr-slot with the tagged address instead of
  converting to untagged.

compiler/ppc/call.lisp:
o fdefn-raw-addr-slot is tagged, so need to adjust it before branching
  to function.

compiler/ppc/cell.lisp:
o No need to adjust function address before storing it in the
  fdefn-raw-addr-slot.

compiler/ppc/static-fn.lisp:
o Static functions are tagged, so need to adjust address before
  branching to them.

lisp/gc.c:
o Don't need scav_fdefn, because the fdefn is a tagged object now.

lisp/ppc-assem.S:
o Make undefined_tramp and closure_tramp be tagged instead of
  untagged.

lisp/purify.c
o RAW_ADDR_OFFSET is 0 now, like sparc.

Revision 1.23 - (view) (annotate) - [select for diffs]
Thu Sep 15 18:26:51 2005 UTC (8 years, 7 months ago) by rtoy
Branch: MAIN
CVS Tags: release-19c, release-19c-base, release-19c-pre1, snapshot-2005-10, snapshot-2005-11, snapshot-2005-12
Branch point for: release-19c-branch
Changes since 1.22: +1267 -1255 lines
Diff to previous 1.22
Indent all source files using GNU indent using the config in
.indent.pro.

Revision 1.22 - (view) (annotate) - [select for diffs]
Mon Jul 12 23:44:07 2004 UTC (9 years, 9 months ago) by pmai
Branch: MAIN
CVS Tags: ppc_gencgc_snap_2005-05-14, release-19b-base, release-19b-pre1, release-19b-pre2, snapshot-2004-08, snapshot-2004-09, snapshot-2004-10, snapshot-2004-11, snapshot-2004-12, snapshot-2005-01, snapshot-2005-02, snapshot-2005-03, snapshot-2005-04, snapshot-2005-05, snapshot-2005-06, snapshot-2005-07, snapshot-2005-08, snapshot-2005-09
Branch point for: ppc_gencgc_branch, release-19b-branch
Changes since 1.21: +3 -3 lines
Diff to previous 1.21
Finish conversion from hardcoded sigcontext to os_context_t, as initiated
by the commit of the NetBSD support, and needed by the upcoming merge of
the OS X/Darwin port.

Revision 1.21 - (view) (annotate) - [select for diffs]
Sat Jul 19 14:10:16 2003 UTC (10 years, 9 months ago) by emarsden
Branch: MAIN
CVS Tags: amd64-merge-start, dynamic-extent-base, lisp-executable-base, mod-arith-base, prm-before-macosx-merge-tag, release-19a, release-19a-base, release-19a-pre1, release-19a-pre2, release-19a-pre3, snapshot-2003-10, snapshot-2003-11, snapshot-2003-12, snapshot-2004-04, snapshot-2004-05, snapshot-2004-06, snapshot-2004-07, sparc_gencgc, sparc_gencgc_merge
Branch point for: dynamic-extent, lisp-executable, mod-arith-branch, release-19a-branch, sparc_gencgc_branch
Changes since 1.20: +8 -3 lines
Diff to previous 1.20
  - fix a signed/unsigned cast bug that was prevented the
    auto-gc-trigger from functioning correctly when using certain
    dynamic-space sizes (for platforms that don't have an internal gc
    trigger).

  - added a few #include files to avoid compiler warnings

  - changed some #ifdef semantics: DEBUG activates additional
    assertions, and PRINTNOISE activates debugging statements.

Revision 1.20.2.1 - (view) (annotate) - [select for diffs]
Fri Oct 4 23:14:04 2002 UTC (11 years, 6 months ago) by pmai
Branch: UNICODE-BRANCH
Changes since 1.20: +25 -1 lines
Diff to previous 1.20 , to next main 1.26
Checked in Brian Spilsbury's experimental Unicode, locales, and dialect
support patchset.  This lives on its own branch, so that people can
play with it and tweak it, without disturbing 18e release engineering
on the main branch.  Bootstrapping has only been tried on LINKAGE_TABLE
x86/Linux builds.  A working cross-compile script is checked in under
bootfiles/19a/boot1-cross-unicode.lisp.  The script still leaves you
with some interactive errors, on the cross compile, which you should
answer with 2.  See the mailing list for more information.

Revision 1.20 - (view) (annotate) - [select for diffs]
Thu May 2 21:10:53 2002 UTC (11 years, 11 months ago) by toy
Branch: MAIN
CVS Tags: LINKAGE_TABLE, PRE_LINKAGE_TABLE, UNICODE-BASE, cold-pcl-base, release-18e, release-18e-base, release-18e-pre1, release-18e-pre2, remove_negative_zero_not_zero
Branch point for: UNICODE-BRANCH, cold-pcl, release-18e-branch
Changes since 1.19: +5 -5 lines
Diff to previous 1.19
Get rid of the compiler warnings from gcc about stuff at the end of a
preprocessor token.

Revision 1.13.2.5 - (view) (annotate) - [select for diffs]
Sat Mar 23 18:51:01 2002 UTC (12 years ago) by pw
Branch: RELENG_18
CVS Tags: RELEASE_18d
Changes since 1.13.2.4: +1 -3 lines
Diff to previous 1.13.2.4 , to branch point 1.13 , to next main 1.26
Mega commit to bring RELENG_18 branch in sync with HEAD in preparation
for release tagging 18d.

Revision 1.19 - (view) (annotate) - [select for diffs]
Wed Jan 23 19:04:13 2002 UTC (12 years, 2 months ago) by toy
Branch: MAIN
Changes since 1.18: +1 -3 lines
Diff to previous 1.18
From Eric Marsden:

There is an incorrect gc_assert in lisp/gc.c in the function
from_space_p. The argument is not necessarily a descriptor; it may be
an untagged pointer, in which case the assertion is false. This causes
rebuild to fail on SPARC when GC assertions are enabled.

This observation is due to Daniel Barlow (and is fixed in SBCL).

Revision 1.13.2.4 - (view) (annotate) - [select for diffs]
Mon Nov 6 17:18:34 2000 UTC (13 years, 5 months ago) by dtc
Branch: RELENG_18
CVS Tags: RELEASE_18c
Changes since 1.13.2.3: +2 -2 lines
Diff to previous 1.13.2.3 , to branch point 1.13
When searching for a LIP register pair, only consider lisp pointer
objects, to avoid falsely pairing with a fixnum.

Revision 1.18 - (view) (annotate) - [select for diffs]
Mon Nov 6 17:18:25 2000 UTC (13 years, 5 months ago) by dtc
Branch: MAIN
Changes since 1.17: +2 -2 lines
Diff to previous 1.17
When searching for a LIP register pair, only consider lisp pointer
objects, to avoid falsely pairing with a fixnum.

Revision 1.13.2.3 - (view) (annotate) - [select for diffs]
Tue Oct 24 13:33:56 2000 UTC (13 years, 5 months ago) by dtc
Branch: RELENG_18
Changes since 1.13.2.2: +5 -5 lines
Diff to previous 1.13.2.2 , to branch point 1.13
o Add the command line switch -dynamic-space-size for setting the size
  of the dynamic space. DYNAMIC_SPACE_SIZE now defines the maximum
  size, and when defined DEFAULT_DYNAMIC_SPACE_SIZE gives the default.

o Increase the maximum dynamic space size for Linux x86 to 1.625GB,
  with the default remaining at 512MB.

o Define the default dynamic space size for FreeBSD x86 to also be 512MB,
  with a maximum of 2GB.

Revision 1.17 - (view) (annotate) - [select for diffs]
Tue Oct 24 13:32:30 2000 UTC (13 years, 5 months ago) by dtc
Branch: MAIN
Changes since 1.16: +5 -5 lines
Diff to previous 1.16
o Add the command line switch -dynamic-space-size for setting the size
  of the dynamic space. DYNAMIC_SPACE_SIZE now defines the maximum
  size, and when defined DEFAULT_DYNAMIC_SPACE_SIZE gives the default.

o Increase the maximum dynamic space size for Linux x86 to 1.625GB,
  with the default remaining at 512MB.

o Define the default dynamic space size for FreeBSD x86 to also be 512MB,
  with a maximum of 2GB.

Revision 1.13.2.2 - (view) (annotate) - [select for diffs]
Tue May 23 16:38:14 2000 UTC (13 years, 10 months ago) by pw
Branch: RELENG_18
Changes since 1.13.2.1: +3 -3 lines
Diff to previous 1.13.2.1 , to branch point 1.13
This set of revisions brings the RELENG_18 branch up to HEAD in preparation
for an 18c release.

Revision 1.16 - (view) (annotate) - [select for diffs]
Sun Jul 26 00:05:31 1998 UTC (15 years, 8 months ago) by dtc
Branch: MAIN
Changes since 1.15: +3 -3 lines
Diff to previous 1.15
Fix some typos in the long-float support; noted by Raymond Toy.

Revision 1.13.2.1 - (view) (annotate) - [select for diffs]
Tue Jun 23 11:24:53 1998 UTC (15 years, 9 months ago) by pw
Branch: RELENG_18
CVS Tags: RELEASE_18b
Changes since 1.13: +259 -1 lines
Diff to previous 1.13
This (huge) revision brings the RELENG_18 branch up to the current HEAD.
Note code/unix-glib2.lisp not yet included -- not sure it is ready to go.

Revision 1.15 - (view) (annotate) - [select for diffs]
Sat Mar 21 08:14:59 1998 UTC (16 years, 1 month ago) by dtc
Branch: MAIN
Changes since 1.14: +137 -1 lines
Diff to previous 1.14
Long-float support.

Revision 1.14 - (view) (annotate) - [select for diffs]
Sat Nov 1 22:58:02 1997 UTC (16 years, 5 months ago) by dtc
Branch: MAIN
Changes since 1.13: +123 -1 lines
Diff to previous 1.13
Improved support for (complex single-float) and (complex double-float)
types. Adds storage classes to the backend for these so they can be
stored in registers or on the stack without consing; new primitive
types etc. Also adds (simple-array (complex {single,double}-float))
array types to avoid consing and speed vectors operations.  All
these changes are conditional on the :complex-float feature. More work
is needed to exploit these changes: improving the type dispatch in the
various function; maybe compiler transforms or more VOPs to handle
common functions inline.

Revision 1.13 - (view) (annotate) - [select for diffs]
Mon Apr 21 00:52:21 1997 UTC (17 years ago) by dtc
Branch: MAIN
CVS Tags: RELEASE_18a
Branch point for: RELENG_18
Changes since 1.12: +1 -3 lines
Diff to previous 1.12
Backout a prior patch which skipped the scavenging of the NFP. This is
required on the MIPS port where the NFP is a descriptor reg. Correct
fix for the sparc is to not have the NFP defined as a BOXED register,
it's defined as a non-descriptor register in compiler/sparc/vm.lisp
and the GC was scavenging it and picking up bad pointers.

Revision 1.12 - (view) (annotate) - [select for diffs]
Tue Apr 1 19:24:17 1997 UTC (17 years ago) by dtc
Branch: MAIN
Changes since 1.11: +37 -1 lines
Diff to previous 1.11
Support for some specialised signed array types: (signed-byte 8),
(signed-byte 16), (signed-byte 30), (signed-byte 32).  These patches
include the general support and the x86 backend support; more to
follow. The important changes are conditional on the :signed-array
feature so shouldn't affect the source without this feature. This work
has been driven by Raymond Toy.

Revision 1.11 - (view) (annotate) - [select for diffs]
Mon Feb 17 09:17:15 1997 UTC (17 years, 2 months ago) by dtc
Branch: MAIN
Changes since 1.10: +101 -4 lines
Diff to previous 1.10
Transport table fix, type_InstanceHeader should be trans_boxed.
Size table fix, type_InstanceHeader should be size_boxed.

The scavenge function can be compiled to either directly dispatch to
the scavenge functions, or handle some common cases itself
(pointers/forwarding-pointers, fixnums) only calling the dispatch
functions if necessary. In the second case there was redundant pointer
and forwarding pointer checks in the pointer scavenging functions -
this redundancy has been removed. Now define DIRECT_SCAV to have
scavenge directly call the scavenge functions, else it handles some
common cases itself (which gives better performance); the appropriate
versions of the pointer scavenging functions will be compiled.

Revision 1.10 - (view) (annotate) - [select for diffs]
Wed Feb 5 18:01:13 1997 UTC (17 years, 2 months ago) by pw
Branch: MAIN
Changes since 1.9: +4 -2 lines
Diff to previous 1.9
initial post 1.3.7 merge

Revision 1.9 - (view) (annotate) - [select for diffs]
Mon Oct 24 20:02:41 1994 UTC (19 years, 5 months ago) by ram
Branch: MAIN
Changes since 1.8: +19 -3 lines
Diff to previous 1.8
Solaris patches/posix signal support.

Revision 1.6.1.1 - (view) (annotate) - [select for diffs] (vendor branch)
Mon Oct 24 19:45:48 1994 UTC (19 years, 5 months ago) by ram
Branch: solaris_patch
Changes since 1.6: +19 -3 lines
Diff to previous 1.6 , to next main 1.26
Solaris patches.

Revision 1.8 - (view) (annotate) - [select for diffs]
Tue Jul 5 16:07:20 1994 UTC (19 years, 9 months ago) by hallgren
Branch: MAIN
Changes since 1.7: +7 -2 lines
Diff to previous 1.7
Updated for the sgi.

Revision 1.7 - (view) (annotate) - [select for diffs]
Sun Mar 27 15:17:01 1994 UTC (20 years ago) by hallgren
Branch: MAIN
Changes since 1.6: +13 -2 lines
Diff to previous 1.6
Updated for the Alpha.

Revision 1.6 - (view) (annotate) - [select for diffs]
Tue Jul 27 15:00:59 1993 UTC (20 years, 8 months ago) by hallgren
Branch: MAIN
Branch point for: solaris_patch
Changes since 1.5: +7 -3 lines
Diff to previous 1.5
Flush the icache in TRANS_CODE so genesis works when it gc's.  Change two
ifndef MACH's to ifdef SUNOS.

Revision 1.5 - (view) (annotate) - [select for diffs]
Fri Feb 26 09:02:03 1993 UTC (21 years, 1 month ago) by ram
Branch: MAIN
Changes since 1.4: +10 -10 lines
Diff to previous 1.4
new structure branch & tuning, see new_struct

Revision 1.4.1.1 - (view) (annotate) - [select for diffs] (vendor branch)
Tue Feb 23 12:00:16 1993 UTC (21 years, 1 month ago) by ram
Branch: new_struct
Changes since 1.4: +10 -10 lines
Diff to previous 1.4 , to next main 1.26
structure -> instance

Revision 1.4 - (view) (annotate) - [select for diffs]
Sun Jan 10 17:20:12 1993 UTC (21 years, 3 months ago) by wlott
Branch: MAIN
Branch point for: new_struct
Changes since 1.3: +10 -10 lines
Diff to previous 1.3
Changed struct function_header to struct function.

Revision 1.3 - (view) (annotate) - [select for diffs]
Sat Dec 5 22:36:17 1992 UTC (21 years, 4 months ago) by wlott
Branch: MAIN
Changes since 1.2: +3 -1 lines
Diff to previous 1.2
Added support for dylan function subtypes.

Revision 1.2 - (view) (annotate) - [select for diffs]
Tue Sep 8 20:17:52 1992 UTC (21 years, 7 months ago) by wlott
Branch: MAIN
Changes since 1.1: +12 -19 lines
Diff to previous 1.1
Generalized the next-pc stuff in case more architetures show up with them.

Revision 1.1 - (view) (annotate) - [select for diffs]
Tue Jul 28 20:14:26 1992 UTC (21 years, 8 months ago) by wlott
Branch: MAIN
Initial revision

This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, select a symbolic revision name using the selection box, or choose 'Use Text Field' and enter a numeric revision.

  Diffs between and
  Type of Diff should be a

Sort log by:

  ViewVC Help
Powered by ViewVC 1.1.5