forked from dmitryvk/sbcl-win32-threads
-
Notifications
You must be signed in to change notification settings - Fork 4
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Committed patch for gencgc refactoring based on work done on threads branch. ... to make header file management a lot simpler, and allow the use of interesting typedefs in genesis :C-TYPE slot options, we split runtime.h into lots of smaller files that can be (semi-)independently included. ... all GC and GCish functions now have the same interface, so no need for (eq *internal-gc* #'collect-garbage) test in SUB-GC ... current_region_end_addr and current_region_free_pointer go away, eliminating potential for weird bugs when they're not synchronized properly. Yay OAOO ... disabled (actually, removed) inline allocation, as it depended on old current_region_* (see above) and appears to make not a lot of actual difference to run times anyway pseudo-atomic support is now always compiled in. I can see no good reason for not having it ... much code in alloc() collapsed. Also alloc() no longer attempts to drop its PA and do a collection in the middle of allocation - instead it uses the existing maybe_gc flag to indicate that collection should happen when the allocation is done. Possibly this has bad effects when trying to allocate an object bigger than available dynamic space, but that would fit if a GC were done first. Given the (complete lack of) error handling for out-of-memory conditions in this and all previous SBCL versions, it would be a foolish programmer who was depending on this anyway, though.
- Loading branch information
Showing
31 changed files
with
493 additions
and
629 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.