Skip to content

Commit bb83bbd

Browse files
committed
CogVM source as per VMMaker.oscog-eem.3721
Cogit: The codeXXXAt:put: macros must cast their address argument to a non-void pointer (e.g. char *) to be able to add codeToDataDelta BitBltSimulation/Plugin: Provide a fallback to older code for rgbMul on 32-bits. clang 12 on Win32 32-bits fails to compile partitionedMul:with:nBits:wordBits: correctly, producing a purple background to all text in string display. Makefiles must define RGBMul32BitFallBack=1 to select the older code.
1 parent 0750af2 commit bb83bbd

25 files changed

Lines changed: 229 additions & 164 deletions

File tree

src/plugins/BitBltPlugin/BitBltPlugin.c

Lines changed: 70 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
/* Automatically generated by
2-
SmartSyntaxPluginCodeGenerator VMMaker.oscog-eem.3699 uuid: 2952dbcc-35c1-4c63-8bf1-bfac32f0e33d
3-
(Compiler-eem.526)
2+
SmartSyntaxPluginCodeGenerator VMMaker.oscog-eem.3721 uuid: f3895c70-5b57-4684-92f6-72aee920c70e
3+
(Compiler-eem.527)
44
from
5-
BitBltSimulation VMMaker.oscog-eem.3699 uuid: 2952dbcc-35c1-4c63-8bf1-bfac32f0e33d
5+
BitBltSimulation VMMaker.oscog-eem.3721 uuid: f3895c70-5b57-4684-92f6-72aee920c70e
66
*/
7-
static char __buildInfo[] = "BitBltSimulation VMMaker.oscog-eem.3699 uuid: 2952dbcc-35c1-4c63-8bf1-bfac32f0e33d " __DATE__ ;
7+
static char __buildInfo[] = "BitBltSimulation VMMaker.oscog-eem.3721 uuid: f3895c70-5b57-4684-92f6-72aee920c70e " __DATE__ ;
88

99

