[Vm-dev] VM Maker: VMMaker.oscog-eem.2999.mcz

commits at source.squeak.org commits at source.squeak.org
Mon Jul 26 18:51:39 UTC 2021


Eliot Miranda uploaded a new version of VMMaker to project VM Maker:
http://source.squeak.org/VMMaker/VMMaker.oscog-eem.2999.mcz

==================== Summary ====================

Name: VMMaker.oscog-eem.2999
Author: eem
Time: 26 July 2021, 11:51:29.857244 am
UUID: c7933314-4edf-4570-b6d8-3891b13c233d
Ancestors: VMMaker.oscog-eem.2998

Use the new FFI integer access primitives for VMMaker's extensions to ByteArray.

=============== Diff against VMMaker.oscog-eem.2998 ===============

Item was added:
+ ----- Method: ByteArray>>long32At: (in category '*VMMaker-accessing') -----
+ long32At: byteIndex
+ 	"Store a 32bit signed integer starting at the given byte offset"
+ 	<primitive: #primitiveSignedInt32At module: #SqueakFFIPrims error: ec>
+ 	^self integerAt: byteIndex size: 4 signed: true!

Item was changed:
  ----- Method: ByteArray>>long64At: (in category '*VMMaker-accessing') -----
  long64At: index
+ 	"Answer a 64-bit integer in platform native order."
+ 	<primitive: #primitiveSignedInt64At module: #SqueakFFIPrims error: ec>
- 	"Answer a 64-bit integer in Smalltalk order (little-endian)."
  	^self integerAt: index size: 8 signed: true!

Item was changed:
  ----- Method: ByteArray>>long64At:put: (in category '*VMMaker-accessing') -----
  long64At: index put: value
+ 	"I store 64-bit integers in platform native order."
+ 	<primitive: #primitiveSignedInt648At module: #SqueakFFIPrims error: ec>
- 	"I store 64-bit integers in Smalltalk (little-endian) order."
  	^self integerAt: index put: value size: 8 signed: true!

Item was changed:
  ----- Method: ByteArray>>longAt: (in category '*VMMaker-accessing') -----
  longAt: byteIndex
+ 	"Store a 32-bit signed integer starting at the given byte offset"
+ 	<primitive: #primitiveSignedInt32At module: #SqueakFFIPrims error: ec>
- 	"Store a 32bit signed integer starting at the given byte offset"
  	^self integerAt: byteIndex size: 4 signed: true!

Item was changed:
  ----- Method: ByteArray>>unsignedLong64At: (in category '*VMMaker-accessing') -----
  unsignedLong64At: byteOffset
+ 	"Answer a 64-bit integer in platform native order."
+ 	<primitive: #primitiveUnsignedInt64At module: #SqueakFFIPrims error: ec>
- 	"Answer a 64-bit integer in Smalltalk order (little-endian)."
  	^self integerAt: byteOffset size: 8 signed: false!



More information about the Vm-dev mailing list