Skip to content

Commit 6ac29da

Browse files
committed
CogVM source as per VMMaker.oscog-eem.2972
Fix the woefully broken Spur shorten:toIndexableSize: which is needed for ImageSegment loading and was hanging on by a thread. To support this allow slimbridges throughout new space, and hence use objectAfterMaybeSlimBridge:limit: in place of objectAfter:limit: in all new space enumeration. Extend leak checking with GCCheckShorten, renaming all non-GC leak check operarions that used to use GCModeXXX names to GCCheckXXX. TestingPrimitives is now one of the names defines at compile time.
1 parent a4b7c6a commit 6ac29da

Some content is hidden

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

47 files changed

+26659
-25241
lines changed

spur64src/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.2971 uuid: b9251568-d992-439d-a42e-846c5acbf5fd
2+
CCodeGenerator VMMaker.oscog-eem.2972 uuid: d3fd6149-f8a8-495d-bdb0-57456ffa277c
33
*/
44

55

spur64src/vm/cointerp.c

Lines changed: 1081 additions & 1018 deletions
Large diffs are not rendered by default.

spur64src/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.2971 uuid: b9251568-d992-439d-a42e-846c5acbf5fd
2+
CCodeGeneratorGlobalStructure VMMaker.oscog-eem.2972 uuid: d3fd6149-f8a8-495d-bdb0-57456ffa277c
33
*/
44

55

@@ -156,7 +156,6 @@ extern sqInt headerIndicatesAlternateBytecodeSet(sqInt methodHeader);
156156
extern sqInt instantiateClassindexableSize(sqInt classObj, usqInt nElements);
157157
extern sqInt isIntegerValue(sqInt intValue);
158158
extern sqInt isMarked(sqInt objOop);
159-
extern sqInt shortentoIndexableSize(sqInt objOop, sqInt indexableSize);
160159
extern usqInt smallObjectBytesForSlots(sqInt numSlots);
161160
extern void openScavengeLog(void);
162161
extern void printRememberedSet(void);
@@ -188,6 +187,7 @@ extern sqInt classTableRootObj(void);
188187
extern sqInt classTagForClass(sqInt classObj);
189188
extern sqInt compactClassIndexOf(sqInt objOop);
190189
extern void countMarkedAndUnmarkdObjects(sqInt printFlags);
190+
extern sqInt doShortentoIndexableSize(sqInt objOop, sqInt indexableSize);
191191
extern usqInt eeInstantiateClassIndexformatnumSlots(sqInt knownClassIndex, sqInt objFormat, sqInt numSlots);
192192
extern sqInt falseObject(void);
193193
extern sqInt fetchByteofObject(sqInt byteIndex, sqInt objOop);

spur64src/vm/cointerpmt.c

Lines changed: 1091 additions & 1028 deletions
Large diffs are not rendered by default.

spur64src/vm/cointerpmt.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/* Automatically generated by
2-
CCodeGeneratorGlobalStructure VMMaker.oscog-eem.2971 uuid: b9251568-d992-439d-a42e-846c5acbf5fd
2+
CCodeGeneratorGlobalStructure VMMaker.oscog-eem.2972 uuid: d3fd6149-f8a8-495d-bdb0-57456ffa277c
33
*/
44

55

@@ -160,7 +160,6 @@ extern sqInt headerIndicatesAlternateBytecodeSet(sqInt methodHeader);
160160
extern sqInt instantiateClassindexableSize(sqInt classObj, usqInt nElements);
161161
extern sqInt isIntegerValue(sqInt intValue);
162162
extern sqInt isMarked(sqInt objOop);
163-
extern sqInt shortentoIndexableSize(sqInt objOop, sqInt indexableSize);
164163
extern usqInt smallObjectBytesForSlots(sqInt numSlots);
165164
extern void openScavengeLog(void);
166165
extern void printRememberedSet(void);
@@ -192,6 +191,7 @@ extern sqInt classTableRootObj(void);
192191
extern sqInt classTagForClass(sqInt classObj);
193192
extern sqInt compactClassIndexOf(sqInt objOop);
194193
extern void countMarkedAndUnmarkdObjects(sqInt printFlags);
194+
extern sqInt doShortentoIndexableSize(sqInt objOop, sqInt indexableSize);
195195
extern usqInt eeInstantiateClassIndexformatnumSlots(sqInt knownClassIndex, sqInt objFormat, sqInt numSlots);
196196
extern sqInt falseObject(void);
197197
extern sqInt fetchByteofObject(sqInt byteIndex, sqInt objOop);
@@ -249,7 +249,7 @@ extern sqInt minSlotsForShortening(void);
249249
extern sqInt nilObject(void);
250250
extern sqInt nonIndexablePointerFormat(void);
251251
extern sqInt numBytesOf(sqInt objOop);
252-
extern sqInt numPointerSlotsOf(sqInt objOop);
252+
extern usqInt numPointerSlotsOf(sqInt objOop);
253253
extern usqInt numSlotsOf(sqInt objOop);
254254
extern sqInt numStrongSlotsOfWeakling(sqInt objOop);
255255
extern sqInt objectAfter(sqInt objOop);

0 commit comments

Comments
 (0)