[Vm-dev] VM Maker: VMMaker.oscog-eem.961.mcz
commits at source.squeak.org
commits at source.squeak.org
Tue Dec 2 02:27:51 UTC 2014
Eliot Miranda uploaded a new version of VMMaker to project VM Maker:
http://source.squeak.org/VMMaker/VMMaker.oscog-eem.961.mcz
==================== Summary ====================
Name: VMMaker.oscog-eem.961
Author: eem
Time: 1 December 2014, 6:25:22.92 pm
UUID: 005b79a9-dcf2-4df1-a959-696a1a5889d6
Ancestors: VMMaker.oscog-eem.960
Fix StackInterpreter>>isFloatObject: and
primitiveVMParameter to use isFloatInstance:.
Fix simulation of primitiveSmallFloatTruncated.
=============== Diff against VMMaker.oscog-eem.960 ===============
Item was changed:
----- Method: InterpreterPrimitives>>primitiveSmallFloatTruncated (in category 'arithmetic float primitives') -----
primitiveSmallFloatTruncated
<option: #Spur64BitMemoryManager>
| rcvr trunc |
<var: #rcvr type: #double>
<var: #trunc type: #double>
+ rcvr := objectMemory smallFloatValueOf: self stackTop.
- rcvr := self smallFloatValueOf: self stackTop.
self cCode: [self mod: rcvr f: (self addressOf: trunc)]
inSmalltalk: [trunc := rcvr truncated].
(trunc between: objectMemory minSmallInteger asFloat and: objectMemory maxSmallInteger asFloat)
ifTrue: [self pop: 1 thenPushInteger: trunc asInteger]
ifFalse: [self primitiveFail]!
Item was changed:
----- Method: StackInterpreter>>isFloatObject: (in category 'internal interpreter access') -----
isFloatObject: oop
+ <api>
+ <inline: true>
+ ^objectMemory isFloatInstance: oop!
- ^(objectMemory isNonImmediate: oop)
- and: [ClassFloatCompactIndex = (objectMemory compactClassIndexOf: oop)]!
Item was changed:
----- Method: StackInterpreterPrimitives>>primitiveVMParameter (in category 'system control primitives') -----
(excessive size, no diff calculated)
More information about the Vm-dev
mailing list