1010
#include "config.h"
@@ -132,6 +132,9 @@ static unsigned int partitionedAddtonBitscomponentMaskcarryOverflowMask(unsigned
132132
static unsigned int partitionedANDtonBitsnPartitions(unsigned int word1, unsigned int word2, sqInt nBits, sqInt nParts);
133133
static unsigned int partitionedMaxwithnBitsnPartitions(unsigned int word1, unsigned int word2, sqInt nBits, sqInt nParts);
134134
static unsigned int partitionedMinwithnBitsnPartitions(unsigned int word1, unsigned int word2, sqInt nBits, sqInt nParts);
135+
#if RGBMul32BitFallBack
136+
static unsigned int partitionedMulwithnBitsnPartitions(unsigned int word1, unsigned int word2, sqInt nBits, sqInt nParts);
137+
#endif /* RGBMul32BitFallBack */
135138
static unsigned int partitionedMulwithnBitswordBits(unsigned int word1, unsigned int word2, sqInt nBits, sqInt wordBits);
136139
static unsigned int partitionedSubfromnBitsnPartitions(unsigned int word1, unsigned int word2, sqInt nBits, sqInt nParts);
137140
static unsigned int pixClearwith(unsigned int sourceWord, unsigned int destinationWord);
@@ -346,7 +349,7 @@ static int maskTable[33] = {
346349
0, 1, 3, 0, 15, 31, 0, 0, 255, 0, 0, 0, 0, 0, 0, 0, 65535,
347350
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1
348351
};
349-
static const char *moduleName = "BitBltPlugin VMMaker.oscog-eem.3699 " INT_EXT;
352+
static const char *moduleName = "BitBltPlugin VMMaker.oscog-eem.3721 " INT_EXT;
350353
static sqInt noHalftone;
351354
static sqInt noSource;
352355
static sqInt numGCsOnInvocation;
@@ -4065,6 +4068,52 @@ partitionedMinwithnBitsnPartitions(unsigned int word1, unsigned int word2, sqInt
40654068
}
40664069

40674070

4071+
/* Multiply word1 with word2 as nParts partitions of nBits each.
4072+
This is useful for packed pixels, or packed colors.
4073+
Bug in loop version when non-white background */
4074+
/* In C, integer multiplication might answer a wrong value if the unsigned
4075+
values are declared as signed.
4076+
This problem does not affect this method, because the most significant bit
4077+
(i.e. the sign bit) will
4078+
always be zero (jmv)
4079+
*/
4080+
4081+
/* BitBltSimulation>>#partitionedMul:with:nBits:nPartitions: */
4082+
#if RGBMul32BitFallBack
4083+
static unsigned int
4084+
partitionedMulwithnBitsnPartitions(unsigned int word1, unsigned int word2, sqInt nBits, sqInt nParts)
4085+
{
4086+
unsigned int dMask;
4087+
unsigned int product;
4088+
unsigned int result;
4089+
unsigned int sMask;
4090+
4091+
/* partition mask starts at the right */
4092+
sMask = maskTable[nBits];
4093+
dMask = (((usqInt)(sMask) << nBits));
4094+
4095+
/* optimized first step */
4096+
result = ((usqInt)((((((word1 & sMask) + 1) * ((word2 & sMask) + 1)) - 1) & dMask))) >> nBits;
4097+
if (nParts == 1) {
4098+
return result;
4099+
}
4100+
product = (((((((usqInt)(word1)) >> nBits) & sMask) + 1) * (((((usqInt)(word2)) >> nBits) & sMask) + 1)) - 1) & dMask;
4101+
result = result | product;
4102+
if (nParts == 2) {
4103+
return result;
4104+
}
4105+
product = (((((((usqInt)(word1)) >> (2 * nBits)) & sMask) + 1) * (((((usqInt)(word2)) >> (2 * nBits)) & sMask) + 1)) - 1) & dMask;
4106+
result = result | ((((usqInt)(product) << nBits)));
4107+
if (nParts == 3) {
4108+
return result;
4109+
}
4110+
product = (((((((usqInt)(word1)) >> (3 * nBits)) & sMask) + 1) * (((((usqInt)(word2)) >> (3 * nBits)) & sMask) + 1)) - 1) & dMask;
4111+
result = result | ((((usqInt)(product) << (2 * nBits))));
4112+
return result;
4113+
}
4114+
#endif /* RGBMul32BitFallBack */
4115+
4116+
40684117
/* Multiply each channel of nBits in word1 and word2.
40694118
We assume that for each channel of nBits, we multiply ratios in interval
40704119
[0..1], scaled by (1 << nBits - 1).
@@ -5877,6 +5926,21 @@ rgbMinwith(unsigned int sourceWord, unsigned int destinationWord)
58775926
static unsigned int
58785927
rgbMulwith(unsigned int sourceWord, unsigned int destinationWord)
58795928
{
5929+
5930+
# if RGBMul32BitFallBack
5931+
if (destDepth < 16) {
5932+
/* Mul each pixel separately */
5933+
return partitionedMulwithnBitsnPartitions(sourceWord, destinationWord, destDepth, destPPW);
5934+
}
5935+
if (destDepth == 16) {
5936+
/* Mul RGB components of each pixel separately */
5937+
return (partitionedMulwithnBitsnPartitions(sourceWord, destinationWord, 5, 3)) + ((((usqInt)((partitionedMulwithnBitsnPartitions(((usqInt)(sourceWord)) >> 16, ((usqInt)(destinationWord)) >> 16, 5, 3))) << 16)));
5938+
}
5939+
else {
5940+
/* Mul RGBA components of the pixel separately */
5941+
return partitionedMulwithnBitsnPartitions(sourceWord, destinationWord, 8, 4);
5942+
}
5943+
# else // RGBMul32BitFallBack
58805944
if (destDepth < 16) {
58815945
/* Mul each pixel separately */
58825946
if (destDepth == 1) {
@@ -5892,6 +5956,7 @@ rgbMulwith(unsigned int sourceWord, unsigned int destinationWord)
58925956
/* Mul RGBA components of the pixel separately */
58935957
return partitionedMulwithnBitswordBits(sourceWord, destinationWord, 8, 32);
58945958
}
5959+
# endif // RGBMul32BitFallBack
58955960
}
58965961

