[Vm-dev] VM Maker: VMMaker-dtl.434.mcz
commits at source.squeak.org
commits at source.squeak.org
Mon Jul 25 22:58:31 UTC 2022
David T. Lewis uploaded a new version of VMMaker to project VM Maker:
http://source.squeak.org/VMMaker/VMMaker-dtl.434.mcz
==================== Summary ====================
Name: VMMaker-dtl.434
Author: dtl
Time: 24 July 2022, 6:37:41.373 pm
UUID: 1ba8463f-b249-4f77-8327-9129856ceddc
Ancestors: VMMaker-dtl.433
VMMaker 4.19.15 Fix type declaration problem in DeflatePlugin affecting RiscV64 compilation, thanks Key Dickey http://lists.squeakfoundation.org/pipermail/vm-dev/2022-July/038221.html
=============== Diff against VMMaker-dtl.433 ===============
Item was changed:
----- Method: DeflatePlugin>>primitiveUpdateGZipCrc32 (in category 'primitives') -----
primitiveUpdateGZipCrc32
"Primitive. Update a 32bit CRC value."
| collection stopIndex startIndex crc length bytePtr |
<export: true>
<var: #bytePtr type: #'unsigned char *'>
+ <var: #crc type: #'unsigned int'>
interpreterProxy methodArgumentCount = 4
ifFalse:[^interpreterProxy primitiveFail].
collection := interpreterProxy stackObjectValue: 0.
stopIndex := interpreterProxy stackIntegerValue: 1.
startIndex := interpreterProxy stackIntegerValue: 2.
crc := interpreterProxy positive32BitValueOf: (interpreterProxy stackValue: 3).
interpreterProxy failed ifTrue: [^0].
((interpreterProxy isBytes: collection) and:[stopIndex >= startIndex and:[startIndex > 0]])
ifFalse:[^interpreterProxy primitiveFail].
length := interpreterProxy byteSizeOf: collection.
(stopIndex <= length) ifFalse:[^interpreterProxy primitiveFail].
bytePtr := interpreterProxy firstIndexableField: collection.
self cCode:'' inSmalltalk:[zipCrcTable := CArrayAccessor on: GZipWriteStream crcTable].
startIndex := startIndex - 1.
stopIndex := stopIndex - 1.
startIndex to: stopIndex do:
[:i|
crc := (zipCrcTable at: ((crc bitXor: (bytePtr at: i)) bitAnd: 255)) bitXor: (crc >> 8)].
interpreterProxy
pop: 5 "args + rcvr"
thenPush: (interpreterProxy positive32BitIntegerFor: crc)!
Item was changed:
----- Method: VMMaker class>>versionString (in category 'version testing') -----
versionString
"VMMaker versionString"
+ ^'4.19.15'!
- ^'4.19.14'!
More information about the Vm-dev
mailing list