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

commits at source.squeak.org commits at source.squeak.org
Sat Oct 24 03:24:52 UTC 2020


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

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

Name: VMMaker.oscog-eem.2852
Author: eem
Time: 23 October 2020, 8:24:42.571147 pm
UUID: f24c4594-b9be-4ec7-877f-e23945ed8dfa
Ancestors: VMMaker.oscog-eem.2851

Refactoring to start reviving CoInterpreterMT.

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

Item was added:
+ ----- Method: CoInterpreter>>setFramePointer:stackPointer:for: (in category 'initialization') -----
+ setFramePointer: cFramePointer stackPointer: cStackPointer for: processor
+ 	<doNotGenerate>
+ 	processor
+ 		setFramePointer: (self setCFramePointer: cFramePointer)
+ 		stackPointer: (self setCStackPointer: cStackPointer)!

Item was added:
+ ----- Method: CoInterpreterMT>>setFramePointer:stackPointer:for: (in category 'initialization') -----
+ setFramePointer: cFramePointer stackPointer: cStackPointer for: processor
+ 	<doNotGenerate>
+ 	self flag: #design.
+ 	CFramePointer ifNil:
+ 		[self setCFramePointer: cFramePointer; setCStackPointer: cStackPointer].
+ 	processor
+ 		setFramePointer: cFramePointer
+ 		stackPointer: cStackPointer!

Item was changed:
  ----- Method: CogVMSimulator>>codeGeneratorToComputeAccessorDepth (in category 'primitive support') -----
  codeGeneratorToComputeAccessorDepth
  	^(VMMaker new
+ 		buildCodeGeneratorForInterpreter: (COGMTVM ifTrue: [CoInterpreterMT] ifFalse: [CoInterpreterPrimitives])
- 		buildCodeGeneratorForInterpreter: CoInterpreterPrimitives
  		includeAPIMethods: false
  		initializeClasses: false)
  			logger: self transcript;
  			yourself!

Item was changed:
  ----- Method: Cogit>>initializeProcessorStack: (in category 'initialization') -----
  initializeProcessorStack: rumpCStackAddress
  	"Initialize the simulation processor's stack pointers, arranging that they are somewhere on the rump C stack."
  	<doNotGenerate>
  	| stackPad cFramePointer cStackPointer |
  	stackPad := 64 max: cStackAlignment.
  	cStackPointer := rumpCStackAddress - stackPad + expectedSPAlignment.
  	cFramePointer := rumpCStackAddress - stackPad + cStackAlignment + expectedFPAlignment.
  	self assert: cStackPointer \\ cStackAlignment = expectedSPAlignment.
  	self assert: cFramePointer \\ cStackAlignment = expectedFPAlignment.
+ 	coInterpreter setFramePointer: cFramePointer stackPointer: cStackPointer for: processor!
- 	processor
- 		setFramePointer: (coInterpreter setCFramePointer: cFramePointer)
- 		stackPointer: (coInterpreter setCStackPointer: cStackPointer)!



More information about the Vm-dev mailing list