58975962
/* BitBltSimulation>>#rgbSub:with: */

src/spur32.cog.lowcode/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.3719 uuid: f4458ee4-33dc-4863-bb54-db8205fa6cf5
2+
CCodeGenerator VMMaker.oscog-eem.3721 uuid: f3895c70-5b57-4684-92f6-72aee920c70e
33
(* Cog-eem.507, Compiler-eem.527)
44
*/
55

src/spur32.cog.lowcode/cogitARMv5.c

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
/* Automatically generated by
2-
CCodeGenerator VMMaker.oscog-eem.3719 uuid: f4458ee4-33dc-4863-bb54-db8205fa6cf5
2+
CCodeGenerator VMMaker.oscog-eem.3721 uuid: f3895c70-5b57-4684-92f6-72aee920c70e
33
(* Cog-eem.507, Compiler-eem.527)
44
from
5-
StackToRegisterMappingCogit VMMaker.oscog-eem.3719 uuid: f4458ee4-33dc-4863-bb54-db8205fa6cf5
5+
StackToRegisterMappingCogit VMMaker.oscog-eem.3721 uuid: f3895c70-5b57-4684-92f6-72aee920c70e
66
*/
7-
static char __buildInfo[] = "StackToRegisterMappingCogit VMMaker.oscog-eem.3719 uuid: f4458ee4-33dc-4863-bb54-db8205fa6cf5 " __DATE__ ;
7+
static char __buildInfo[] = "StackToRegisterMappingCogit VMMaker.oscog-eem.3721 uuid: f3895c70-5b57-4684-92f6-72aee920c70e " __DATE__ ;
88
char *__cogitBuildInfo = __buildInfo;
99

1010

@@ -2783,10 +2783,10 @@ sqInt traceStores;
27832783
#define ceCannotResumePC() ((usqInt)ceCannotResumeTrampoline)
27842784
#define ceCheckForInterruptTrampoline() ceCheckForInterruptTrampoline
27852785
#define ceReturnToInterpreterPC() ((usqInt)ceReturnToInterpreterTrampoline)
2786-
#define codeByteAtput(address,value) byteAtput((address) + codeToDataDelta, value)
2787-
#define codeLong32Atput(address,value) long32Atput((address) + codeToDataDelta, value)
2788-
#define codeLong64Atput(address,value) long64Atput((address) + codeToDataDelta, value)
2789-
#define codeLongAtput(address,value) longAtput((address) + codeToDataDelta, value)
2786+
#define codeByteAtput(address,value) byteAtput((char *)(address) + codeToDataDelta, value)
2787+
#define codeLong32Atput(address,value) long32Atput((char *)(address) + codeToDataDelta, value)
2788+
#define codeLong64Atput(address,value) long64Atput((char *)(address) + codeToDataDelta, value)
2789+
#define codeLongAtput(address,value) longAtput((char *)(address) + codeToDataDelta, value)
27902790
#define codeMemcpy(dest,src,bytes) memcpy(dest,src,bytes)
27912791
#define codeMemmove(dest,src,bytes) memmove((char *)(dest)+codeToDataDelta,src,bytes)
27922792
#define cr() putchar('\n')

