Revision: 3740 Author: eliot Date: 2016-06-08 11:21:49 -0700 (Wed, 08 Jun 2016) Log Message: ----------- CogVM source as per VMMaker.oscog-eem.1886 Slang: Fix type inferrence for the 64-bit VM and some other cases after the bug fix in VMMaker.oscog-eem.1883 uncovers bugs in existing code. Add ImmX11Plugin to the linux squeak builds. Modified Paths: -------------- branches/Cog/build.linux32ARM/squeak.cog.spur/plugins.ext branches/Cog/build.linux32ARM/squeak.stack.spur/plugins.ext branches/Cog/build.linux32ARM/squeak.stack.v3/plugins.ext branches/Cog/build.linux32x86/squeak.cog.spur/plugins.ext branches/Cog/build.linux32x86/squeak.cog.spur.immutability/plugins.ext branches/Cog/build.linux32x86/squeak.cog.v3/plugins.ext branches/Cog/build.linux32x86/squeak.sista.spur/plugins.ext branches/Cog/build.linux32x86/squeak.stack.spur/plugins.ext branches/Cog/build.linux32x86/squeak.stack.v3/plugins.ext branches/Cog/build.linux64x64/squeak.cog.spur/plugins.ext branches/Cog/build.linux64x64/squeak.cog.spur.immutability/plugins.ext branches/Cog/build.linux64x64/squeak.stack.spur/plugins.ext branches/Cog/nsspur64src/vm/cogit.h branches/Cog/nsspur64src/vm/cogitX64.c branches/Cog/nsspur64src/vm/cointerp.c branches/Cog/nsspur64src/vm/cointerp.h branches/Cog/nsspur64src/vm/gcc3x-cointerp.c branches/Cog/nsspursrc/vm/cogit.h branches/Cog/nsspursrc/vm/cogitARMv5.c branches/Cog/nsspursrc/vm/cogitIA32.c branches/Cog/nsspursrc/vm/cogitMIPSEL.c branches/Cog/nsspursrc/vm/cointerp.c branches/Cog/nsspursrc/vm/cointerp.h branches/Cog/nsspursrc/vm/gcc3x-cointerp.c branches/Cog/nsspurstack64src/vm/gcc3x-interp.c branches/Cog/nsspurstack64src/vm/interp.c branches/Cog/nsspurstacksrc/vm/gcc3x-interp.c branches/Cog/nsspurstacksrc/vm/interp.c branches/Cog/spur64src/vm/cogit.h branches/Cog/spur64src/vm/cogitX64.c branches/Cog/spur64src/vm/cointerp.c branches/Cog/spur64src/vm/cointerp.h branches/Cog/spur64src/vm/gcc3x-cointerp.c branches/Cog/spursistasrc/vm/cogit.h branches/Cog/spursistasrc/vm/cogitARMv5.c branches/Cog/spursistasrc/vm/cogitIA32.c branches/Cog/spursistasrc/vm/cogitMIPSEL.c branches/Cog/spursistasrc/vm/cointerp.c branches/Cog/spursistasrc/vm/cointerp.h branches/Cog/spursistasrc/vm/gcc3x-cointerp.c branches/Cog/spursrc/vm/cogit.h branches/Cog/spursrc/vm/cogitARMv5.c branches/Cog/spursrc/vm/cogitIA32.c branches/Cog/spursrc/vm/cogitMIPSEL.c branches/Cog/spursrc/vm/cointerp.c branches/Cog/spursrc/vm/cointerp.h branches/Cog/spursrc/vm/gcc3x-cointerp.c branches/Cog/spurstack64src/vm/gcc3x-interp.c branches/Cog/spurstack64src/vm/interp.c branches/Cog/spurstacksrc/vm/gcc3x-interp.c branches/Cog/spurstacksrc/vm/interp.c branches/Cog/src/plugins/B2DPlugin/B2DPlugin.c branches/Cog/src/plugins/BitBltPlugin/BitBltPlugin.c branches/Cog/src/plugins/DSAPrims/DSAPrims.c branches/Cog/src/plugins/FFTPlugin/FFTPlugin.c branches/Cog/src/plugins/FloatMathPlugin/FloatMathPlugin.c branches/Cog/src/plugins/GeniePlugin/GeniePlugin.c branches/Cog/src/plugins/JPEGReaderPlugin/JPEGReaderPlugin.c branches/Cog/src/plugins/LargeIntegers/LargeIntegers.c branches/Cog/src/plugins/MiscPrimitivePlugin/MiscPrimitivePlugin.c branches/Cog/src/plugins/SqueakFFIPrims/X64SysVFFIPlugin.c branches/Cog/src/plugins/ZipPlugin/ZipPlugin.c branches/Cog/src/vm/cogit.h branches/Cog/src/vm/cogitARMv5.c branches/Cog/src/vm/cogitIA32.c branches/Cog/src/vm/cogitMIPSEL.c branches/Cog/src/vm/cointerp.c branches/Cog/src/vm/cointerp.h branches/Cog/src/vm/cointerpmt.c branches/Cog/src/vm/cointerpmt.h branches/Cog/src/vm/gcc3x-cointerp.c branches/Cog/src/vm/gcc3x-cointerpmt.c branches/Cog/stacksrc/vm/gcc3x-interp.c branches/Cog/stacksrc/vm/interp.c Property Changed: ---------------- branches/Cog/platforms/Cross/vm/sqSCCSVersion.h Modified: branches/Cog/build.linux32ARM/squeak.cog.spur/plugins.ext =================================================================== --- branches/Cog/build.linux32ARM/squeak.cog.spur/plugins.ext 2016-06-07 22:35:56 UTC (rev 3739) +++ branches/Cog/build.linux32ARM/squeak.cog.spur/plugins.ext 2016-06-08 18:21:49 UTC (rev 3740) @@ -11,4 +11,5 @@ UnixOSProcessPlugin \ UUIDPlugin \ WeDoPlugin \ +ImmX11Plugin \ XDisplayControlPlugin Modified: branches/Cog/build.linux32ARM/squeak.stack.spur/plugins.ext =================================================================== --- branches/Cog/build.linux32ARM/squeak.stack.spur/plugins.ext 2016-06-07 22:35:56 UTC (rev 3739) +++ branches/Cog/build.linux32ARM/squeak.stack.spur/plugins.ext 2016-06-08 18:21:49 UTC (rev 3740) @@ -6,4 +6,5 @@ UnicodePlugin \ UnixOSProcessPlugin \ UUIDPlugin \ +ImmX11Plugin \ XDisplayControlPlugin Modified: branches/Cog/build.linux32ARM/squeak.stack.v3/plugins.ext =================================================================== --- branches/Cog/build.linux32ARM/squeak.stack.v3/plugins.ext 2016-06-07 22:35:56 UTC (rev 3739) +++ branches/Cog/build.linux32ARM/squeak.stack.v3/plugins.ext 2016-06-08 18:21:49 UTC (rev 3740) @@ -6,4 +6,5 @@ UnicodePlugin \ UnixOSProcessPlugin \ UUIDPlugin \ +ImmX11Plugin \ XDisplayControlPlugin Modified: branches/Cog/build.linux32x86/squeak.cog.spur/plugins.ext =================================================================== --- branches/Cog/build.linux32x86/squeak.cog.spur/plugins.ext 2016-06-07 22:35:56 UTC (rev 3739) +++ branches/Cog/build.linux32x86/squeak.cog.spur/plugins.ext 2016-06-08 18:21:49 UTC (rev 3740) @@ -10,4 +10,5 @@ UnicodePlugin \ UnixOSProcessPlugin \ UUIDPlugin \ +ImmX11Plugin \ XDisplayControlPlugin Modified: branches/Cog/build.linux32x86/squeak.cog.spur.immutability/plugins.ext =================================================================== --- branches/Cog/build.linux32x86/squeak.cog.spur.immutability/plugins.ext 2016-06-07 22:35:56 UTC (rev 3739) +++ branches/Cog/build.linux32x86/squeak.cog.spur.immutability/plugins.ext 2016-06-08 18:21:49 UTC (rev 3740) @@ -10,4 +10,5 @@ UnicodePlugin \ UnixOSProcessPlugin \ UUIDPlugin \ +ImmX11Plugin \ XDisplayControlPlugin Modified: branches/Cog/build.linux32x86/squeak.cog.v3/plugins.ext =================================================================== --- branches/Cog/build.linux32x86/squeak.cog.v3/plugins.ext 2016-06-07 22:35:56 UTC (rev 3739) +++ branches/Cog/build.linux32x86/squeak.cog.v3/plugins.ext 2016-06-08 18:21:49 UTC (rev 3740) @@ -8,4 +8,5 @@ UnicodePlugin \ UnixOSProcessPlugin \ UUIDPlugin \ +ImmX11Plugin \ XDisplayControlPlugin Modified: branches/Cog/build.linux32x86/squeak.sista.spur/plugins.ext =================================================================== --- branches/Cog/build.linux32x86/squeak.sista.spur/plugins.ext 2016-06-07 22:35:56 UTC (rev 3739) +++ branches/Cog/build.linux32x86/squeak.sista.spur/plugins.ext 2016-06-08 18:21:49 UTC (rev 3740) @@ -8,4 +8,5 @@ UnicodePlugin \ UnixOSProcessPlugin \ UUIDPlugin \ +ImmX11Plugin \ XDisplayControlPlugin Modified: branches/Cog/build.linux32x86/squeak.stack.spur/plugins.ext =================================================================== --- branches/Cog/build.linux32x86/squeak.stack.spur/plugins.ext 2016-06-07 22:35:56 UTC (rev 3739) +++ branches/Cog/build.linux32x86/squeak.stack.spur/plugins.ext 2016-06-08 18:21:49 UTC (rev 3740) @@ -7,4 +7,5 @@ UnicodePlugin \ UnixOSProcessPlugin \ UUIDPlugin \ +ImmX11Plugin \ XDisplayControlPlugin Modified: branches/Cog/build.linux32x86/squeak.stack.v3/plugins.ext =================================================================== --- branches/Cog/build.linux32x86/squeak.stack.v3/plugins.ext 2016-06-07 22:35:56 UTC (rev 3739) +++ branches/Cog/build.linux32x86/squeak.stack.v3/plugins.ext 2016-06-08 18:21:49 UTC (rev 3740) @@ -7,4 +7,5 @@ UnicodePlugin \ UnixOSProcessPlugin \ UUIDPlugin \ +ImmX11Plugin \ XDisplayControlPlugin Modified: branches/Cog/build.linux64x64/squeak.cog.spur/plugins.ext =================================================================== --- branches/Cog/build.linux64x64/squeak.cog.spur/plugins.ext 2016-06-07 22:35:56 UTC (rev 3739) +++ branches/Cog/build.linux64x64/squeak.cog.spur/plugins.ext 2016-06-08 18:21:49 UTC (rev 3740) @@ -7,4 +7,5 @@ UnicodePlugin \ UnixOSProcessPlugin \ UUIDPlugin \ +ImmX11Plugin \ XDisplayControlPlugin Modified: branches/Cog/build.linux64x64/squeak.cog.spur.immutability/plugins.ext =================================================================== --- branches/Cog/build.linux64x64/squeak.cog.spur.immutability/plugins.ext 2016-06-07 22:35:56 UTC (rev 3739) +++ branches/Cog/build.linux64x64/squeak.cog.spur.immutability/plugins.ext 2016-06-08 18:21:49 UTC (rev 3740) @@ -7,4 +7,5 @@ UnicodePlugin \ UnixOSProcessPlugin \ UUIDPlugin \ +ImmX11Plugin \ XDisplayControlPlugin Modified: branches/Cog/build.linux64x64/squeak.stack.spur/plugins.ext =================================================================== --- branches/Cog/build.linux64x64/squeak.stack.spur/plugins.ext 2016-06-07 22:35:56 UTC (rev 3739) +++ branches/Cog/build.linux64x64/squeak.stack.spur/plugins.ext 2016-06-08 18:21:49 UTC (rev 3740) @@ -7,4 +7,5 @@ UnicodePlugin \ UnixOSProcessPlugin \ UUIDPlugin \ +ImmX11Plugin \ XDisplayControlPlugin Modified: branches/Cog/nsspur64src/vm/cogit.h =================================================================== --- branches/Cog/nsspur64src/vm/cogit.h 2016-06-07 22:35:56 UTC (rev 3739) +++ branches/Cog/nsspur64src/vm/cogit.h 2016-06-08 18:21:49 UTC (rev 3740) @@ -1,5 +1,5 @@ /* Automatically generated by - CCodeGenerator VMMaker.oscog-eem.1885 uuid: 3c9ce24b-d7c4-4160-ac59-56aed18461a1 + CCodeGenerator VMMaker.oscog-eem.1886 uuid: d413db9f-37cc-4c5d-bfc6-87b11203ee96 */ Modified: branches/Cog/nsspur64src/vm/cogitX64.c =================================================================== --- branches/Cog/nsspur64src/vm/cogitX64.c 2016-06-07 22:35:56 UTC (rev 3739) +++ branches/Cog/nsspur64src/vm/cogitX64.c 2016-06-08 18:21:49 UTC (rev 3740) @@ -1,9 +1,9 @@ /* Automatically generated by - CCodeGenerator VMMaker.oscog-eem.1885 uuid: 3c9ce24b-d7c4-4160-ac59-56aed18461a1 + CCodeGenerator VMMaker.oscog-eem.1886 uuid: d413db9f-37cc-4c5d-bfc6-87b11203ee96 from - StackToRegisterMappingCogit VMMaker.oscog-eem.1885 uuid: 3c9ce24b-d7c4-4160-ac59-56aed18461a1 + StackToRegisterMappingCogit VMMaker.oscog-eem.1886 uuid: d413db9f-37cc-4c5d-bfc6-87b11203ee96 */ -static char __buildInfo[] = "StackToRegisterMappingCogit VMMaker.oscog-eem.1885 uuid: 3c9ce24b-d7c4-4160-ac59-56aed18461a1 " __DATE__ ; +static char __buildInfo[] = "StackToRegisterMappingCogit VMMaker.oscog-eem.1886 uuid: d413db9f-37cc-4c5d-bfc6-87b11203ee96 " __DATE__ ; char *__cogitBuildInfo = __buildInfo; @@ -441,7 +441,7 @@ static usqInt NoDbgRegParms inlineCacheTagAt(AbstractInstruction * self_in_inlineCacheTagAt, sqInt callSiteReturnAddress); static sqInt NoDbgRegParms isPCDependent(AbstractInstruction * self_in_isPCDependent); static usqInt NoDbgRegParms literal32BeforeFollowingAddress(AbstractInstruction * self_in_literal32BeforeFollowingAddress, sqInt followingAddress); -static void NoDbgRegParms literalBeforeFollowingAddress(AbstractInstruction * self_in_literalBeforeFollowingAddress, sqInt followingAddress); +static sqInt NoDbgRegParms literalBeforeFollowingAddress(AbstractInstruction * self_in_literalBeforeFollowingAddress, sqInt followingAddress); static sqInt NoDbgRegParms loadLiteralByteSize(AbstractInstruction * self_in_loadLiteralByteSize); static usqInt NoDbgRegParms sizePCDependentInstructionAt(AbstractInstruction * self_in_sizePCDependentInstructionAt, sqInt eventualAbsoluteAddress); static AbstractInstruction * NoDbgRegParms storeLiteralbeforeFollowingAddress(AbstractInstruction * self_in_storeLiteralbeforeFollowingAddress, sqInt literal, sqInt followingAddress); @@ -892,7 +892,7 @@ static SimStackEntry * NoDbgRegParms storeToReg(SimStackEntry * self_in_storeToReg, sqInt reg); static sqInt NoDbgRegParms isMergeFixup(BytecodeFixup * self_in_isMergeFixup); static sqInt NoDbgRegParms availableRegisterOrNoneFor(AbstractInstruction * self_in_availableRegisterOrNoneFor, sqInt liveRegsMask); -static void NoDbgRegParms callFullTargetFromReturnAddress(AbstractInstruction * self_in_callFullTargetFromReturnAddress, sqInt callSiteReturnAddress); +static sqInt NoDbgRegParms callFullTargetFromReturnAddress(AbstractInstruction * self_in_callFullTargetFromReturnAddress, sqInt callSiteReturnAddress); static sqInt NoDbgRegParms callInstructionByteSize(AbstractInstruction * self_in_callInstructionByteSize); static sqInt NoDbgRegParms callTargetFromReturnAddress(AbstractInstruction * self_in_callTargetFromReturnAddress, sqInt callSiteReturnAddress); static sqInt NoDbgRegParms cmpC32RTempByteSize(AbstractInstruction * self_in_cmpC32RTempByteSize); @@ -939,7 +939,7 @@ static usqInt NoDbgRegParms machineCodeAt(AbstractInstruction * self_in_machineCodeAt, sqInt anOffset); static sqInt NoDbgRegParms machineCodeBytes(AbstractInstruction * self_in_machineCodeBytes); static sqInt NoDbgRegParms modRMRO(AbstractInstruction * self_in_modRMRO, sqInt mod, sqInt regMode, sqInt regOpcode); -static void NoDbgRegParms nsSendCacheAt(AbstractInstruction * self_in_nsSendCacheAt, char *callSiteReturnAddress); +static sqInt NoDbgRegParms nsSendCacheAt(AbstractInstruction * self_in_nsSendCacheAt, char *callSiteReturnAddress); static sqInt NoDbgRegParms numIntRegArgs(AbstractInstruction * self_in_numIntRegArgs); static AbstractInstruction * NoDbgRegParms padIfPossibleWithStopsFromto(AbstractInstruction * self_in_padIfPossibleWithStopsFromto, sqInt startAddr, sqInt endAddr); static AbstractInstruction * NoDbgRegParms relocateCallBeforeReturnPCby(AbstractInstruction * self_in_relocateCallBeforeReturnPCby, sqInt retpc, sqInt delta); @@ -2360,7 +2360,7 @@ least 16rC0. */ /* CogInLineLiteralsX64Compiler>>#literalBeforeFollowingAddress: */ -static void NoDbgRegParms +static sqInt NoDbgRegParms literalBeforeFollowingAddress(AbstractInstruction * self_in_literalBeforeFollowingAddress, sqInt followingAddress) { sqInt base; @@ -2374,8 +2374,7 @@ ? 9 : 10) : 11)); - unalignedLongAt(base); - return; + return unalignedLongAt(base); } /* CogInLineLiteralsX64Compiler>>#loadLiteralByteSize */ @@ -8686,7 +8685,7 @@ void printPCMapPairsFor(CogMethod *cogMethod) { - sqInt annotation; + unsigned char annotation; usqInt map; unsigned char mapByte; usqInt mcpc; @@ -13010,6 +13009,7 @@ sqInt quickConstant5; sqInt quickConstant6; sqInt quickConstant7; + sqInt quickConstant8; /* begin genLoadArgAtDepth:into: */ assert(1 < (numRegArgs())); @@ -13025,9 +13025,9 @@ # if IMMUTABILITY genGetFormatOfintoleastSignificantHalfOfBaseHeaderIntoScratch(ReceiverResultReg, (formatReg = SendNumArgsReg), TempReg); /* begin genJumpBaseHeaderImmutable: */ - quickConstant7 = immutableBitMask(); + quickConstant8 = immutableBitMask(); /* begin gen:quickConstant:operand: */ - anInstruction18 = genoperandoperand(TstCqR, quickConstant7, TempReg); + anInstruction18 = genoperandoperand(TstCqR, quickConstant8, TempReg); /* begin JumpNonZero: */ jumpImmutable = genConditionalBranchoperand(JumpNonZero, ((sqInt)0)); @@ -13119,7 +13119,9 @@ /* begin JumpBelow: */ jumpNotIndexableBits = genConditionalBranchoperand(JumpBelow, ((sqInt)0)); /* begin CmpCq:R: */ - anInstruction9 = genoperandoperand(CmpCqR, (((sqInt)0xFFFFFFFFU << 3) | 1), Arg1Reg); + quickConstant6 = (((sqInt)0xFFFFFFFFU << 3) | 1); + /* begin gen:quickConstant:operand: */ + anInstruction9 = genoperandoperand(CmpCqR, quickConstant6, Arg1Reg); /* begin JumpAbove: */ jumpWordsOutOfRange = genConditionalBranchoperand(JumpAbove, ((sqInt)0)); /* begin LogicalShiftLeftCq:R: */ @@ -13158,9 +13160,9 @@ /* begin JumpBelowOrEqual: */ jumpBytesOutOfBounds = genConditionalBranchoperand(JumpBelowOrEqual, ((sqInt)0)); /* begin CmpCq:R: */ - quickConstant6 = firstCompiledMethodFormat(); + quickConstant7 = firstCompiledMethodFormat(); /* begin gen:quickConstant:operand: */ - anInstruction12 = genoperandoperand(CmpCqR, quickConstant6, formatReg); + anInstruction12 = genoperandoperand(CmpCqR, quickConstant7, formatReg); /* begin JumpAboveOrEqual: */ jumpIsCompiledMethod = genConditionalBranchoperand(JumpAboveOrEqual, ((sqInt)0)); /* begin MoveR:R: */ @@ -13551,6 +13553,7 @@ sqInt quickConstant; sqInt quickConstant1; sqInt quickConstant10; + sqInt quickConstant11; sqInt quickConstant2; sqInt quickConstant3; sqInt quickConstant4; @@ -13635,7 +13638,9 @@ /* begin JumpNonZero: */ jumpFailCuzFixed = genConditionalBranchoperand(JumpNonZero, ((sqInt)0)); /* begin CmpCq:R: */ - anInstruction5 = genoperandoperand(CmpCqR, ((maxSlots << 3) | 1), Arg0Reg); + quickConstant6 = ((maxSlots << 3) | 1); + /* begin gen:quickConstant:operand: */ + anInstruction5 = genoperandoperand(CmpCqR, quickConstant6, Arg0Reg); /* begin JumpAbove: */ jumpLongTooBig = genConditionalBranchoperand(JumpAbove, ((sqInt)0)); /* begin MoveR:R: */ @@ -13647,8 +13652,8 @@ /* begin AndCq:R: */ anInstruction6 = genoperandoperand(AndCqR, (BytesPerWord / 4) - 1, TempReg); /* begin LogicalShiftLeftCq:R: */ - quickConstant6 = formatShift(); - genoperandoperand(LogicalShiftLeftCqR, quickConstant6, TempReg); + quickConstant7 = formatShift(); + genoperandoperand(LogicalShiftLeftCqR, quickConstant7, TempReg); /* begin AddR:R: */ genoperandoperand(AddRR, TempReg, headerReg); /* begin AddCq:R: */ @@ -13671,8 +13676,8 @@ /* begin AndCq:R: */ anInstruction8 = genoperandoperand(AndCqR, BytesPerWord - 1, TempReg); /* begin LogicalShiftLeftCq:R: */ - quickConstant7 = formatShift(); - genoperandoperand(LogicalShiftLeftCqR, quickConstant7, TempReg); + quickConstant8 = formatShift(); + genoperandoperand(LogicalShiftLeftCqR, quickConstant8, TempReg); /* begin AddR:R: */ genoperandoperand(AddRR, TempReg, headerReg); /* begin AddCq:R: */ @@ -13689,15 +13694,15 @@ /* begin MoveR:R: */ genoperandoperand(MoveRR, fillReg, instSpecReg); /* begin MoveCq:R: */ - quickConstant10 = nilObject(); + quickConstant11 = nilObject(); /* begin gen:quickConstant:operand: */ - anInstruction18 = genoperandoperand(MoveCqR, quickConstant10, fillReg); + anInstruction18 = genoperandoperand(MoveCqR, quickConstant11, fillReg); jmpTarget(jumpBytePrepDone, jmpTarget(jumpLongPrepDone, gLabel())); /* begin MoveR:R: */ genoperandoperand(MoveRR, instSpecReg, TempReg); /* begin LogicalShiftLeftCq:R: */ - quickConstant8 = numSlotsFullShift(); - genoperandoperand(LogicalShiftLeftCqR, quickConstant8, TempReg); + quickConstant9 = numSlotsFullShift(); + genoperandoperand(LogicalShiftLeftCqR, quickConstant9, TempReg); /* begin AddR:R: */ genoperandoperand(AddRR, TempReg, headerReg); /* begin CmpCq:R: */ @@ -13713,9 +13718,9 @@ genoperandoperand(LogicalShiftLeftCqR, shiftForWord(), byteSizeReg); jmpTarget(skip, gAddRR(Arg1Reg, byteSizeReg)); /* begin CmpCq:R: */ - quickConstant9 = getScavengeThreshold(); + quickConstant10 = getScavengeThreshold(); /* begin gen:quickConstant:operand: */ - anInstruction11 = genoperandoperand(CmpCqR, quickConstant9, byteSizeReg); + anInstruction11 = genoperandoperand(CmpCqR, quickConstant10, byteSizeReg); /* begin JumpAboveOrEqual: */ jumpNoSpace = genConditionalBranchoperand(JumpAboveOrEqual, ((sqInt)0)); /* begin MoveR:R: */ @@ -13971,13 +13976,13 @@ AbstractInstruction *jumpUnhashed; sqInt literal; sqInt literal1; - sqInt literal2; sqInt maxSlots; sqInt quickConstant; sqInt quickConstant1; sqInt quickConstant10; sqInt quickConstant11; sqInt quickConstant12; + sqInt quickConstant13; sqInt quickConstant2; sqInt quickConstant3; sqInt quickConstant4; @@ -14054,8 +14059,9 @@ /* begin JumpNonZero: */ jumpFailCuzFixed = genConditionalBranchoperand(JumpNonZero, ((sqInt)0)); /* begin CmpCq:R: */ - literal = (((maxSlots * 2) << 3) | 1); - anInstruction5 = genoperandoperand(CmpCqR, (((maxSlots * 2) << 3) | 1), Arg0Reg); + quickConstant6 = (((maxSlots * 2) << 3) | 1); + /* begin gen:quickConstant:operand: */ + anInstruction5 = genoperandoperand(CmpCqR, quickConstant6, Arg0Reg); /* begin JumpAbove: */ jumpLongTooBig = genConditionalBranchoperand(JumpAbove, ((sqInt)0)); /* begin MoveR:R: */ @@ -14065,18 +14071,18 @@ /* begin SubR:R: */ genoperandoperand(SubRR, instSpecReg, TempReg); /* begin AndCq:R: */ - quickConstant6 = (BytesPerWord / 4) - 1; + quickConstant7 = (BytesPerWord / 4) - 1; /* begin gen:quickConstant:operand: */ - anInstruction7 = genoperandoperand(AndCqR, quickConstant6, TempReg); + anInstruction7 = genoperandoperand(AndCqR, quickConstant7, TempReg); /* begin LogicalShiftLeftCq:R: */ - quickConstant7 = formatShift(); - genoperandoperand(LogicalShiftLeftCqR, quickConstant7, TempReg); + quickConstant8 = formatShift(); + genoperandoperand(LogicalShiftLeftCqR, quickConstant8, TempReg); /* begin AddR:R: */ genoperandoperand(AddRR, TempReg, headerReg); /* begin AddCq:R: */ - quickConstant8 = (BytesPerWord / 4) - 1; + quickConstant9 = (BytesPerWord / 4) - 1; /* begin gen:quickConstant:operand: */ - anInstruction8 = genoperandoperand(AddCqR, quickConstant8, instSpecReg); + anInstruction8 = genoperandoperand(AddCqR, quickConstant9, instSpecReg); /* begin LogicalShiftRightCq:R: */ genoperandoperand(LogicalShiftRightCqR, (shiftForWord()) - 2, instSpecReg); /* begin MoveCq:R: */ @@ -14093,15 +14099,15 @@ /* begin SubR:R: */ genoperandoperand(SubRR, instSpecReg, TempReg); /* begin AndCq:R: */ - literal1 = BytesPerWord - 1; + literal = BytesPerWord - 1; anInstruction11 = genoperandoperand(AndCqR, BytesPerWord - 1, TempReg); /* begin LogicalShiftLeftCq:R: */ - quickConstant9 = formatShift(); - genoperandoperand(LogicalShiftLeftCqR, quickConstant9, TempReg); + quickConstant10 = formatShift(); + genoperandoperand(LogicalShiftLeftCqR, quickConstant10, TempReg); /* begin AddR:R: */ genoperandoperand(AddRR, TempReg, headerReg); /* begin AddCq:R: */ - literal2 = BytesPerWord - 1; + literal1 = BytesPerWord - 1; anInstruction12 = genoperandoperand(AddCqR, BytesPerWord - 1, instSpecReg); /* begin LogicalShiftRightCq:R: */ genoperandoperand(LogicalShiftRightCqR, shiftForWord(), instSpecReg); @@ -14115,15 +14121,15 @@ /* begin MoveR:R: */ genoperandoperand(MoveRR, fillReg, instSpecReg); /* begin MoveCq:R: */ - quickConstant12 = nilObject(); + quickConstant13 = nilObject(); /* begin gen:quickConstant:operand: */ - anInstruction14 = genoperandoperand(MoveCqR, quickConstant12, fillReg); + anInstruction14 = genoperandoperand(MoveCqR, quickConstant13, fillReg); jmpTarget(jumpBytePrepDone, jmpTarget(jumpLongPrepDone, gLabel())); /* begin MoveR:R: */ genoperandoperand(MoveRR, instSpecReg, TempReg); /* begin LogicalShiftLeftCq:R: */ - quickConstant10 = numSlotsFullShift(); - genoperandoperand(LogicalShiftLeftCqR, quickConstant10, TempReg); + quickConstant11 = numSlotsFullShift(); + genoperandoperand(LogicalShiftLeftCqR, quickConstant11, TempReg); /* begin AddR:R: */ genoperandoperand(AddRR, TempReg, headerReg); /* begin CmpCq:R: */ @@ -14139,9 +14145,9 @@ genoperandoperand(LogicalShiftLeftCqR, shiftForWord(), byteSizeReg); jmpTarget(skip, gAddRR(Arg1Reg, byteSizeReg)); /* begin CmpCq:R: */ - quickConstant11 = getScavengeThreshold(); + quickConstant12 = getScavengeThreshold(); /* begin gen:quickConstant:operand: */ - anInstruction17 = genoperandoperand(CmpCqR, quickConstant11, byteSizeReg); + anInstruction17 = genoperandoperand(CmpCqR, quickConstant12, byteSizeReg); /* begin JumpAboveOrEqual: */ jumpNoSpace = genConditionalBranchoperand(JumpAboveOrEqual, ((sqInt)0)); /* begin MoveR:R: */ @@ -14762,7 +14768,7 @@ { AbstractInstruction *anInstruction; AbstractInstruction *anInstruction1; - sqInt mask; + int mask; sqInt rememberedBitByteOffset; rememberedBitByteOffset = (rememberedBitShift()) / 8; @@ -15750,6 +15756,8 @@ usqLong header; sqInt numSlots; sqInt quickConstant; + sqInt quickConstant1; + sqInt quickConstant2; AbstractInstruction *skip; @@ -15787,11 +15795,15 @@ /* begin MoveR:Mw:r: */ anInstruction6 = genoperandoperandoperand(MoveRMwr, ClassReg, (ClosureOuterContextIndex * BytesPerOop) + BaseHeaderSize, ReceiverResultReg); /* begin MoveCq:R: */ - anInstruction7 = genoperandoperand(MoveCqR, ((bcpc << 3) | 1), TempReg); + quickConstant1 = ((bcpc << 3) | 1); + /* begin gen:quickConstant:operand: */ + anInstruction7 = genoperandoperand(MoveCqR, quickConstant1, TempReg); /* begin MoveR:Mw:r: */ anInstruction8 = genoperandoperandoperand(MoveRMwr, TempReg, (ClosureStartPCIndex * BytesPerOop) + BaseHeaderSize, ReceiverResultReg); /* begin MoveCq:R: */ - anInstruction9 = genoperandoperand(MoveCqR, ((numArgs << 3) | 1), TempReg); + quickConstant2 = ((numArgs << 3) | 1); + /* begin gen:quickConstant:operand: */ + anInstruction9 = genoperandoperand(MoveCqR, quickConstant2, TempReg); /* begin MoveR:Mw:r: */ anInstruction10 = genoperandoperandoperand(MoveRMwr, TempReg, (ClosureNumArgsIndex * BytesPerOop) + BaseHeaderSize, ReceiverResultReg); return 0; @@ -15907,6 +15919,7 @@ AbstractInstruction *jumpBounds; AbstractInstruction *jumpNotHeaderIndex; sqInt quickConstant; + sqInt quickConstant1; /* begin genLoadArgAtDepth:into: */ assert(0 < (numRegArgs())); @@ -15914,7 +15927,9 @@ jumpBadIndex = genJumpNotSmallInteger(Arg0Reg); genGetMethodHeaderOfintoscratch(ReceiverResultReg, (headerReg = Arg1Reg), TempReg); /* begin CmpCq:R: */ - anInstruction = genoperandoperand(CmpCqR, (((sqInt)1 << 3) | 1), Arg0Reg); + quickConstant = (((sqInt)1 << 3) | 1); + /* begin gen:quickConstant:operand: */ + anInstruction = genoperandoperand(CmpCqR, quickConstant, Arg0Reg); /* begin JumpNonZero: */ jumpNotHeaderIndex = genConditionalBranchoperand(JumpNonZero, ((sqInt)0)); /* begin MoveR:R: */ @@ -15925,9 +15940,9 @@ genoperand(RetN, 0); jmpTarget(jumpNotHeaderIndex, gAndCqR((((alternateHeaderNumLiteralsMask()) << 3) | 1), headerReg)); /* begin SubCq:R: */ - quickConstant = ((((sqInt)1 << 3) | 1)) - (smallIntegerTag()); + quickConstant1 = ((((sqInt)1 << 3) | 1)) - (smallIntegerTag()); /* begin gen:quickConstant:operand: */ - anInstruction2 = genoperandoperand(SubCqR, quickConstant, Arg0Reg); + anInstruction2 = genoperandoperand(SubCqR, quickConstant1, Arg0Reg); /* begin CmpR:R: */ genoperandoperand(CmpRR, headerReg, Arg0Reg); /* begin JumpAbove: */ @@ -16907,12 +16922,10 @@ */ /* CogX64Compiler>>#callFullTargetFromReturnAddress: */ -static void NoDbgRegParms +static sqInt NoDbgRegParms callFullTargetFromReturnAddress(AbstractInstruction * self_in_callFullTargetFromReturnAddress, sqInt callSiteReturnAddress) { - /* begin sixtyFourBitLiteralBefore: */ - unalignedLongAt((callSiteReturnAddress - 2) - 8); - return; + return unalignedLongAt((callSiteReturnAddress - 2) - 8); } /* CogX64Compiler>>#callInstructionByteSize */ @@ -17801,7 +17814,7 @@ updateLabel(dependentChain, self_in_dispatchConcretize); dependentChain = (dependentChain->dependent); } - ((self_in_dispatchConcretize->machineCodeSize) = 0); + (self_in_dispatchConcretize->machineCodeSize) = 0; return; case AlignmentNops: @@ -17819,20 +17832,20 @@ ((self_in_dispatchConcretize->machineCode))[1] = ((((usqInt) word) >> 8) & 0xFF); ((self_in_dispatchConcretize->machineCode))[2] = ((((usqInt) word) >> 16) & 0xFF); ((self_in_dispatchConcretize->machineCode))[3] = ((((usqInt) word) >> 24) & 0xFF); - ((self_in_dispatchConcretize->machineCodeSize) = 4); + (self_in_dispatchConcretize->machineCodeSize) = 4; return; case Nop: /* begin concretizeNop */ ((self_in_dispatchConcretize->machineCode))[0] = 144; - ((self_in_dispatchConcretize->machineCodeSize) = 1); + (self_in_dispatchConcretize->machineCodeSize) = 1; return; case CDQ: /* begin concretizeCDQ */ ((self_in_dispatchConcretize->machineCode))[0] = 72; ((self_in_dispatchConcretize->machineCode))[1] = 153; - ((self_in_dispatchConcretize->machineCodeSize) = 2); + (self_in_dispatchConcretize->machineCodeSize) = 2; return; case IDIVR: @@ -17841,7 +17854,7 @@ ((self_in_dispatchConcretize->machineCode))[0] = (rexRxb(self_in_dispatchConcretize, 0, 0, regDivisor)); ((self_in_dispatchConcretize->machineCode))[1] = 247; ((self_in_dispatchConcretize->machineCode))[2] = (modRMRO(self_in_dispatchConcretize, ModReg, regDivisor, 7)); - ((self_in_dispatchConcretize->machineCodeSize) = 3); + (self_in_dispatchConcretize->machineCodeSize) = 3; return; case IMULRR: @@ -17852,7 +17865,7 @@ ((self_in_dispatchConcretize->machineCode))[1] = 15; ((self_in_dispatchConcretize->machineCode))[2] = 175; ((self_in_dispatchConcretize->machineCode))[3] = (modRMRO(self_in_dispatchConcretize, ModReg, reg1, reg2)); - ((self_in_dispatchConcretize->machineCodeSize) = 4); + (self_in_dispatchConcretize->machineCodeSize) = 4; return; case XCHGRR: @@ -17868,7 +17881,7 @@ ((self_in_dispatchConcretize->machineCode))[2] = ((((usqInt) offset) >> 8) & 0xFF); ((self_in_dispatchConcretize->machineCode))[3] = ((((usqInt) offset) >> 16) & 0xFF); ((self_in_dispatchConcretize->machineCode))[4] = ((((usqInt) offset) >> 24) & 0xFF); - ((self_in_dispatchConcretize->machineCodeSize) = 5); + (self_in_dispatchConcretize->machineCodeSize) = 5; return; case CallFull: @@ -17886,7 +17899,7 @@ ((self_in_dispatchConcretize->machineCode))[9] = ((((usqInt) operand) >> 56) & 0xFF); ((self_in_dispatchConcretize->machineCode))[10] = 0xFF; ((self_in_dispatchConcretize->machineCode))[11] = (modRMRO(self_in_dispatchConcretize, ModReg, RAX, 2)); - ((self_in_dispatchConcretize->machineCodeSize) = 12); + (self_in_dispatchConcretize->machineCodeSize) = 12; return; case JumpR: @@ -17894,7 +17907,7 @@ reg = ((self_in_dispatchConcretize->operands))[0]; ((self_in_dispatchConcretize->machineCode))[0] = 0xFF; ((self_in_dispatchConcretize->machineCode))[1] = (modRMRO(self_in_dispatchConcretize, ModReg, reg, 4)); - ((self_in_dispatchConcretize->machineCodeSize) = 2); + (self_in_dispatchConcretize->machineCodeSize) = 2; return; case JumpFull: @@ -17912,7 +17925,7 @@ ((self_in_dispatchConcretize->machineCode))[9] = ((((usqInt) operand1) >> 56) & 0xFF); ((self_in_dispatchConcretize->machineCode))[10] = 0xFF; ((self_in_dispatchConcretize->machineCode))[11] = (modRMRO(self_in_dispatchConcretize, ModReg, RAX, 4)); - ((self_in_dispatchConcretize->machineCodeSize) = 12); + (self_in_dispatchConcretize->machineCodeSize) = 12; return; case JumpLong: @@ -17929,7 +17942,7 @@ ((self_in_dispatchConcretize->machineCode))[2] = ((((usqInt) offset12) >> 8) & 0xFF); ((self_in_dispatchConcretize->machineCode))[3] = ((((usqInt) offset12) >> 16) & 0xFF); ((self_in_dispatchConcretize->machineCode))[4] = ((((usqInt) offset12) >> 24) & 0xFF); - ((self_in_dispatchConcretize->machineCodeSize) = 5); + (self_in_dispatchConcretize->machineCodeSize) = 5; return; case JumpLongZero: @@ -17950,8 +17963,8 @@ : ((self_in_dispatchConcretize->machineCodeSize)) == 2)) { ((self_in_dispatchConcretize->machineCode))[0] = (112 + 4); ((self_in_dispatchConcretize->machineCode))[1] = (offset23 & 0xFF); - ((self_in_dispatchConcretize->machineCodeSize) = 2); - return; + (self_in_dispatchConcretize->machineCodeSize) = 2; + goto l69; } /* begin concretizeConditionalJumpLong: */ jumpTarget11 = ((AbstractInstruction *) (((self_in_dispatchConcretize->operands))[0])); @@ -17969,7 +17982,8 @@ ((self_in_dispatchConcretize->machineCode))[3] = ((((usqInt) offset113) >> 8) & 0xFF); ((self_in_dispatchConcretize->machineCode))[4] = ((((usqInt) offset113) >> 16) & 0xFF); ((self_in_dispatchConcretize->machineCode))[5] = ((((usqInt) offset113) >> 24) & 0xFF); - ((self_in_dispatchConcretize->machineCodeSize) = 6); + (self_in_dispatchConcretize->machineCodeSize) = 6; + l69: /* end concretizeConditionalJump: */; return; case JumpLongNonZero: @@ -17990,8 +18004,8 @@ : ((self_in_dispatchConcretize->machineCodeSize)) == 2)) { ((self_in_dispatchConcretize->machineCode))[0] = (112 + 5); ((self_in_dispatchConcretize->machineCode))[1] = (offset24 & 0xFF); - ((self_in_dispatchConcretize->machineCodeSize) = 2); - return; + (self_in_dispatchConcretize->machineCodeSize) = 2; + goto l74; } /* begin concretizeConditionalJumpLong: */ jumpTarget111 = ((AbstractInstruction *) (((self_in_dispatchConcretize->operands))[0])); @@ -18009,7 +18023,8 @@ ((self_in_dispatchConcretize->machineCode))[3] = ((((usqInt) offset114) >> 8) & 0xFF); ((self_in_dispatchConcretize->machineCode))[4] = ((((usqInt) offset114) >> 16) & 0xFF); ((self_in_dispatchConcretize->machineCode))[5] = ((((usqInt) offset114) >> 24) & 0xFF); - ((self_in_dispatchConcretize->machineCodeSize) = 6); + (self_in_dispatchConcretize->machineCodeSize) = 6; + l74: /* end concretizeConditionalJump: */; return; case Jump: @@ -18027,8 +18042,8 @@ : ((self_in_dispatchConcretize->machineCodeSize)) == 2)) { ((self_in_dispatchConcretize->machineCode))[0] = 235; ((self_in_dispatchConcretize->machineCode))[1] = (offset13 & 0xFF); - ((self_in_dispatchConcretize->machineCodeSize) = 2); - return; + (self_in_dispatchConcretize->machineCodeSize) = 2; + goto l52; } offset13 = (((int) jumpTarget1)) - (((int) (((self_in_dispatchConcretize->address)) + 5))); ((self_in_dispatchConcretize->machineCode))[0] = 233; @@ -18036,7 +18051,8 @@ ((self_in_dispatchConcretize->machineCode))[2] = ((((usqInt) offset13) >> 8) & 0xFF); ((self_in_dispatchConcretize->machineCode))[3] = ((((usqInt) offset13) >> 16) & 0xFF); ((self_in_dispatchConcretize->machineCode))[4] = ((((usqInt) offset13) >> 24) & 0xFF); - ((self_in_dispatchConcretize->machineCodeSize) = 5); + (self_in_dispatchConcretize->machineCodeSize) = 5; + l52: /* end concretizeJump */; return; case JumpNegative: @@ -18055,8 +18071,8 @@ : ((self_in_dispatchConcretize->machineCodeSize)) == 2)) { ((self_in_dispatchConcretize->machineCode))[0] = (112 + 8); ((self_in_dispatchConcretize->machineCode))[1] = (offset25 & 0xFF); - ((self_in_dispatchConcretize->machineCodeSize) = 2); - return; + (self_in_dispatchConcretize->machineCodeSize) = 2; + goto l79; } /* begin concretizeConditionalJumpLong: */ jumpTarget112 = ((AbstractInstruction *) (((self_in_dispatchConcretize->operands))[0])); @@ -18074,7 +18090,8 @@ ((self_in_dispatchConcretize->machineCode))[3] = ((((usqInt) offset115) >> 8) & 0xFF); ((self_in_dispatchConcretize->machineCode))[4] = ((((usqInt) offset115) >> 16) & 0xFF); ((self_in_dispatchConcretize->machineCode))[5] = ((((usqInt) offset115) >> 24) & 0xFF); - ((self_in_dispatchConcretize->machineCodeSize) = 6); + (self_in_dispatchConcretize->machineCodeSize) = 6; + l79: /* end concretizeConditionalJump: */; return; case JumpNonNegative: @@ -18093,8 +18110,8 @@ : ((self_in_dispatchConcretize->machineCodeSize)) == 2)) { ((self_in_dispatchConcretize->machineCode))[0] = (112 + 9); ((self_in_dispatchConcretize->machineCode))[1] = (offset26 & 0xFF); - ((self_in_dispatchConcretize->machineCodeSize) = 2); - return; + (self_in_dispatchConcretize->machineCodeSize) = 2; + goto l84; } /* begin concretizeConditionalJumpLong: */ jumpTarget113 = ((AbstractInstruction *) (((self_in_dispatchConcretize->operands))[0])); @@ -18112,7 +18129,8 @@ ((self_in_dispatchConcretize->machineCode))[3] = ((((usqInt) offset116) >> 8) & 0xFF); ((self_in_dispatchConcretize->machineCode))[4] = ((((usqInt) offset116) >> 16) & 0xFF); ((self_in_dispatchConcretize->machineCode))[5] = ((((usqInt) offset116) >> 24) & 0xFF); - ((self_in_dispatchConcretize->machineCodeSize) = 6); + (self_in_dispatchConcretize->machineCodeSize) = 6; + l84: /* end concretizeConditionalJump: */; return; case JumpOverflow: @@ -18131,8 +18149,8 @@ : ((self_in_dispatchConcretize->machineCodeSize)) == 2)) { ((self_in_dispatchConcretize->machineCode))[0] = (112); ((self_in_dispatchConcretize->machineCode))[1] = (offset27 & 0xFF); - ((self_in_dispatchConcretize->machineCodeSize) = 2); - return; + (self_in_dispatchConcretize->machineCodeSize) = 2; + goto l89; } /* begin concretizeConditionalJumpLong: */ jumpTarget114 = ((AbstractInstruction *) (((self_in_dispatchConcretize->operands))[0])); @@ -18150,7 +18168,8 @@ ((self_in_dispatchConcretize->machineCode))[3] = ((((usqInt) offset117) >> 8) & 0xFF); ((self_in_dispatchConcretize->machineCode))[4] = ((((usqInt) offset117) >> 16) & 0xFF); ((self_in_dispatchConcretize->machineCode))[5] = ((((usqInt) offset117) >> 24) & 0xFF); - ((self_in_dispatchConcretize->machineCodeSize) = 6); + (self_in_dispatchConcretize->machineCodeSize) = 6; + l89: /* end concretizeConditionalJump: */; return; case JumpNoOverflow: @@ -18169,8 +18188,8 @@ : ((self_in_dispatchConcretize->machineCodeSize)) == 2)) { ((self_in_dispatchConcretize->machineCode))[0] = (112 + 1); ((self_in_dispatchConcretize->machineCode))[1] = (offset28 & 0xFF); - ((self_in_dispatchConcretize->machineCodeSize) = 2); - return; + (self_in_dispatchConcretize->machineCodeSize) = 2; + goto l94; } /* begin concretizeConditionalJumpLong: */ jumpTarget115 = ((AbstractInstruction *) (((self_in_dispatchConcretize->operands))[0])); @@ -18188,7 +18207,8 @@ ((self_in_dispatchConcretize->machineCode))[3] = ((((usqInt) offset118) >> 8) & 0xFF); ((self_in_dispatchConcretize->machineCode))[4] = ((((usqInt) offset118) >> 16) & 0xFF); ((self_in_dispatchConcretize->machineCode))[5] = ((((usqInt) offset118) >> 24) & 0xFF); - ((self_in_dispatchConcretize->machineCodeSize) = 6); + (self_in_dispatchConcretize->machineCodeSize) = 6; + l94: /* end concretizeConditionalJump: */; return; case JumpCarry: @@ -18209,8 +18229,8 @@ : ((self_in_dispatchConcretize->machineCodeSize)) == 2)) { ((self_in_dispatchConcretize->machineCode))[0] = (112 + 2); ((self_in_dispatchConcretize->machineCode))[1] = (offset29 & 0xFF); - ((self_in_dispatchConcretize->machineCodeSize) = 2); - return; + (self_in_dispatchConcretize->machineCodeSize) = 2; + goto l99; } /* begin concretizeConditionalJumpLong: */ jumpTarget116 = ((AbstractInstruction *) (((self_in_dispatchConcretize->operands))[0])); @@ -18228,7 +18248,8 @@ ((self_in_dispatchConcretize->machineCode))[3] = ((((usqInt) offset119) >> 8) & 0xFF); ((self_in_dispatchConcretize->machineCode))[4] = ((((usqInt) offset119) >> 16) & 0xFF); ((self_in_dispatchConcretize->machineCode))[5] = ((((usqInt) offset119) >> 24) & 0xFF); - ((self_in_dispatchConcretize->machineCodeSize) = 6); + (self_in_dispatchConcretize->machineCodeSize) = 6; + l99: /* end concretizeConditionalJump: */; return; case JumpNoCarry: @@ -18249,8 +18270,8 @@ : ((self_in_dispatchConcretize->machineCodeSize)) == 2)) { ((self_in_dispatchConcretize->machineCode))[0] = (112 + 3); ((self_in_dispatchConcretize->machineCode))[1] = (offset30 & 0xFF); - ((self_in_dispatchConcretize->machineCodeSize) = 2); - return; + (self_in_dispatchConcretize->machineCodeSize) = 2; + goto l104; } /* begin concretizeConditionalJumpLong: */ jumpTarget117 = ((AbstractInstruction *) (((self_in_dispatchConcretize->operands))[0])); @@ -18268,7 +18289,8 @@ ((self_in_dispatchConcretize->machineCode))[3] = ((((usqInt) offset120) >> 8) & 0xFF); ((self_in_dispatchConcretize->machineCode))[4] = ((((usqInt) offset120) >> 16) & 0xFF); ((self_in_dispatchConcretize->machineCode))[5] = ((((usqInt) offset120) >> 24) & 0xFF); - ((self_in_dispatchConcretize->machineCodeSize) = 6); + (self_in_dispatchConcretize->machineCodeSize) = 6; + l104: /* end concretizeConditionalJump: */; return; case JumpLess: @@ -18287,8 +18309,8 @@ : ((self_in_dispatchConcretize->machineCodeSize)) == 2)) { ((self_in_dispatchConcretize->machineCode))[0] = (112 + 12); ((self_in_dispatchConcretize->machineCode))[1] = (offset31 & 0xFF); - ((self_in_dispatchConcretize->machineCodeSize) = 2); - return; + (self_in_dispatchConcretize->machineCodeSize) = 2; + goto l109; } /* begin concretizeConditionalJumpLong: */ jumpTarget118 = ((AbstractInstruction *) (((self_in_dispatchConcretize->operands))[0])); @@ -18306,7 +18328,8 @@ ((self_in_dispatchConcretize->machineCode))[3] = ((((usqInt) offset121) >> 8) & 0xFF); ((self_in_dispatchConcretize->machineCode))[4] = ((((usqInt) offset121) >> 16) & 0xFF); ((self_in_dispatchConcretize->machineCode))[5] = ((((usqInt) offset121) >> 24) & 0xFF); - ((self_in_dispatchConcretize->machineCodeSize) = 6); + (self_in_dispatchConcretize->machineCodeSize) = 6; + l109: /* end concretizeConditionalJump: */; return; case JumpGreaterOrEqual: @@ -18325,8 +18348,8 @@ : ((self_in_dispatchConcretize->machineCodeSize)) == 2)) { ((self_in_dispatchConcretize->machineCode))[0] = (112 + 13); ((self_in_dispatchConcretize->machineCode))[1] = (offset32 & 0xFF); - ((self_in_dispatchConcretize->machineCodeSize) = 2); - return; + (self_in_dispatchConcretize->machineCodeSize) = 2; + goto l114; } /* begin concretizeConditionalJumpLong: */ jumpTarget1110 = ((AbstractInstruction *) (((self_in_dispatchConcretize->operands))[0])); @@ -18344,7 +18367,8 @@ ((self_in_dispatchConcretize->machineCode))[3] = ((((usqInt) offset122) >> 8) & 0xFF); ((self_in_dispatchConcretize->machineCode))[4] = ((((usqInt) offset122) >> 16) & 0xFF); ((self_in_dispatchConcretize->machineCode))[5] = ((((usqInt) offset122) >> 24) & 0xFF); - ((self_in_dispatchConcretize->machineCodeSize) = 6); + (self_in_dispatchConcretize->machineCodeSize) = 6; + l114: /* end concretizeConditionalJump: */; return; case JumpGreater: @@ -18363,8 +18387,8 @@ : ((self_in_dispatchConcretize->machineCodeSize)) == 2)) { ((self_in_dispatchConcretize->machineCode))[0] = (112 + 15); ((self_in_dispatchConcretize->machineCode))[1] = (offset33 & 0xFF); - ((self_in_dispatchConcretize->machineCodeSize) = 2); - return; + (self_in_dispatchConcretize->machineCodeSize) = 2; + goto l119; } /* begin concretizeConditionalJumpLong: */ jumpTarget1111 = ((AbstractInstruction *) (((self_in_dispatchConcretize->operands))[0])); @@ -18382,7 +18406,8 @@ ((self_in_dispatchConcretize->machineCode))[3] = ((((usqInt) offset123) >> 8) & 0xFF); ((self_in_dispatchConcretize->machineCode))[4] = ((((usqInt) offset123) >> 16) & 0xFF); ((self_in_dispatchConcretize->machineCode))[5] = ((((usqInt) offset123) >> 24) & 0xFF); - ((self_in_dispatchConcretize->machineCodeSize) = 6); + (self_in_dispatchConcretize->machineCodeSize) = 6; + l119: /* end concretizeConditionalJump: */; return; case JumpLessOrEqual: @@ -18401,8 +18426,8 @@ : ((self_in_dispatchConcretize->machineCodeSize)) == 2)) { ((self_in_dispatchConcretize->machineCode))[0] = (112 + 14); ((self_in_dispatchConcretize->machineCode))[1] = (offset34 & 0xFF); - ((self_in_dispatchConcretize->machineCodeSize) = 2); - return; + (self_in_dispatchConcretize->machineCodeSize) = 2; + goto l124; } /* begin concretizeConditionalJumpLong: */ jumpTarget1112 = ((AbstractInstruction *) (((self_in_dispatchConcretize->operands))[0])); @@ -18420,7 +18445,8 @@ ((self_in_dispatchConcretize->machineCode))[3] = ((((usqInt) offset124) >> 8) & 0xFF); ((self_in_dispatchConcretize->machineCode))[4] = ((((usqInt) offset124) >> 16) & 0xFF); ((self_in_dispatchConcretize->machineCode))[5] = ((((usqInt) offset124) >> 24) & 0xFF); - ((self_in_dispatchConcretize->machineCodeSize) = 6); + (self_in_dispatchConcretize->machineCodeSize) = 6; + l124: /* end concretizeConditionalJump: */; return; case JumpAbove: @@ -18440,8 +18466,8 @@ : ((self_in_dispatchConcretize->machineCodeSize)) == 2)) { ((self_in_dispatchConcretize->machineCode))[0] = (112 + 7); ((self_in_dispatchConcretize->machineCode))[1] = (offset35 & 0xFF); - ((self_in_dispatchConcretize->machineCodeSize) = 2); - return; + (self_in_dispatchConcretize->machineCodeSize) = 2; + goto l129; } /* begin concretizeConditionalJumpLong: */ jumpTarget1113 = ((AbstractInstruction *) (((self_in_dispatchConcretize->operands))[0])); @@ -18459,7 +18485,8 @@ ((self_in_dispatchConcretize->machineCode))[3] = ((((usqInt) offset125) >> 8) & 0xFF); ((self_in_dispatchConcretize->machineCode))[4] = ((((usqInt) offset125) >> 16) & 0xFF); ((self_in_dispatchConcretize->machineCode))[5] = ((((usqInt) offset125) >> 24) & 0xFF); - ((self_in_dispatchConcretize->machineCodeSize) = 6); + (self_in_dispatchConcretize->machineCodeSize) = 6; + l129: /* end concretizeConditionalJump: */; return; case JumpBelowOrEqual: @@ -18479,8 +18506,8 @@ : ((self_in_dispatchConcretize->machineCodeSize)) == 2)) { ((self_in_dispatchConcretize->machineCode))[0] = (112 + 6); ((self_in_dispatchConcretize->machineCode))[1] = (offset36 & 0xFF); - ((self_in_dispatchConcretize->machineCodeSize) = 2); - return; + (self_in_dispatchConcretize->machineCodeSize) = 2; + goto l134; } /* begin concretizeConditionalJumpLong: */ jumpTarget1114 = ((AbstractInstruction *) (((self_in_dispatchConcretize->operands))[0])); @@ -18498,7 +18525,8 @@ ((self_in_dispatchConcretize->machineCode))[3] = ((((usqInt) offset126) >> 8) & 0xFF); ((self_in_dispatchConcretize->machineCode))[4] = ((((usqInt) offset126) >> 16) & 0xFF); ((self_in_dispatchConcretize->machineCode))[5] = ((((usqInt) offset126) >> 24) & 0xFF); - ((self_in_dispatchConcretize->machineCodeSize) = 6); + (self_in_dispatchConcretize->machineCodeSize) = 6; + l134: /* end concretizeConditionalJump: */; return; case JumpFPOrdered: @@ -18517,8 +18545,8 @@ : ((self_in_dispatchConcretize->machineCodeSize)) == 2)) { ((self_in_dispatchConcretize->machineCode))[0] = (112 + 11); ((self_in_dispatchConcretize->machineCode))[1] = (offset37 & 0xFF); - ((self_in_dispatchConcretize->machineCodeSize) = 2); - return; + (self_in_dispatchConcretize->machineCodeSize) = 2; + goto l139; } /* begin concretizeConditionalJumpLong: */ jumpTarget1115 = ((AbstractInstruction *) (((self_in_dispatchConcretize->operands))[0])); @@ -18536,7 +18564,8 @@ ((self_in_dispatchConcretize->machineCode))[3] = ((((usqInt) offset127) >> 8) & 0xFF); ((self_in_dispatchConcretize->machineCode))[4] = ((((usqInt) offset127) >> 16) & 0xFF); ((self_in_dispatchConcretize->machineCode))[5] = ((((usqInt) offset127) >> 24) & 0xFF); - ((self_in_dispatchConcretize->machineCodeSize) = 6); + (self_in_dispatchConcretize->machineCodeSize) = 6; + l139: /* end concretizeConditionalJump: */; return; case JumpFPUnordered: @@ -18555,8 +18584,8 @@ : ((self_in_dispatchConcretize->machineCodeSize)) == 2)) { ((self_in_dispatchConcretize->machineCode))[0] = (112 + 10); ((self_in_dispatchConcretize->machineCode))[1] = (offset38 & 0xFF); - ((self_in_dispatchConcretize->machineCodeSize) = 2); - return; + (self_in_dispatchConcretize->machineCodeSize) = 2; + goto l144; } /* begin concretizeConditionalJumpLong: */ jumpTarget1116 = ((AbstractInstruction *) (((self_in_dispatchConcretize->operands))[0])); @@ -18574,7 +18603,8 @@ ((self_in_dispatchConcretize->machineCode))[3] = ((((usqInt) offset128) >> 8) & 0xFF); ((self_in_dispatchConcretize->machineCode))[4] = ((((usqInt) offset128) >> 16) & 0xFF); ((self_in_dispatchConcretize->machineCode))[5] = ((((usqInt) offset128) >> 24) & 0xFF); - ((self_in_dispatchConcretize->machineCodeSize) = 6); + (self_in_dispatchConcretize->machineCodeSize) = 6; + l144: /* end concretizeConditionalJump: */; return; case RetN: @@ -18582,19 +18612,20 @@ offset1 = ((self_in_dispatchConcretize->operands))[0]; if (offset1 == 0) { ((self_in_dispatchConcretize->machineCode))[0] = 195; - ((self_in_dispatchConcretize->machineCodeSize) = 1); - return; + (self_in_dispatchConcretize->machineCodeSize) = 1; + goto l12; } ((self_in_dispatchConcretize->machineCode))[0] = 194; ((self_in_dispatchConcretize->machineCode))[1] = (offset1 & 0xFF); ((self_in_dispatchConcretize->machineCode))[2] = (((usqInt) offset1) >> 8); - ((self_in_dispatchConcretize->machineCodeSize) = 3); + (self_in_dispatchConcretize->machineCodeSize) = 3; + l12: /* end concretizeRetN */; return; case Stop: /* begin concretizeStop */ ((self_in_dispatchConcretize->machineCode))[0] = 204; - ((self_in_dispatchConcretize->machineCodeSize) = 1); + (self_in_dispatchConcretize->machineCodeSize) = 1; return; case AddCqR: @@ -18617,7 +18648,7 @@ ((self_in_dispatchConcretize->machineCode))[1] = 15; ((self_in_dispatchConcretize->machineCode))[2] = 88; ((self_in_dispatchConcretize->machineCode))[3] = (modRMRO(self_in_dispatchConcretize, ModReg, regRHS, regLHS)); - ((self_in_dispatchConcretize->machineCodeSize) = 4); + (self_in_dispatchConcretize->machineCodeSize) = 4; return; case AndCqR: @@ -18641,8 +18672,8 @@ ((self_in_dispatchConcretize->machineCode))[1] = 246; ((self_in_dispatchConcretize->machineCode))[2] = (modRMRO(self_in_dispatchConcretize, ModReg, reg3, 0)); ((self_in_dispatchConcretize->machineCode))[3] = (value & 0xFF); - ((self_in_dispatchConcretize->machineCodeSize) = 4); - return; + (self_in_dispatchConcretize->machineCodeSize) = 4; + goto l15; } if (is32BitSignedImmediate(self_in_dispatchConcretize, value)) { if (reg3 == RAX) { @@ -18651,8 +18682,8 @@ ((self_in_dispatchConcretize->machineCode))[3] = ((((usqInt) value) >> 8) & 0xFF); ((self_in_dispatchConcretize->machineCode))[4] = ((((usqInt) value) >> 16) & 0xFF); ((self_in_dispatchConcretize->machineCode))[5] = ((((usqInt) value) >> 24) & 0xFF); - ((self_in_dispatchConcretize->machineCodeSize) = 6); - return; + (self_in_dispatchConcretize->machineCodeSize) = 6; + goto l15; } ((self_in_dispatchConcretize->machineCode))[1] = 247; ((self_in_dispatchConcretize->machineCode))[2] = (modRMRO(self_in_dispatchConcretize, ModReg, reg3, 0)); @@ -18660,10 +18691,11 @@ ((self_in_dispatchConcretize->machineCode))[4] = ((((usqInt) value) >> 8) & 0xFF); ((self_in_dispatchConcretize->machineCode))[5] = ((((usqInt) value) >> 16) & 0xFF); ((self_in_dispatchConcretize->machineCode))[6] = ((((usqInt) value) >> 24) & 0xFF); - ((self_in_dispatchConcretize->machineCodeSize) = 7); - return; + (self_in_dispatchConcretize->machineCodeSize) = 7; + goto l15; } concretizeArithCwR(self_in_dispatchConcretize, 133); + l15: /* end concretizeTstCqR */; return; case CmpCqR: @@ -18697,7 +18729,7 @@ ((self_in_dispatchConcretize->machineCode))[skip + 2] = ((((usqInt) value1) >> 8) & 0xFF); ((self_in_dispatchConcretize->machineCode))[skip + 3] = ((((usqInt) value1) >> 16) & 0xFF); ((self_in_dispatchConcretize->machineCode))[skip + 4] = ((((usqInt) value1) >> 24) & 0xFF); - ((self_in_dispatchConcretize->machineCodeSize) = 5 + skip); + (self_in_dispatchConcretize->machineCodeSize) = 5 + skip; return; case CmpRR: @@ -18712,7 +18744,7 @@ ((self_in_dispatchConcretize->machineCode))[1] = 15; ((self_in_dispatchConcretize->machineCode))[2] = 46; ((self_in_dispatchConcretize->machineCode))[3] = (modRMRO(self_in_dispatchConcretize, ModReg, regRHS1, regLHS1)); - ((self_in_dispatchConcretize->machineCodeSize) = 4); + (self_in_dispatchConcretize->machineCodeSize) = 4; return; case DivRdRd: @@ -18723,7 +18755,7 @@ ((self_in_dispatchConcretize->machineCode))[1] = 15; ((self_in_dispatchConcretize->machineCode))[2] = 94; ((self_in_dispatchConcretize->machineCode))[3] = (modRMRO(self_in_dispatchConcretize, ModReg, regRHS2, regLHS2)); - ((self_in_dispatchConcretize->machineCodeSize) = 4); + (self_in_dispatchConcretize->machineCodeSize) = 4; return; case MulRdRd: @@ -18734,7 +18766,7 @@ ((self_in_dispatchConcretize->machineCode))[1] = 15; ((self_in_dispatchConcretize->machineCode))[2] = 89; ((self_in_dispatchConcretize->machineCode))[3] = (modRMRO(self_in_dispatchConcretize, ModReg, regRHS3, regLHS3)); - ((self_in_dispatchConcretize->machineCodeSize) = 4); + (self_in_dispatchConcretize->machineCodeSize) = 4; return; case OrCqR: @@ -18769,7 +18801,7 @@ ((self_in_dispatchConcretize->machineCode))[1] = 15; ((self_in_dispatchConcretize->machineCode))[2] = 92; ((self_in_dispatchConcretize->machineCode))[3] = (modRMRO(self_in_dispatchConcretize, ModReg, regRHS4, regLHS4)); - ((self_in_dispatchConcretize->machineCodeSize) = 4); + (self_in_dispatchConcretize->machineCodeSize) = 4; return; case SqrtRd: @@ -18779,7 +18811,7 @@ ((self_in_dispatchConcretize->machineCode))[1] = 15; ((self_in_dispatchConcretize->machineCode))[2] = 81; ((self_in_dispatchConcretize->machineCode))[3] = (modRMRO(self_in_dispatchConcretize, ModReg, reg5, reg5)); - ((self_in_dispatchConcretize->machineCodeSize) = 4); + (self_in_dispatchConcretize->machineCodeSize) = 4; return; case XorCwR: @@ -18796,7 +18828,7 @@ ((self_in_dispatchConcretize->machineCode))[0] = (rexRxb(self_in_dispatchConcretize, 0, 0, reg6)); ((self_in_dispatchConcretize->machineCode))[1] = 247; ((self_in_dispatchConcretize->machineCode))[2] = (modRMRO(self_in_dispatchConcretize, ModReg, reg6, 3)); - ((self_in_dispatchConcretize->machineCodeSize) = 3); + (self_in_dispatchConcretize->machineCodeSize) = 3; return; case LoadEffectiveAddressMwrR: @@ -18811,23 +18843,23 @@ if (isQuick(self_in_dispatchConcretize, offset2)) { ((self_in_dispatchConcretize->machineCode))[2] = (modRMRO(self_in_dispatchConcretize, ModRegRegDisp8, srcReg, destReg)); ((self_in_dispatchConcretize->machineCode))[3] = (offset2 & 0xFF); - ((self_in_dispatchConcretize->machineCodeSize) = 4); - return; + (self_in_dispatchConcretize->machineCodeSize) = 4; + goto l23; } ((self_in_dispatchConcretize->machineCode))[2] = (modRMRO(self_in_dispatchConcretize, ModRegRegDisp32, srcReg, destReg)); ((self_in_dispatchConcretize->machineCode))[3] = (offset2 & 0xFF); ((self_in_dispatchConcretize->machineCode))[4] = ((((usqInt) offset2) >> 8) & 0xFF); ((self_in_dispatchConcretize->machineCode))[5] = ((((usqInt) offset2) >> 16) & 0xFF); ((self_in_dispatchConcretize->machineCode))[6] = ((((usqInt) offset2) >> 24) & 0xFF); - ((self_in_dispatchConcretize->machineCodeSize) = 7); - return; + (self_in_dispatchConcretize->machineCodeSize) = 7; + goto l23; } if (isQuick(self_in_dispatchConcretize, offset2)) { @@ Diff output truncated at 50000 characters. @@ |
Free forum by Nabble | Edit this page |