VM Maker: VMMaker.oscog-eem.2619.mcz

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

VM Maker: VMMaker.oscog-eem.2619.mcz

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

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

Name: VMMaker.oscog-eem.2619
Author: eem
Time: 18 December 2019, 1:02:04.38318 am
UUID: 32d2df83-b3bb-4e3e-8611-914c4da32d05
Ancestors: VMMaker.oscog-eem.2618

Ensure the methodZoneBase is correctly aligned after initialization, ready for the first method.

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

Item was added:
+ ----- Method: Cogit>>alignMethodZoneBase (in category 'initialization') -----
+ alignMethodZoneBase
+ "Align methodZoneBase to that for the start of a method."
+ | oldBase |
+ oldBase := methodZoneBase.
+ methodZoneBase := methodZone roundUpLength: methodZoneBase.
+ backEnd stopsFrom: oldBase to: methodZoneBase - 1!

Item was changed:
  ----- Method: Cogit>>initializeCodeZoneFrom:upTo: (in category 'initialization') -----
  initializeCodeZoneFrom: startAddress upTo: endAddress
  <api>
  self initializeBackend.
  backEnd stopsFrom: startAddress to: endAddress - 1.
  self cCode: [self sqMakeMemoryExecutableFrom: startAddress To: endAddress]
  inSmalltalk:
  [startAddress = self class guardPageSize ifTrue:
  [backEnd stopsFrom: 0 to: endAddress - 1].
  self initializeProcessor].
  codeBase := methodZoneBase := startAddress.
  minValidCallAddress := (codeBase min: coInterpreter interpretAddress)
  min: coInterpreter primitiveFailAddress.
  methodZone manageFrom: methodZoneBase to: endAddress.
  self maybeGenerateCheckFeatures.
  self maybeGenerateCheckLZCNT.
  self maybeGenerateICacheFlush.
  self generateVMOwnerLockFunctions.
  self genGetLeafCallStackPointer.
  self generateStackPointerCapture.
  self generateTrampolines.
  self computeEntryOffsets.
  self computeFullBlockEntryOffsets.
  self generateClosedPICPrototype.
+ self alignMethodZoneBase.
  "repeat so that now the methodZone ignores the generated run-time"
  methodZone manageFrom: methodZoneBase to: endAddress.
  "N.B. this is assumed to be the last thing done in initialization; see Cogit>>initialized"
  self generateOpenPICPrototype!