Nicolas Cellier uploaded a new version of VMMaker to project VM Maker: http://source.squeak.org/VMMaker/VMMaker.oscog-nice.2537.mcz
==================== Summary ====================
Name: VMMaker.oscog-nice.2537 Author: nice Time: 20 August 2019, 7:00:27.878544 pm UUID: f5d48af0-8ca1-a448-9fcd-c05c9ba540e4 Ancestors: VMMaker.oscog-eem.2536
Fix issue #415
incorrect Spur64 genJumpNotSmallIntegerValue:scratch: bugs SmallInteger minVal / -1
https://github.com/OpenSmalltalk/opensmalltalk-vm/issues/415
=============== Diff against VMMaker.oscog-eem.2536 ===============
Item was changed: ----- Method: CogObjectRepresentationFor64BitSpur>>genJumpNotSmallIntegerValue:scratch: (in category 'compile abstract instructions') ----- genJumpNotSmallIntegerValue: aRegister scratch: scratchReg "Generate a test for aRegister containing an integer value outside the SmallInteger range, and a jump if so, answering the jump. c.f. Spur64BitMemoryManager>>isIntegerValue:" <returnTypeC: #'AbstractInstruction *'> ^cogit MoveR: aRegister R: scratchReg; + ArithmeticShiftRightCq: 63 - objectMemory numTagBits R: scratchReg; - ArithmeticShiftRightCq: 64 - objectMemory numTagBits R: scratchReg; AddCq: 1 R: scratchReg; AndCq: 1 << (objectMemory numTagBits + 1) - 1 R: scratchReg; "sign and top numTags bits must be the same" CmpCq: 1 R: scratchReg; JumpGreater: 0!
vm-dev@lists.squeakfoundation.org