Skip to content

Commit 649f3f1

Browse files
committed
CogVM source as per VMMaker.oscog-eem.2488
StackInterpreter: Fix a bug where a reference in a married context in a base frame would prevent garbage collection. The same issue is fixed for normal marriage/divorce of contexts, but was not handled in makeBaseFrameFor:. Thanks to Ryan Macnak for identifying both bug and fix. SelectiveCompactor just abort compaction when it fails to find a segment to compact into or to allocate one, instead of crashing the VM with the error 'no segment to compact into' Sista: Make non-local return safe in the presence of Sista outer-context-less blocks; i.e. throw cannotReturn: when a home context can't be found instead of crashing.
1 parent 0917982 commit 649f3f1

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

60 files changed

+7263
-5382
lines changed

nsspur64src/vm/cogit.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/* Automatically generated by
2-
CCodeGenerator VMMaker.oscog-eem.2484 uuid: 63db7375-cf0b-4a19-86d9-9e4a4da68117
2+
CCodeGenerator VMMaker.oscog-eem.2488 uuid: 3d088675-fa5c-452e-8063-001ff1d4ab81
33
*/
44

55

nsspur64src/vm/cointerp.c

Lines changed: 260 additions & 199 deletions
Large diffs are not rendered by default.

nsspur64src/vm/cointerp.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/* Automatically generated by
2-
CCodeGeneratorGlobalStructure VMMaker.oscog-eem.2484 uuid: 63db7375-cf0b-4a19-86d9-9e4a4da68117
2+
CCodeGeneratorGlobalStructure VMMaker.oscog-eem.2488 uuid: 3d088675-fa5c-452e-8063-001ff1d4ab81
33
*/
44

55

@@ -245,7 +245,7 @@ extern sqInt minSlotsForShortening(void);
245245
extern sqInt nilObject(void);
246246
extern sqInt nonIndexablePointerFormat(void);
247247
extern sqInt numBytesOf(sqInt objOop);
248-
extern sqInt numPointerSlotsOf(sqInt objOop);
248+
extern usqInt numPointerSlotsOf(sqInt objOop);
249249
extern usqInt numSlotsOf(sqInt objOop);
250250
extern sqInt numStrongSlotsOfWeakling(sqInt objOop);
251251
extern sqInt objectAfter(sqInt objOop);

0 commit comments

Comments
 (0)