[ENH][VM] - mark/sweep changes & correction to headerTypeBytes
references
John M McIntosh
johnmci at mac.com
Tue Jul 8 00:24:04 UTC 2003
Mmm if you understand what CArrayAccessor does, then you understand
that you don't need
to add one when you use a 'C array' in InterpreterSimulator. This
changeset removes the unneeded +1
and tweaks the mark/sweep logic just a bit to remove a global variable
reference, and an unneeded
double store.
Some of you might note the addition of a instance variable
youngStartLocal to Interpreter, but thru the
magic of VMMaker that gets folded into a local variable, versus a
global in markAndTrace: which then
removes a clock cycle, and stall from every object reference in the GC
logic. A tiny but annoying detail when I
wanted to ensure all major usages of variables are register based if
possible.
If someone has an working InterpreterSimulator they need to test to
make sure I didn't break anything
because I've not run a smoke test with this change set on
InterpreterSimulator.
--
========================================================================
===
John M. McIntosh <johnmci at smalltalkconsulting.com> 1-800-477-2659
Corporate Smalltalk Consulting Ltd. http://www.smalltalkconsulting.com
========================================================================
===
-------------- next part --------------
A non-text attachment was scrubbed...
Name: BitOfGCTuning-JMM.5.cs.gz
Type: application/x-gzip
Size: 5239 bytes
Desc: not available
Url : http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20030707/113758d2/BitOfGCTuning-JMM.5.cs.bin
More information about the Squeak-dev
mailing list
|