[ENH][VM] - faster method activation.

John M McIntosh johnmci at smalltalkconsulting.com
Wed Aug 6 19:28:15 UTC 2003


All methods require activation, and this is a followon to a note I had  
posted a year or more back, altering activateNewMethod but with some  
additions.

In Interpreter>>activateNewMethod and  
Interpreter>>internalActivateNewMethod we move a bunch of data into the  
new method context. These nicely written stores resolve into somewhat  
complex calculations to  store data mostly sequentially into the  
context.  Although smart compilers do common subexpression elimination  
if we choose to alter the smalltalk code to actually represent what we  
want to do, plus alter the two "for loops" a bit why
the compiler becomes much  more happy and generates much more efficient  
code resulting in faster execution.

On the powerpc this results in messages sends becoming 2% faster.

--
======================================================================== 
===
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: SlightlyFasterActivate-JMM.2.cs.gz
Type: application/x-gzip
Size: 1169 bytes
Desc: not available
Url : http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20030806/1831dc23/SlightlyFasterActivate-JMM.2.cs.bin


More information about the Squeak-dev mailing list