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

commits at source.squeak.org commits at source.squeak.org
Sat Jan 14 02:41:22 UTC 2023


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

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

Name: VMMaker.oscog-eem.3301
Author: eem
Time: 13 January 2023, 6:41:01.001136 pm
UUID: c43e2ae6-7086-4eba-b250-9362025ee10c
Ancestors: VMMaker.oscog-eem.3300

speeling rorres

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

Item was changed:
  ----- Method: CogObjectRepresentationFor32BitSpur>>genFetchRegArgsForPerformWithArguments: (in category 'primitive generators') -----
  genFetchRegArgsForPerformWithArguments: sizeReg
+ 	"The arguments are in an array in Arg1Reg. Its size is in sizeReg.
- 	"The arguments are imn an array in Arg1Reg. Its size is in sizeReg.
  	 Load Arg0Reg and Arg1Reg with the first two slots.
  	 Since objects always have at least one slot and are aligned to 64-bits
  	 it is safe to load both args without checking."
  
  	cogit
  		MoveMw: objectMemory baseHeaderSize r: Arg1Reg R: Arg0Reg;
  		MoveMw: objectMemory baseHeaderSize + self wordSize r: Arg1Reg R: Arg1Reg.
  	^0!

Item was changed:
  ----- Method: CogObjectRepresentationFor64BitSpur>>genFetchRegArgsForPerformWithArguments: (in category 'primitive generators') -----
  genFetchRegArgsForPerformWithArguments: sizeReg
+ 	"The arguments are in an array in Arg1Reg. Its size is in sizeReg.
- 	"The arguments are imn an array in Arg1Reg. Its size is in sizeReg.
  	 Load Arg0Reg and Arg1Reg with the first two slots, as appropriate.
  	 Since objects always have at least one slot it is safe to load arg0 without checking.
+ 	 But the array could be at the end of memory so we must check that it has two
- 	 But the array could be at teh end of memory so we must check taht it has two
  	 slots before it is safe to access the second slot."
  
  	| skip |
  	cogit MoveMw: objectMemory baseHeaderSize r: Arg1Reg R: Arg0Reg.
  	cogit CmpCq: 2 R: sizeReg.
  	skip := cogit JumpLess: 0.
  	cogit MoveMw: objectMemory baseHeaderSize + self wordSize r: Arg1Reg R: Arg1Reg.
  	skip jmpTarget: cogit Label.
  	^0!

Item was changed:
  ----- Method: CogObjectRepresentationForSpur>>genFetchRegArgsForPerformWithArguments: (in category 'primitive generators') -----
  genFetchRegArgsForPerformWithArguments: sizeReg
+ 	"The arguments are in an array in Arg1Reg. Its size is in sizeReg.
- 	"The arguments are imn an array in Arg1Reg. Its size is in sizeReg.
  	 Load Arg0Reg and Arg1Reg with the first two slots."
  	^self subclassResponsibility!



More information about the Vm-dev mailing list