-
Notifications
You must be signed in to change notification settings - Fork 111
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
CogVM source as per VMMaker.oscog-eem.2598
Spur: VMMaker.oscog-cb.2595 Fixed a fascinating bug in Planning compactor. Sometimes Planning decides to go for a multi-pass compaction, but in one compaction it compacts it all, so that firstFreeObject is the last object on heap, on the object after firstFreeObject is outside of the heap. Planning gets confused in this case, while everything is compacted. So I changed to abort compaction in that case, since everything is already compacted. Avoid inlining endCompaction to prevent duplication in compact. Make a minor refactoring to reinitializeScanFrom: to make it more readable (move assignment to firstMobileObject into scanForFirstFreeAndFirstMobileObjectFrom:). Improve the ImageLeakChecker to bounds check objects while swizzling, and hence detect the damaged images produced by the issue 444 planning compactor bug as corrupted. Refactor swizzleObj: to swizzleObj:in: so that ImageLeakChecker/ SpurLeakCheckingSegmentManager can produce more informative diagnostics. Improve the leak checker to first bounds check oops against the heap extent before probing the heap map. This prevents ImageLeakChecker from crashing on issue 444 corrupted images.
- Loading branch information
1 parent
9d2cdcb
commit 4710c5a
Showing
104 changed files
with
11,068 additions
and
6,755 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
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.