Eliot Miranda uploaded a new version of VMMaker to project VM Maker: http://source.squeak.org/VMMaker/VMMaker.oscog-eem.2606.mcz
==================== Summary ====================
Name: VMMaker.oscog-eem.2606 Author: eem Time: 11 December 2019, 12:08:45.007873 pm UUID: be1eac72-340a-4ed5-bfe7-6051597847a4 Ancestors: VMMaker.oscog-eem.2605
Fix the "funny floats" issue with gcc et al. Casting the address of an automatic long to an int * is no longer allowed. Thanks to Pablo Tessone for the analysis and fix.
=============== Diff against VMMaker.oscog-eem.2605 ===============
Item was changed: ----- Method: Spur64BitMemoryManager>>fetchLong32:ofFloatObject: (in category 'object access') ----- fetchLong32: fieldIndex ofFloatObject: oop "index by word size, and return a pointer as long as the word size" | bits | (self isImmediateFloat: oop) ifFalse: [^self fetchLong32: fieldIndex ofObject: oop]. bits := self smallFloatBitsOf: oop. + ^fieldIndex = 0 + ifTrue: [bits bitAnd: 16rFFFFFFFF] + ifFalse: [bits >> 32]! - ^self - cCode: [(self cCoerceSimple: (self addressOf: bits) to: #'int *') at: fieldIndex] - inSmalltalk: - [self flag: #endian. - fieldIndex = 0 - ifTrue: [bits bitAnd: 16rFFFFFFFF] - ifFalse: [bits >> 32]]!
vm-dev@lists.squeakfoundation.org