src/spur32.cog.lowcode/cogitIA32.c

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
/* Automatically generated by
2-
CCodeGenerator VMMaker.oscog-eem.3719 uuid: f4458ee4-33dc-4863-bb54-db8205fa6cf5
2+
CCodeGenerator VMMaker.oscog-eem.3721 uuid: f3895c70-5b57-4684-92f6-72aee920c70e
33
(* Cog-eem.507, Compiler-eem.527)
44
from
5-
StackToRegisterMappingCogit VMMaker.oscog-eem.3719 uuid: f4458ee4-33dc-4863-bb54-db8205fa6cf5
5+
StackToRegisterMappingCogit VMMaker.oscog-eem.3721 uuid: f3895c70-5b57-4684-92f6-72aee920c70e
66
*/
7-
static char __buildInfo[] = "StackToRegisterMappingCogit VMMaker.oscog-eem.3719 uuid: f4458ee4-33dc-4863-bb54-db8205fa6cf5 " __DATE__ ;
7+
static char __buildInfo[] = "StackToRegisterMappingCogit VMMaker.oscog-eem.3721 uuid: f3895c70-5b57-4684-92f6-72aee920c70e " __DATE__ ;
88
char *__cogitBuildInfo = __buildInfo;
99

1010

@@ -977,7 +977,7 @@ static sqInt genPrimitiveStringAtPut(void);
977977
static NoDbgRegParms sqInt genRemoveSmallIntegerTagsInScratchReg(sqInt scratchReg);
978978
static NoDbgRegParms sqInt genShiftAwaySmallIntegerTagsInScratchReg(sqInt scratchReg);
979979
static NoDbgRegParms sqInt getLiteralCountOfplusOneinBytesintoscratch(sqInt methodReg, sqInt plusOne, sqInt inBytes, sqInt litCountReg, sqInt scratchReg);
980-
static NoDbgRegParms sqInt inlineCacheTagForInstance(sqInt oop);
980+
static NoDbgRegParms usqInt inlineCacheTagForInstance(sqInt oop);
981981
static NoDbgRegParms AbstractInstruction * jumpNotSmallIntegerUnsignedValueInRegister(sqInt reg);
982982
static NoDbgRegParms sqInt markAndTraceCacheTagLiteralinatpc(sqInt literal, CogMethod *cogMethodOrNil, usqInt address);
983983
static sqInt numSmallIntegerBits(void);
@@ -2714,10 +2714,10 @@ sqInt traceStores;
27142714
#define ceCannotResumePC() ((usqInt)ceCannotResumeTrampoline)
27152715
#define ceCheckForInterruptTrampoline() ceCheckForInterruptTrampoline
27162716
#define ceReturnToInterpreterPC() ((usqInt)ceReturnToInterpreterTrampoline)
2717-
#define codeByteAtput(address,value) byteAtput((address) + codeToDataDelta, value)
2718-
#define codeLong32Atput(address,value) long32Atput((address) + codeToDataDelta, value)
2719-
#define codeLong64Atput(address,value) long64Atput((address) + codeToDataDelta, value)
2720-
#define codeLongAtput(address,value) longAtput((address) + codeToDataDelta, value)
2717+
#define codeByteAtput(address,value) byteAtput((char *)(address) + codeToDataDelta, value)
2718+
#define codeLong32Atput(address,value) long32Atput((char *)(address) + codeToDataDelta, value)
2719+
#define codeLong64Atput(address,value) long64Atput((char *)(address) + codeToDataDelta, value)
2720+
#define codeLongAtput(address,value) longAtput((char *)(address) + codeToDataDelta, value)
27212721
#define codeMemcpy(dest,src,bytes) memcpy(dest,src,bytes)
27222722
#define codeMemmove(dest,src,bytes) memmove((char *)(dest)+codeToDataDelta,src,bytes)
27232723
#define cr() putchar('\n')
@@ -8212,7 +8212,7 @@ callCogCodePopReceiverAndClassRegs(void)
82128212
static NoDbgRegParms sqInt
82138213
ceCPICMissreceiver(CogMethod *cPIC, sqInt receiver)
82148214
{
8215-
sqInt cacheTag;
8215+
usqInt cacheTag;
82168216
int errorSelectorOrNil;
82178217
sqInt methodOrSelectorIndex;
82188218
sqInt newTargetMethodOrNil;
@@ -8345,7 +8345,7 @@ ceMalloc(size_t size)
83458345
static NoDbgRegParms sqInt
83468346
ceSICMiss(sqInt receiver)
83478347
{
8348-
sqInt cacheTag;
8348+
usqInt cacheTag;
83498349
int errorSelectorOrNil;
83508350
sqInt extent;
83518351
usqInt innerReturn;
@@ -13879,7 +13879,7 @@ void
1387913879
linkSendAtintooffsetreceiver(sqInt callSiteReturnAddress, CogMethod *sendingMethod, CogMethod *targetMethod, sqInt theEntryOffset, sqInt receiver)
1388013880
{
1388113881
sqInt extent;
13882-
sqInt inlineCacheTag;
13882+
usqInt inlineCacheTag;
1388313883

1388413884
assert((theEntryOffset == cmEntryOffset)
1388513885
|| (theEntryOffset == cmNoCheckEntryOffset));
@@ -22751,7 +22751,7 @@ getLiteralCountOfplusOneinBytesintoscratch(sqInt methodReg, sqInt plusOne, sqInt
2275122751
c.f. getInlineCacheClassTagFrom:into: & inlineCacheTagForClass: */
2275222752

2275322753
/* CogObjectRepresentationFor32BitSpur>>#inlineCacheTagForInstance: */
22754-
static NoDbgRegParms sqInt
22754+
static NoDbgRegParms usqInt
2275522755
inlineCacheTagForInstance(sqInt oop)
2275622756
{
2275722757
return (isImmediate(oop)

src/spur32.cog/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.3719 uuid: f4458ee4-33dc-4863-bb54-db8205fa6cf5
2+
CCodeGenerator VMMaker.oscog-eem.3721 uuid: f3895c70-5b57-4684-92f6-72aee920c70e
33
(* Cog-eem.507, Compiler-eem.527)
44
*/
55

src/spur32.cog/cogitARMv5.c

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
/* Automatically generated by
2-
CCodeGenerator VMMaker.oscog-eem.3719 uuid: f4458ee4-33dc-4863-bb54-db8205fa6cf5
2+
CCodeGenerator VMMaker.oscog-eem.3721 uuid: f3895c70-5b57-4684-92f6-72aee920c70e
33
(* Cog-eem.507, Compiler-eem.527)
44
from
5-
StackToRegisterMappingCogit VMMaker.oscog-eem.3719 uuid: f4458ee4-33dc-4863-bb54-db8205fa6cf5
5+
StackToRegisterMappingCogit VMMaker.oscog-eem.3721 uuid: f3895c70-5b57-4684-92f6-72aee920c70e
66
*/
7-
static char __buildInfo[] = "StackToRegisterMappingCogit VMMaker.oscog-eem.3719 uuid: f4458ee4-33dc-4863-bb54-db8205fa6cf5 " __DATE__ ;
7+
static char __buildInfo[] = "StackToRegisterMappingCogit VMMaker.oscog-eem.3721 uuid: f3895c70-5b57-4684-92f6-72aee920c70e " __DATE__ ;
88
char *__cogitBuildInfo = __buildInfo;
99

1010

@@ -2594,10 +2594,10 @@ sqInt traceStores;
25942594
#define ceCannotResumePC() ((usqInt)ceCannotResumeTrampoline)
25952595
#define ceCheckForInterruptTrampoline() ceCheckForInterruptTrampoline
25962596
#define ceReturnToInterpreterPC() ((usqInt)ceReturnToInterpreterTrampoline)
2597-
#define codeByteAtput(address,value) byteAtput((address) + codeToDataDelta, value)
2598-
#define codeLong32Atput(address,value) long32Atput((address) + codeToDataDelta, value)
2599-
#define codeLong64Atput(address,value) long64Atput((address) + codeToDataDelta, value)
2600-
#define codeLongAtput(address,value) longAtput((address) + codeToDataDelta, value)
2597+
#define codeByteAtput(address,value) byteAtput((char *)(address) + codeToDataDelta, value)
2598+
#define codeLong32Atput(address,value) long32Atput((char *)(address) + codeToDataDelta, value)
2599+
#define codeLong64Atput(address,value) long64Atput((char *)(address) + codeToDataDelta, value)
2600+
#define codeLongAtput(address,value) longAtput((char *)(address) + codeToDataDelta, value)
26012601
#define codeMemcpy(dest,src,bytes) memcpy(dest,src,bytes)
26022602
#define codeMemmove(dest,src,bytes) memmove((char *)(dest)+codeToDataDelta,src,bytes)
26032603
#define cr() putchar('\n')

src/spur32.cog/cogitIA32.c

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
/* Automatically generated by
2-
CCodeGenerator VMMaker.oscog-eem.3719 uuid: f4458ee4-33dc-4863-bb54-db8205fa6cf5
2+
CCodeGenerator VMMaker.oscog-eem.3721 uuid: f3895c70-5b57-4684-92f6-72aee920c70e
33
(* Cog-eem.507, Compiler-eem.527)
44
from
5-
StackToRegisterMappingCogit VMMaker.oscog-eem.3719 uuid: f4458ee4-33dc-4863-bb54-db8205fa6cf5
5+
StackToRegisterMappingCogit VMMaker.oscog-eem.3721 uuid: f3895c70-5b57-4684-92f6-72aee920c70e
66
*/
7-
static char __buildInfo[] = "StackToRegisterMappingCogit VMMaker.oscog-eem.3719 uuid: f4458ee4-33dc-4863-bb54-db8205fa6cf5 " __DATE__ ;
7+
static char __buildInfo[] = "StackToRegisterMappingCogit VMMaker.oscog-eem.3721 uuid: f3895c70-5b57-4684-92f6-72aee920c70e " __DATE__ ;
88
char *__cogitBuildInfo = __buildInfo;
99

1010

@@ -2550,10 +2550,10 @@ sqInt traceStores;
25502550
#define ceCannotResumePC() ((usqInt)ceCannotResumeTrampoline)
25512551
#define ceCheckForInterruptTrampoline() ceCheckForInterruptTrampoline
25522552
#define ceReturnToInterpreterPC() ((usqInt)ceReturnToInterpreterTrampoline)
2553-
#define codeByteAtput(address,value) byteAtput((address) + codeToDataDelta, value)
2554-
#define codeLong32Atput(address,value) long32Atput((address) + codeToDataDelta, value)
2555-
#define codeLong64Atput(address,value) long64Atput((address) + codeToDataDelta, value)
2556-
#define codeLongAtput(address,value) longAtput((address) + codeToDataDelta, value)
2553+
#define codeByteAtput(address,value) byteAtput((char *)(address) + codeToDataDelta, value)
2554+
#define codeLong32Atput(address,value) long32Atput((char *)(address) + codeToDataDelta, value)
2555+
#define codeLong64Atput(address,value) long64Atput((char *)(address) + codeToDataDelta, value)
2556+
#define codeLongAtput(address,value) longAtput((char *)(address) + codeToDataDelta, value)
25572557
#define codeMemcpy(dest,src,bytes) memcpy(dest,src,bytes)
25582558
#define codeMemmove(dest,src,bytes) memmove((char *)(dest)+codeToDataDelta,src,bytes)
25592559
#define cr() putchar('\n')

src/spur32.sista/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.3719 uuid: f4458ee4-33dc-4863-bb54-db8205fa6cf5
2+
CCodeGenerator VMMaker.oscog-eem.3721 uuid: f3895c70-5b57-4684-92f6-72aee920c70e
33
(* Cog-eem.507, Compiler-eem.527)
44
*/
55

src/spur32.sista/cogitARMv5.c

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
/* Automatically generated by
2-
CCodeGenerator VMMaker.oscog-eem.3719 uuid: f4458ee4-33dc-4863-bb54-db8205fa6cf5
2+
CCodeGenerator VMMaker.oscog-eem.3721 uuid: f3895c70-5b57-4684-92f6-72aee920c70e
33
(* Cog-eem.507, Compiler-eem.527)
44
from
5-
SistaCogit VMMaker.oscog-eem.3719 uuid: f4458ee4-33dc-4863-bb54-db8205fa6cf5
5+
SistaCogit VMMaker.oscog-eem.3721 uuid: f3895c70-5b57-4684-92f6-72aee920c70e
66
*/
7-
static char __buildInfo[] = "SistaCogit VMMaker.oscog-eem.3719 uuid: f4458ee4-33dc-4863-bb54-db8205fa6cf5 " __DATE__ ;
7+
static char __buildInfo[] = "SistaCogit VMMaker.oscog-eem.3721 uuid: f3895c70-5b57-4684-92f6-72aee920c70e " __DATE__ ;
88
char *__cogitBuildInfo = __buildInfo;
99

1010

@@ -2685,10 +2685,10 @@ sqInt traceStores;
26852685
#define ceCannotResumePC() ((usqInt)ceCannotResumeTrampoline)
26862686
#define ceCheckForInterruptTrampoline() ceCheckForInterruptTrampoline
26872687
#define ceReturnToInterpreterPC() ((usqInt)ceReturnToInterpreterTrampoline)
2688-
#define codeByteAtput(address,value) byteAtput((address) + codeToDataDelta, value)
2689-
#define codeLong32Atput(address,value) long32Atput((address) + codeToDataDelta, value)
2690-
#define codeLong64Atput(address,value) long64Atput((address) + codeToDataDelta, value)
2691-
#define codeLongAtput(address,value) longAtput((address) + codeToDataDelta, value)
2688+
#define codeByteAtput(address,value) byteAtput((char *)(address) + codeToDataDelta, value)
2689+
#define codeLong32Atput(address,value) long32Atput((char *)(address) + codeToDataDelta, value)
2690+
#define codeLong64Atput(address,value) long64Atput((char *)(address) + codeToDataDelta, value)
2691+
#define codeLongAtput(address,value) longAtput((char *)(address) + codeToDataDelta, value)
26922692
#define codeMemcpy(dest,src,bytes) memcpy(dest,src,bytes)
26932693
#define codeMemmove(dest,src,bytes) memmove((char *)(dest)+codeToDataDelta,src,bytes)
26942694
#define cr() putchar('\n')
@@ -33052,7 +33052,7 @@ genBinaryInlineComparisonopFalsedestReg(sqInt opTrue, sqInt opFalse, sqInt destR
3305233052
AbstractInstruction *jump;
3305333053
void *jumpTarget;
3305433054
sqInt nExts;
33055-
int nextPC;
33055+
sqInt nextPC;
3305633056
sqInt nextPCSqInt;
3305733057
sqInt postBranchPC;
3305833058
sqInt postBranchPCSqInt;
@@ -33787,7 +33787,7 @@ genByteEqualsInlinePrimitiveResultreturnReg(AbstractInstruction *jmp, sqInt reg)
3378733787
void *jumpTarget;
3378833788
AbstractInstruction *localJump;
3378933789
sqInt nExts;
33790-
int nextPC;
33790+
sqInt nextPC;
3379133791
sqInt nextPCSqInt;
3379233792
sqInt postBranchPC;
3379333793
sqInt postBranchPCSqInt;

0 commit comments

Comments
 (0)