[Vm-dev] VM Maker: VMMaker-tfel.366.mcz

commits at source.squeak.org commits at source.squeak.org
Fri Jun 26 08:41:38 UTC 2015


Tim Felgentreff uploaded a new version of VMMaker to project VM Maker:
http://source.squeak.org/VMMaker/VMMaker-tfel.366.mcz

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

Name: VMMaker-tfel.366
Author: tfel
Time: 26 June 2015, 10:40:04.956 am
UUID: b4da3f6b-e222-d54d-b56e-a9f17c6aa6b2
Ancestors: VMMaker-tfel.365, VMMaker-bak.363

fix some code paths in the BalloonEngineSimulation that are used when rendering true type fonts

=============== Diff against VMMaker-tfel.365 ===============

Item was changed:
  ----- Method: BalloonEngineSimulation>>loadPointShortAt:from: (in category 'simulation') -----
+ loadPointShortAt: index from: intArray 
- loadPointShortAt: index from: intArray
  	"Load the short value from the given index in intArray"
- 
  	| long |
  	long := intArray at: index // 2.
+ 	long isPoint
+ 		ifTrue: [^ (index bitAnd: 1)
+ 					= 0
+ 				ifTrue: [long x]
+ 				ifFalse: [long y]].
+ 	^ ((index bitAnd: 1)
+ 			= 0
+ 		ifTrue: [interpreterProxy halfWordHighInLong32: long]
+ 		ifFalse: [interpreterProxy halfWordLowInLong32: long]) signedIntFromShort
- 	^ ((index bitAnd: 1) = 0
- 		ifTrue:[interpreterProxy halfWordHighInLong32: long]
- 		ifFalse:[interpreterProxy halfWordLowInLong32: long])
- 		signedIntFromShort
  !

Item was changed:
+ ----- Method: BalloonEngineSimulation>>loadWordTransformFrom:into:length: (in category 'simulation') -----
+ loadWordTransformFrom: transformOop into: destPtr length: n 
- ----- Method: BalloonEngineSimulation>>loadWordTransformFrom:into:length: (in category 'initialize') -----
- loadWordTransformFrom: transformOop into: destPtr length: n
  	"Load a float array transformation from the given oop"
- 
  	| srcPtr wordDestPtr |
+ 	false
+ 		ifTrue: [^ super
+ 				loadWordTransformFrom: transformOop
+ 				into: destPtr
+ 				length: n].
- 
- 	false ifTrue:
- 		[^super loadWordTransformFrom: transformOop into: destPtr length: n].
- 
  	srcPtr := interpreterProxy firstIndexableField: transformOop.
+ 	wordDestPtr := destPtr as: CArrayAccessor.
+ 	"Remove float conversion shell"
+ 	0 to: n - 1
+ 		do: [:i | wordDestPtr at: i put: (srcPtr floatAt: i) asIEEE32BitWord]
+ !
- 	wordDestPtr := destPtr as: CArrayAccessor.  "Remove float conversion shell"
- 	0 to: n-1 do: [:i | wordDestPtr at: i put: (srcPtr floatAt: i)]!

Item was added:
+ ----- Method: CArrayAccessor>>floatAt: (in category 'accessing') -----
+ floatAt: index 
+ 	^ (self at: index) isFloat
+ 		ifTrue: [self at: index]
+ 		ifFalse: [Float
+ 				fromIEEE32Bit: (self at: index)]
+ !



More information about the Vm-dev mailing list