[Vm-dev] VM Maker: Cog-eem.272.mcz

commits at source.squeak.org commits at source.squeak.org
Wed Jul 15 06:50:51 UTC 2015


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

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

Name: Cog-eem.272
Author: eem
Time: 14 July 2015, 11:50:38.16 pm
UUID: a4782a2a-cf79-4cdf-84fe-24c70abb7fa0
Ancestors: Cog-tpr.271

Keep it simple.  The indirection to a method that answers an array just obfuscates.

=============== Diff against Cog-tpr.271 ===============

Item was removed:
- ----- Method: GdbARMAlien>>callerABISavedSmashRegisterAccessors (in category 'accessing-abstract') -----
- callerABISavedSmashRegisterAccessors
- "limited list of registers to clear out when simulating a naBI call; we need R1 sometimes since many abi calls return 2 results or maybe a 64bit dual-reg value, and LR has to be left alone becasue a leaf call doesn't push it"
- 	^#( r2: r3: )!

Item was removed:
- ----- Method: GdbARMAlien>>callerSavedSmashRegisterAccessors (in category 'accessing-abstract') -----
- callerSavedSmashRegisterAccessors
- 	^#(r0: r1: r2: r3: lr:)!

Item was changed:
  ----- Method: GdbARMAlien>>smashABICallerSavedRegistersWithValuesFrom:by: (in category 'accessing-abstract') -----
  smashABICallerSavedRegistersWithValuesFrom: base by: step
+ 	"limited list of registers to clear out when simulating an ABI call.
+ 	 Smash neither R0 nor R1 since many abi calls return 2 results or a 64-bit dual-reg value.
+ 	 LR has to be left alone becasue a leaf call doesn't push it."
+ 
+ 	#(r2: r3:) withIndexDo:
- 	self callerABISavedSmashRegisterAccessors
- 	   withIndexDo:
  		[:accessor :index|
  		self perform: accessor with: index - 1 * step + base]!

Item was changed:
  ----- Method: GdbARMAlien>>smashCallerSavedRegistersWithValuesFrom:by: (in category 'accessing-abstract') -----
  smashCallerSavedRegistersWithValuesFrom: base by: step
+ 	#(r0: r1: r2: r3: lr:) withIndexDo:
- 	self callerSavedSmashRegisterAccessors
- 	   withIndexDo:
  		[:accessor :index|
  		self perform: accessor with: index - 1 * step + base]!



More information about the Vm-dev mailing list