Skip to content

Commit ad970a9

Browse files
committed
CogVM source as per VMMaker.oscog-dtl.3185
Let primitiveImageFormatVersion answer the correct image format number when multiple byte codes are active.
1 parent 144607d commit ad970a9

File tree

30 files changed

+360
-172
lines changed

30 files changed

+360
-172
lines changed

src/spur32.cog.lowcode/cointerp.c

Lines changed: 18 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
/* Automatically generated by
2-
CCodeGeneratorGlobalStructure VMMaker.oscog-mt.3184 uuid: 57b61827-3f1a-ab45-966e-7c5caaef28d7
2+
CCodeGeneratorGlobalStructure VMMaker.oscog-dtl.3185 uuid: 0e7f07b8-eed6-4362-b223-86c98594ddb9
33
from
4-
CoInterpreter VMMaker.oscog-mt.3184 uuid: 57b61827-3f1a-ab45-966e-7c5caaef28d7
4+
CoInterpreter VMMaker.oscog-dtl.3185 uuid: 0e7f07b8-eed6-4362-b223-86c98594ddb9
55
*/
6-
static char __buildInfo[] = "CoInterpreter VMMaker.oscog-mt.3184 uuid: 57b61827-3f1a-ab45-966e-7c5caaef28d7 " __DATE__ ;
6+
static char __buildInfo[] = "CoInterpreter VMMaker.oscog-dtl.3185 uuid: 0e7f07b8-eed6-4362-b223-86c98594ddb9 " __DATE__ ;
77
char *__interpBuildInfo = __buildInfo;
88

99

