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

commits at source.squeak.org commits at source.squeak.org
Sun Jan 3 17:19:34 UTC 2021


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

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

Name: VMMaker.oscog-eem.2920
Author: eem
Time: 3 January 2021, 9:19:28.019823 am
UUID: 30a49581-87d4-4b92-b7bc-a109c8a430a2
Ancestors: VMMaker.oscog-eem.2919

Cogit: nuke a couple of unused inst vars.

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

Item was changed:
  ----- Method: CogVMSimulator>>initializeThreadSupport (in category 'initialize-release') -----
  initializeThreadSupport
  	"Do this post new if you want to simulate with thread support."
+ 	cogThreadManager := CogThreadManager new setInterpreter: self cogit: cogit!
- 	cogThreadManager := CogThreadManager new setInterpreter: self cogit: cogit.
- 	cogit setThreadManager: cogThreadManager!

Item was changed:
  CogClass subclass: #Cogit
(excessive size, no diff calculated)

Item was changed:
  ----- Method: Cogit>>setInterpreter: (in category 'initialization') -----
  setInterpreter: aCoInterpreter
  	"Initialization of the code generator in the simulator.
  	 These objects already exist in the generated C VM
  	 or are used only in the simulation."
  	<doNotGenerate>
  	coInterpreter := aCoInterpreter.
  	objectMemory := aCoInterpreter objectMemory.
- 	threadManager := aCoInterpreter threadManager. "N.B. may be nil"
  	methodZone := self class methodZoneClass new.
  	objectRepresentation := objectMemory objectRepresentationClass
  								forCogit: self methodZone: methodZone.
  	methodZone setInterpreter: aCoInterpreter
  				objectRepresentation: objectRepresentation
  				cogit: self.
  	generatorTable := self class generatorTable.
  	processor := ProcessorClass new.
  	simulatedAddresses := Dictionary new.
  	coInterpreter class clusteredVariableNames do:
  		[:cvn| self simulatedAddressFor: (cvn first = $C ifTrue: ['get', cvn] ifFalse: [cvn]) asSymbol].
  	simulatedTrampolines := Dictionary new.
  	simulatedVariableGetters := Dictionary new.
  	simulatedVariableSetters := Dictionary new.
  	traceStores := 0.
  	traceFlags := (self class initializationOptions at: #recordPrimTrace ifAbsent: [true])
  					ifTrue: [8] "record prim trace on by default (see Cogit class>>decareCVarsIn:)"
  					ifFalse: [0].
  	singleStep := printRegisters := printInstructions := clickConfirm := false.
  	backEnd := CogCompilerClass for: self.
  	methodLabel := CogCompilerClass for: self.
  	(literalsManager := backEnd class literalsManagerClass new) cogit: self.
  	ordinarySendTrampolines := CArrayAccessor on: (Array new: NumSendTrampolines).
  	superSendTrampolines := CArrayAccessor on: (Array new: NumSendTrampolines).
  	BytecodeSetHasDirectedSuperSend ifTrue:
  		[directedSuperSendTrampolines := CArrayAccessor on: (Array new: NumSendTrampolines).
  		 directedSuperBindingSendTrampolines := CArrayAccessor on: (Array new: NumSendTrampolines).
  		 directedSendUsesBinding := false].
  	NewspeakVM ifTrue:
  		[selfSendTrampolines := CArrayAccessor on: (Array new: NumSendTrampolines).
  		dynamicSuperSendTrampolines := CArrayAccessor on: (Array new: NumSendTrampolines).
  		implicitReceiverSendTrampolines := CArrayAccessor on: (Array new: NumSendTrampolines).
  		outerSendTrampolines := CArrayAccessor on: (Array new: NumSendTrampolines)].
  	"debug metadata"
  	objectReferencesInRuntime := CArrayAccessor on: (Array new: NumObjRefsInRuntime).
  	runtimeObjectRefIndex := 0.
  	"debug metadata"
  	trampolineAddresses := CArrayAccessor on: (Array new: NumTrampolines * 2).
  	trampolineTableIndex := 0.
  
  	extA := numExtB := extB := 0.
  
  	compilationTrace ifNil: [compilationTrace := self class initializationOptions at: #compilationTrace ifAbsent: [0]].
  	debugOpcodeIndices := self class initializationOptions at: #debugOpcodeIndices ifAbsent: [Set new].
  	debugBytecodePointers := self class initializationOptions at: #debugBytecodePointers ifAbsent: [Set new].
  	self class initializationOptions at: #breakPC ifPresent: [:pc| breakPC := pc]!

Item was removed:
- ----- Method: Cogit>>setThreadManager: (in category 'initialization') -----
- setThreadManager: aCogThreadManager
- 	"Initialization of the code generator in the simulator.
- 	 Used in the separate VM since this VM does not do a second initialization of the interpreter,
- 	 only a second initialization of the objectMemory."
- 	<doNotGenerate>
- 	threadManager := aCogThreadManager "N.B. may be nil"!



More information about the Vm-dev mailing list