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

commits at source.squeak.org commits at source.squeak.org
Sat Mar 18 02:22:53 UTC 2023


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

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

Name: VMMaker.oscog.seperateMarking-eem.3321
Author: eem
Time: 17 March 2023, 7:22:31.670196 pm
UUID: fd9f113b-524a-45be-a347-babce195e901
Ancestors: VMMaker.oscog.seperateMarking-eem.3320

Fix printStackPage:useCount: in the simulator.

=============== Diff against VMMaker.oscog.seperateMarking-eem.3320 ===============

Item was changed:
  ----- Method: StackInterpreter>>printStackPage:useCount: (in category 'debug printing') -----
  printStackPage: page useCount: n
  	<inline: false>
  	<var: #page type: #'StackPage *'>
+ 	self cCode: '' inSmalltalk: [page isInteger ifTrue: [^self printStackPage: (stackPages stackPageFor: page) useCount: n]].
+ 	self print: 'page ';
+ 		printHexPtrnp: (self cCode: [page] inSmalltalk: [page baseAddress]);
- 	self print: 'page '; printHexPtrnp: (self cCode: [page] inSmalltalk: [page baseAddress]);
  		print: ' ('; printNum: (stackPages pageIndexFor: page realStackLimit).
  	n >= 0 ifTrue:
  		[self print: ','; printNum: n].
  	self print: ')  (trace: '; printNum: page trace; printChar: $).
  	(stackPages isFree: page) ifTrue:
  		[self print: ' (free)'].
  	page = stackPages mostRecentlyUsedPage ifTrue:
  		[self print: ' (MRU)'].
  	page prevPage = stackPages mostRecentlyUsedPage ifTrue:
  		[self print: ' (LRU)'].
  	self cr; tab; print: 'ba: ';
  		printHexPtrnp: page baseAddress; print: ' - sl: ';
  		printHexPtrnp: page realStackLimit; print: ' - sl-so: ';
  		printHexPtrnp: page realStackLimit - self stackLimitOffset; print: ' - la:';
  		printHexPtrnp: page lastAddress.
  	(stackPages isFree: page) ifFalse:
  		[self cr; tab; print: 'baseFP '; printHexPtrnp: page baseFP.
  		 self "cr;" tab; print: 'headFP '; printHexPtrnp: page headFP.
  		 self "cr;" tab; print: 'headSP '; printHexPtrnp: page headSP].
  	self cr; tab; print: 'prev '; printHexPtrnp: (self cCode: 'page->prevPage' inSmalltalk: [page prevPage baseAddress]);
  		print: ' ('; printNum: (stackPages pageIndexFor: page prevPage realStackLimit); printChar: $).
  	self tab; print: 'next '; printHexPtrnp: (self cCode: 'page->nextPage' inSmalltalk: [page nextPage baseAddress]);
  		print: ' ('; printNum: (stackPages pageIndexFor: page nextPage realStackLimit); printChar: $).
  	self cr!



More information about the Vm-dev mailing list