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

commits at source.squeak.org commits at source.squeak.org
Sun Jul 12 01:50:15 UTC 2020


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

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

Name: VMMaker.oscog-eem.2774
Author: eem
Time: 11 July 2020, 6:50:06.654573 pm
UUID: f6fac8da-39c5-413a-9dec-fd46dade5a44
Ancestors: VMMaker.oscog-eem.2773

Fic a warning from compiling the cogit.

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

Item was changed:
  ----- Method: Cogit>>genInvokeInterpretTrampoline (in category 'initialization') -----
  genInvokeInterpretTrampoline
  	"Switch to the C stack (do *not* save the Smalltalk stack pointers;
  	 this is the caller's responsibility), and invoke interpret PDQ."
  	| startAddress |
  	<inline: false>
  	startAddress := methodZoneBase.
  	self zeroOpcodeIndex.
  	backEnd hasVarBaseRegister ifTrue:
  		[self MoveCq: self varBaseAddress R: VarBaseReg]. "Must happen first; value may be used in genLoadStackPointers"
  	cFramePointerInUse
  		ifTrue: [backEnd genLoadCStackPointers]
  		ifFalse: [backEnd genLoadCStackPointer].
  	"Sideways call interpret so that the stack looks correct, for exception handling etc"
  	backEnd genMarshallNArgs: 0 arg: nil arg: nil arg: nil arg: nil.
  	backEnd hasLinkRegister
  		ifTrue:
  			[self MoveAw: coInterpreter cReturnAddressAddress R: LinkReg]
  		ifFalse:
  			[self MoveAw: coInterpreter cReturnAddressAddress R: ABIResultReg.
  			 backEnd genSubstituteReturnAddressR: ABIResultReg].
  	self JumpFullRT: (self
  						cCode: [#interpret asUnsignedInteger]
  						inSmalltalk: [self simulatedTrampolineFor: #interpret]).
  	self outputInstructionsForGeneratedRuntimeAt: startAddress.
  	self recordGeneratedRunTime: 'ceInvokeInterpret' address: startAddress.
+ 	^self cCoerceSimple: startAddress to: #'void (*)(void)'!
- 	^startAddress!



More information about the Vm-dev mailing list