@@ -2671,7 +2671,7 @@ sqInt debugCallbackInvokes;
26712671
sqInt debugCallbackReturns;
26722672
sqInt cannotDeferDisplayUpdates;
26732673
sqInt checkedPluginName;
2674-
const char *interpreterVersion = "Open Smalltalk Cog[Spur] VM [CoInterpreterPrimitives VMMaker.oscog-mt.3184]";
2674+
const char *interpreterVersion = "Open Smalltalk Cog[Spur] VM [CoInterpreterPrimitives VMMaker.oscog-dtl.3185]";
26752675
sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 40 */;
26762676
char expensiveAsserts = 0;
26772677
int (*showSurfaceFn)(sqIntptr_t, int, int, int, int);
@@ -52497,6 +52497,7 @@ primitiveIdentityHash(void)
5249752497
EXPORT(sqInt)
5249852498
primitiveImageFormatVersion(void)
5249952499
{ DECL_MAYBE_SQ_GLOBAL_STRUCT
52500+
unsigned int integerValue;
5250052501
usqInt newLargeInteger;
5250152502
usqInt newObj;
5250252503
usqInt numBytes;
@@ -52505,10 +52506,20 @@ primitiveImageFormatVersion(void)
5250552506
char *sp;
5250652507

5250752508
/* begin pop:thenPush: */
52509+
if (GIV(multipleBytecodeSetsActive)) {
52510+
integerValue = ((sqInt) (6521 /* imageFormatVersion */ | MultipleBytecodeSetsBitmask));
52511+
goto l6;
52512+
}
52513+
else {
52514+
/* begin imageFormatVersion */
52515+
integerValue = 6521;
52516+
goto l6;
52517+
}
52518+
l6: /* end imageFormatVersionForSnapshot */;
5250852519
/* begin maybeInlinePositive32BitIntegerFor: */
5250952520
assert(!((hasSixtyFourBitImmediates())));
52510-
if ((((unsigned int) 6521 /* imageFormatVersion */)) <= (MaxSmallInteger)) {
52511-
oop = (((usqInt)6521 /* imageFormatVersion */ << 1) | 1);
52521+
if ((((unsigned int) integerValue)) <= (MaxSmallInteger)) {
52522+
oop = ((integerValue << 1) | 1);
5251252523
goto l5;
5251352524
}
5251452525
/* begin eeInstantiateSmallClassIndex:format:numSlots: */
@@ -52543,7 +52554,7 @@ primitiveImageFormatVersion(void)
5254352554
/* Memory is 8 byte aligned in Spur, make sure that oversized bytes are set to zero */
5254452555
/* eem 4/28/2016 questionable; they should never be read */
5254552556
/* begin storeLong32:ofObject:withValue: */
52546-
long32Atput((newLargeInteger + BaseHeaderSize), SQ_SWAP_4_BYTES_IF_BIGENDIAN(6521 /* imageFormatVersion */));
52557+
long32Atput((newLargeInteger + BaseHeaderSize), SQ_SWAP_4_BYTES_IF_BIGENDIAN(integerValue));
5254752558
/* begin storeLong32:ofObject:withValue: */
5254852559
long32Atput((newLargeInteger + BaseHeaderSize) + (4), 0);
5254952560
oop = newLargeInteger;

src/spur32.cog.lowcode/gcc3x-cointerp.c

Lines changed: 18 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,11 @@
22

33

44
/* Automatically generated by
5-
CCodeGeneratorGlobalStructure VMMaker.oscog-mt.3184 uuid: 57b61827-3f1a-ab45-966e-7c5caaef28d7
5+
CCodeGeneratorGlobalStructure VMMaker.oscog-dtl.3185 uuid: 0e7f07b8-eed6-4362-b223-86c98594ddb9
66
from
7-
CoInterpreter VMMaker.oscog-mt.3184 uuid: 57b61827-3f1a-ab45-966e-7c5caaef28d7
7+
CoInterpreter VMMaker.oscog-dtl.3185 uuid: 0e7f07b8-eed6-4362-b223-86c98594ddb9
88
*/
9-
static char __buildInfo[] = "CoInterpreter VMMaker.oscog-mt.3184 uuid: 57b61827-3f1a-ab45-966e-7c5caaef28d7 " __DATE__ ;
9+
static char __buildInfo[] = "CoInterpreter VMMaker.oscog-dtl.3185 uuid: 0e7f07b8-eed6-4362-b223-86c98594ddb9 " __DATE__ ;
1010
char *__interpBuildInfo = __buildInfo;
1111

1212

@@ -2674,7 +2674,7 @@ sqInt debugCallbackInvokes;
26742674
sqInt debugCallbackReturns;
26752675
sqInt cannotDeferDisplayUpdates;
26762676
sqInt checkedPluginName;
2677-
const char *interpreterVersion = "Open Smalltalk Cog[Spur] VM [CoInterpreterPrimitives VMMaker.oscog-mt.3184]";
2677+
const char *interpreterVersion = "Open Smalltalk Cog[Spur] VM [CoInterpreterPrimitives VMMaker.oscog-dtl.3185]";
26782678
sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 40 */;
26792679
char expensiveAsserts = 0;
26802680
int (*showSurfaceFn)(sqIntptr_t, int, int, int, int);
@@ -52506,6 +52506,7 @@ primitiveIdentityHash(void)
5250652506
EXPORT(sqInt)
5250752507
primitiveImageFormatVersion(void)
5250852508
{ DECL_MAYBE_SQ_GLOBAL_STRUCT
52509+
unsigned int integerValue;
5250952510
usqInt newLargeInteger;
5251052511
usqInt newObj;
5251152512
usqInt numBytes;
@@ -52514,10 +52515,20 @@ primitiveImageFormatVersion(void)
5251452515
char *sp;
5251552516

5251652517
/* begin pop:thenPush: */
52518+
if (GIV(multipleBytecodeSetsActive)) {
52519+
integerValue = ((sqInt) (6521 /* imageFormatVersion */ | MultipleBytecodeSetsBitmask));
52520+
goto l6;
52521+
}
52522+
else {
52523+
/* begin imageFormatVersion */
52524+
integerValue = 6521;
52525+
goto l6;
52526+
}
52527+
l6: /* end imageFormatVersionForSnapshot */;
5251752528
/* begin maybeInlinePositive32BitIntegerFor: */
5251852529
assert(!((hasSixtyFourBitImmediates())));
52519-
if ((((unsigned int) 6521 /* imageFormatVersion */)) <= (MaxSmallInteger)) {
52520-
oop = (((usqInt)6521 /* imageFormatVersion */ << 1) | 1);
52530+
if ((((unsigned int) integerValue)) <= (MaxSmallInteger)) {
52531+
oop = ((integerValue << 1) | 1);
5252152532
goto l5;
5252252533
}
5252352534
/* begin eeInstantiateSmallClassIndex:format:numSlots: */
@@ -52552,7 +52563,7 @@ primitiveImageFormatVersion(void)
5255252563
/* Memory is 8 byte aligned in Spur, make sure that oversized bytes are set to zero */
5255352564
/* eem 4/28/2016 questionable; they should never be read */
5255452565
/* begin storeLong32:ofObject:withValue: */
52555-
long32Atput((newLargeInteger + BaseHeaderSize), SQ_SWAP_4_BYTES_IF_BIGENDIAN(6521 /* imageFormatVersion */));
52566+
long32Atput((newLargeInteger + BaseHeaderSize), SQ_SWAP_4_BYTES_IF_BIGENDIAN(integerValue));
5255652567
/* begin storeLong32:ofObject:withValue: */
5255752568
long32Atput((newLargeInteger + BaseHeaderSize) + (4), 0);
5255852569
oop = newLargeInteger;

src/spur32.cog/cointerp.c

Lines changed: 18 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
/* Automatically generated by
2-
CCodeGeneratorGlobalStructure VMMaker.oscog-mt.3184 uuid: 57b61827-3f1a-ab45-966e-7c5caaef28d7
2+
CCodeGeneratorGlobalStructure VMMaker.oscog-dtl.3185 uuid: 0e7f07b8-eed6-4362-b223-86c98594ddb9
33
from
4-
CoInterpreter VMMaker.oscog-mt.3184 uuid: 57b61827-3f1a-ab45-966e-7c5caaef28d7
4+
CoInterpreter VMMaker.oscog-dtl.3185 uuid: 0e7f07b8-eed6-4362-b223-86c98594ddb9
55
*/
6-
static char __buildInfo[] = "CoInterpreter VMMaker.oscog-mt.3184 uuid: 57b61827-3f1a-ab45-966e-7c5caaef28d7 " __DATE__ ;
6+
static char __buildInfo[] = "CoInterpreter VMMaker.oscog-dtl.3185 uuid: 0e7f07b8-eed6-4362-b223-86c98594ddb9 " __DATE__ ;
77
char *__interpBuildInfo = __buildInfo;
88

99

@@ -2646,7 +2646,7 @@ sqInt debugCallbackInvokes;
26462646
sqInt debugCallbackReturns;
26472647
sqInt cannotDeferDisplayUpdates;
26482648
sqInt checkedPluginName;
2649-
const char *interpreterVersion = "Open Smalltalk Cog[Spur] VM [CoInterpreterPrimitives VMMaker.oscog-mt.3184]";
2649+
const char *interpreterVersion = "Open Smalltalk Cog[Spur] VM [CoInterpreterPrimitives VMMaker.oscog-dtl.3185]";
26502650
sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 40 */;
26512651
char expensiveAsserts = 0;
26522652
int (*showSurfaceFn)(sqIntptr_t, int, int, int, int);
@@ -32609,6 +32609,7 @@ primitiveIdentityHash(void)
3260932609
EXPORT(sqInt)
3261032610
primitiveImageFormatVersion(void)
3261132611
{ DECL_MAYBE_SQ_GLOBAL_STRUCT
32612+
unsigned int integerValue;
3261232613
usqInt newLargeInteger;
3261332614
usqInt newObj;
3261432615
usqInt numBytes;
@@ -32617,10 +32618,20 @@ primitiveImageFormatVersion(void)
3261732618
char *sp;
3261832619

3261932620
/* begin pop:thenPush: */
32621+
if (GIV(multipleBytecodeSetsActive)) {
32622+
integerValue = ((sqInt) (6521 /* imageFormatVersion */ | MultipleBytecodeSetsBitmask));
32623+
goto l6;
32624+
}
32625+
else {
32626+
/* begin imageFormatVersion */
32627+
integerValue = 6521;
32628+
goto l6;
32629+
}
32630+
l6: /* end imageFormatVersionForSnapshot */;
3262032631
/* begin maybeInlinePositive32BitIntegerFor: */
3262132632
assert(!((hasSixtyFourBitImmediates())));
32622-
if ((((unsigned int) 6521 /* imageFormatVersion */)) <= (MaxSmallInteger)) {
32623-
oop = (((usqInt)6521 /* imageFormatVersion */ << 1) | 1);
32633+
if ((((unsigned int) integerValue)) <= (MaxSmallInteger)) {
32634+
oop = ((integerValue << 1) | 1);
3262432635
goto l5;
3262532636
}
3262632637
/* begin eeInstantiateSmallClassIndex:format:numSlots: */
@@ -32655,7 +32666,7 @@ primitiveImageFormatVersion(void)
3265532666
/* Memory is 8 byte aligned in Spur, make sure that oversized bytes are set to zero */
3265632667
/* eem 4/28/2016 questionable; they should never be read */
3265732668
/* begin storeLong32:ofObject:withValue: */
32658-
long32Atput((newLargeInteger + BaseHeaderSize), SQ_SWAP_4_BYTES_IF_BIGENDIAN(6521 /* imageFormatVersion */));
32669+
long32Atput((newLargeInteger + BaseHeaderSize), SQ_SWAP_4_BYTES_IF_BIGENDIAN(integerValue));
3265932670
/* begin storeLong32:ofObject:withValue: */
3266032671
long32Atput((newLargeInteger + BaseHeaderSize) + (4), 0);
3266132672
oop = newLargeInteger;

src/spur32.cog/cointerpmt.c

Lines changed: 18 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
/* Automatically generated by
2-
CCodeGeneratorGlobalStructure VMMaker.oscog-mt.3184 uuid: 57b61827-3f1a-ab45-966e-7c5caaef28d7
2+
CCodeGeneratorGlobalStructure VMMaker.oscog-dtl.3185 uuid: 0e7f07b8-eed6-4362-b223-86c98594ddb9
33
from
4-
CoInterpreterMT VMMaker.oscog-mt.3184 uuid: 57b61827-3f1a-ab45-966e-7c5caaef28d7
4+
CoInterpreterMT VMMaker.oscog-dtl.3185 uuid: 0e7f07b8-eed6-4362-b223-86c98594ddb9
55
*/
6-
static char __buildInfo[] = "CoInterpreterMT VMMaker.oscog-mt.3184 uuid: 57b61827-3f1a-ab45-966e-7c5caaef28d7 " __DATE__ ;
6+
static char __buildInfo[] = "CoInterpreterMT VMMaker.oscog-dtl.3185 uuid: 0e7f07b8-eed6-4362-b223-86c98594ddb9 " __DATE__ ;
77
char *__interpBuildInfo = __buildInfo;
88

99

@@ -2739,7 +2739,7 @@ sqInt debugCallbackInvokes;
27392739
sqInt debugCallbackReturns;
27402740
sqInt cannotDeferDisplayUpdates;
27412741
sqInt checkedPluginName;
2742-
const char *interpreterVersion = "Open Smalltalk Cog MT VM [CoInterpreterMT VMMaker.oscog-mt.3184]";
2742+
const char *interpreterVersion = "Open Smalltalk Cog MT VM [CoInterpreterMT VMMaker.oscog-dtl.3185]";
27432743
sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 40 */;
27442744
char expensiveAsserts = 0;
27452745
int (*showSurfaceFn)(sqIntptr_t, int, int, int, int);
@@ -35353,6 +35353,7 @@ primitiveIdentityHash(void)
3535335353
EXPORT(sqInt)
3535435354
primitiveImageFormatVersion(void)
3535535355
{ DECL_MAYBE_SQ_GLOBAL_STRUCT
35356+
unsigned int integerValue;
3535635357
usqInt newLargeInteger;
3535735358
usqInt newObj;
3535835359
usqInt numBytes;
@@ -35361,10 +35362,20 @@ primitiveImageFormatVersion(void)
3536135362
char *sp;
3536235363

3536335364
/* begin pop:thenPush: */
35365+
if (GIV(multipleBytecodeSetsActive)) {
35366+
integerValue = ((sqInt) (6521 /* imageFormatVersion */ | MultipleBytecodeSetsBitmask));
35367+
goto l6;
35368+
}
35369+
else {
35370+
/* begin imageFormatVersion */
35371+
integerValue = 6521;
35372+
goto l6;
35373+
}
35374+
l6: /* end imageFormatVersionForSnapshot */;
3536435375
/* begin maybeInlinePositive32BitIntegerFor: */
3536535376
assert(!((hasSixtyFourBitImmediates())));
35366-
if ((((unsigned int) 6521 /* imageFormatVersion */)) <= (MaxSmallInteger)) {
35367-
oop = (((usqInt)6521 /* imageFormatVersion */ << 1) | 1);
35377+
if ((((unsigned int) integerValue)) <= (MaxSmallInteger)) {
35378+
oop = ((integerValue << 1) | 1);
3536835379
goto l5;
3536935380
}
3537035381
/* begin eeInstantiateSmallClassIndex:format:numSlots: */
@@ -35399,7 +35410,7 @@ primitiveImageFormatVersion(void)
3539935410
/* Memory is 8 byte aligned in Spur, make sure that oversized bytes are set to zero */
3540035411
/* eem 4/28/2016 questionable; they should never be read */
3540135412
/* begin storeLong32:ofObject:withValue: */
35402-
long32Atput((newLargeInteger + BaseHeaderSize), SQ_SWAP_4_BYTES_IF_BIGENDIAN(6521 /* imageFormatVersion */));
35413+
long32Atput((newLargeInteger + BaseHeaderSize), SQ_SWAP_4_BYTES_IF_BIGENDIAN(integerValue));
3540335414
/* begin storeLong32:ofObject:withValue: */
3540435415
long32Atput((newLargeInteger + BaseHeaderSize) + (4), 0);
3540535416
oop = newLargeInteger;

src/spur32.cog/gcc3x-cointerp.c

Lines changed: 18 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,11 @@
22

33

44
/* Automatically generated by
5-
CCodeGeneratorGlobalStructure VMMaker.oscog-mt.3184 uuid: 57b61827-3f1a-ab45-966e-7c5caaef28d7
5+
CCodeGeneratorGlobalStructure VMMaker.oscog-dtl.3185 uuid: 0e7f07b8-eed6-4362-b223-86c98594ddb9
66
from
7-
CoInterpreter VMMaker.oscog-mt.3184 uuid: 57b61827-3f1a-ab45-966e-7c5caaef28d7
7+
CoInterpreter VMMaker.oscog-dtl.3185 uuid: 0e7f07b8-eed6-4362-b223-86c98594ddb9
88
*/
9-
static char __buildInfo[] = "CoInterpreter VMMaker.oscog-mt.3184 uuid: 57b61827-3f1a-ab45-966e-7c5caaef28d7 " __DATE__ ;
9+
static char __buildInfo[] = "CoInterpreter VMMaker.oscog-dtl.3185 uuid: 0e7f07b8-eed6-4362-b223-86c98594ddb9 " __DATE__ ;
1010
char *__interpBuildInfo = __buildInfo;
1111

1212

@@ -2649,7 +2649,7 @@ sqInt debugCallbackInvokes;
26492649
sqInt debugCallbackReturns;
26502650
sqInt cannotDeferDisplayUpdates;
26512651
sqInt checkedPluginName;
2652-
const char *interpreterVersion = "Open Smalltalk Cog[Spur] VM [CoInterpreterPrimitives VMMaker.oscog-mt.3184]";
2652+
const char *interpreterVersion = "Open Smalltalk Cog[Spur] VM [CoInterpreterPrimitives VMMaker.oscog-dtl.3185]";
26532653
sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 40 */;
26542654
char expensiveAsserts = 0;
26552655
int (*showSurfaceFn)(sqIntptr_t, int, int, int, int);
@@ -32618,6 +32618,7 @@ primitiveIdentityHash(void)
3261832618
EXPORT(sqInt)
3261932619
primitiveImageFormatVersion(void)
3262032620
{ DECL_MAYBE_SQ_GLOBAL_STRUCT
32621+
unsigned int integerValue;
3262132622
usqInt newLargeInteger;
3262232623
usqInt newObj;
3262332624
usqInt numBytes;
@@ -32626,10 +32627,20 @@ primitiveImageFormatVersion(void)
3262632627
char *sp;
3262732628

3262832629
/* begin pop:thenPush: */
32630+
if (GIV(multipleBytecodeSetsActive)) {
32631+
integerValue = ((sqInt) (6521 /* imageFormatVersion */ | MultipleBytecodeSetsBitmask));
32632+
goto l6;
32633+
}
32634+
else {
32635+
/* begin imageFormatVersion */
32636+
integerValue = 6521;
32637+
goto l6;
32638+
}
32639+
l6: /* end imageFormatVersionForSnapshot */;
3262932640
/* begin maybeInlinePositive32BitIntegerFor: */
3263032641
assert(!((hasSixtyFourBitImmediates())));
32631-
if ((((unsigned int) 6521 /* imageFormatVersion */)) <= (MaxSmallInteger)) {
32632-
oop = (((usqInt)6521 /* imageFormatVersion */ << 1) | 1);
32642+
if ((((unsigned int) integerValue)) <= (MaxSmallInteger)) {
32643+
oop = ((integerValue << 1) | 1);
3263332644
goto l5;
3263432645
}
3263532646
/* begin eeInstantiateSmallClassIndex:format:numSlots: */
@@ -32664,7 +32675,7 @@ primitiveImageFormatVersion(void)
3266432675
/* Memory is 8 byte aligned in Spur, make sure that oversized bytes are set to zero */
3266532676
/* eem 4/28/2016 questionable; they should never be read */
3266632677
/* begin storeLong32:ofObject:withValue: */
32667-
long32Atput((newLargeInteger + BaseHeaderSize), SQ_SWAP_4_BYTES_IF_BIGENDIAN(6521 /* imageFormatVersion */));
32678+
long32Atput((newLargeInteger + BaseHeaderSize), SQ_SWAP_4_BYTES_IF_BIGENDIAN(integerValue));
3266832679
/* begin storeLong32:ofObject:withValue: */
3266932680
long32Atput((newLargeInteger + BaseHeaderSize) + (4), 0);
3267032681
oop = newLargeInteger;

src/spur32.cog/gcc3x-cointerpmt.c

Lines changed: 18 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,11 @@
22

33

44
/* Automatically generated by
5-
CCodeGeneratorGlobalStructure VMMaker.oscog-mt.3184 uuid: 57b61827-3f1a-ab45-966e-7c5caaef28d7
5+
CCodeGeneratorGlobalStructure VMMaker.oscog-dtl.3185 uuid: 0e7f07b8-eed6-4362-b223-86c98594ddb9
66
from
7-
CoInterpreterMT VMMaker.oscog-mt.3184 uuid: 57b61827-3f1a-ab45-966e-7c5caaef28d7
7+
CoInterpreterMT VMMaker.oscog-dtl.3185 uuid: 0e7f07b8-eed6-4362-b223-86c98594ddb9
88
*/
9-
static char __buildInfo[] = "CoInterpreterMT VMMaker.oscog-mt.3184 uuid: 57b61827-3f1a-ab45-966e-7c5caaef28d7 " __DATE__ ;
9+
static char __buildInfo[] = "CoInterpreterMT VMMaker.oscog-dtl.3185 uuid: 0e7f07b8-eed6-4362-b223-86c98594ddb9 " __DATE__ ;
1010
char *__interpBuildInfo = __buildInfo;
1111

1212

@@ -2742,7 +2742,7 @@ sqInt debugCallbackInvokes;
27422742
sqInt debugCallbackReturns;
27432743
sqInt cannotDeferDisplayUpdates;
27442744
sqInt checkedPluginName;
2745-
const char *interpreterVersion = "Open Smalltalk Cog MT VM [CoInterpreterMT VMMaker.oscog-mt.3184]";
2745+
const char *interpreterVersion = "Open Smalltalk Cog MT VM [CoInterpreterMT VMMaker.oscog-dtl.3185]";
27462746
sqInt minBackwardJumpCountForCompile = MinBackwardJumpCountForCompile /* 40 */;
27472747
char expensiveAsserts = 0;
27482748
int (*showSurfaceFn)(sqIntptr_t, int, int, int, int);
@@ -35362,6 +35362,7 @@ primitiveIdentityHash(void)
3536235362
EXPORT(sqInt)
3536335363
primitiveImageFormatVersion(void)
3536435364
{ DECL_MAYBE_SQ_GLOBAL_STRUCT
35365+
unsigned int integerValue;
3536535366
usqInt newLargeInteger;
3536635367
usqInt newObj;
3536735368
usqInt numBytes;
@@ -35370,10 +35371,20 @@ primitiveImageFormatVersion(void)
3537035371
char *sp;
3537135372

3537235373
/* begin pop:thenPush: */
35374+
if (GIV(multipleBytecodeSetsActive)) {
35375+
integerValue = ((sqInt) (6521 /* imageFormatVersion */ | MultipleBytecodeSetsBitmask));
35376+
goto l6;
35377+
}
35378+
else {
35379+
/* begin imageFormatVersion */
35380+
integerValue = 6521;
35381+
goto l6;
35382+
}
35383+
l6: /* end imageFormatVersionForSnapshot */;
3537335384
/* begin maybeInlinePositive32BitIntegerFor: */
3537435385
assert(!((hasSixtyFourBitImmediates())));
35375-
if ((((unsigned int) 6521 /* imageFormatVersion */)) <= (MaxSmallInteger)) {
35376-
oop = (((usqInt)6521 /* imageFormatVersion */ << 1) | 1);
35386+
if ((((unsigned int) integerValue)) <= (MaxSmallInteger)) {
35387+
oop = ((integerValue << 1) | 1);
3537735388
goto l5;
3537835389
}
3537935390
/* begin eeInstantiateSmallClassIndex:format:numSlots: */
@@ -35408,7 +35419,7 @@ primitiveImageFormatVersion(void)
3540835419
/* Memory is 8 byte aligned in Spur, make sure that oversized bytes are set to zero */
3540935420
/* eem 4/28/2016 questionable; they should never be read */
3541035421
/* begin storeLong32:ofObject:withValue: */
35411-
long32Atput((newLargeInteger + BaseHeaderSize), SQ_SWAP_4_BYTES_IF_BIGENDIAN(6521 /* imageFormatVersion */));
35422+
long32Atput((newLargeInteger + BaseHeaderSize), SQ_SWAP_4_BYTES_IF_BIGENDIAN(integerValue));
3541235423
/* begin storeLong32:ofObject:withValue: */
3541335424
long32Atput((newLargeInteger + BaseHeaderSize) + (4), 0);
3541435425
oop = newLargeInteger;

0 commit comments

Comments
 (0)