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

commits at source.squeak.org commits at source.squeak.org
Fri Feb 21 03:43:56 UTC 2020


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

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

Name: VMMaker.oscog-eem.2716
Author: eem
Time: 20 February 2020, 7:43:40.793033 pm
UUID: 105b9b3b-c223-40fd-be5c-58c449e7e534
Ancestors: VMMaker.oscog-nice.2715

Cogit: Fox a slip in debug enilopmart generation.

=============== Diff against VMMaker.oscog-nice.2715 ===============

Item was changed:
  ----- Method: Cogit>>generateEnilopmarts (in category 'initialization') -----
  generateEnilopmarts
  	"Enilopmarts transfer control from C into machine code (backwards trampolines)."
  	self cppIf: Debug
  		ifTrue:
  			[realCEEnterCogCodePopReceiverReg :=
  				self genEnilopmartFor: ReceiverResultReg
  					forCall: false
  					called: 'realCEEnterCogCodePopReceiverReg'.
  			 ceEnterCogCodePopReceiverReg := #enterCogCodePopReceiver.
  			 realCECallCogCodePopReceiverReg :=
  				self genEnilopmartFor: ReceiverResultReg
  					forCall: true
+ 					called: 'realCECallCogCodePopReceiverReg'.
- 					called: 'realCEEnterCogCodePopReceiverReg'.
  			 ceCallCogCodePopReceiverReg := #callCogCodePopReceiver.
  			 realCECallCogCodePopReceiverAndClassRegs :=
  				self genEnilopmartFor: ReceiverResultReg
  					and: ClassReg
  					forCall: true
  					called: 'realCECallCogCodePopReceiverAndClassRegs'.
  			 ceCallCogCodePopReceiverAndClassRegs := #callCogCodePopReceiverAndClassRegs]
  		ifFalse:
  			[ceEnterCogCodePopReceiverReg := self genEnilopmartFor: ReceiverResultReg
  														forCall: false
  														called: 'ceEnterCogCodePopReceiverReg'.
  			 ceCallCogCodePopReceiverReg := self genEnilopmartFor: ReceiverResultReg
  													forCall: true
  													called: 'ceCallCogCodePopReceiverReg'.
  			 ceCallCogCodePopReceiverAndClassRegs :=
  				self genEnilopmartFor: ReceiverResultReg
  					and: ClassReg
  					forCall: true
  					called: 'ceCallCogCodePopReceiverAndClassRegs'].
  
  	self genPrimReturnEnterCogCodeEnilopmart: false.
  	cePrimReturnEnterCogCode := methodZoneBase.
  	self outputInstructionsForGeneratedRuntimeAt: cePrimReturnEnterCogCode.
  	self recordGeneratedRunTime: 'cePrimReturnEnterCogCode' address: cePrimReturnEnterCogCode.
  
  	self genPrimReturnEnterCogCodeEnilopmart: true.
  	cePrimReturnEnterCogCodeProfiling := methodZoneBase.
  	self outputInstructionsForGeneratedRuntimeAt: cePrimReturnEnterCogCodeProfiling.
  	self recordGeneratedRunTime: 'cePrimReturnEnterCogCodeProfiling' address: cePrimReturnEnterCogCodeProfiling!



More information about the Vm-dev mailing list