On Thu, Feb 13, 2014 at 12:28:40AM +0000, commits@source.squeak.org wrote:
David T. Lewis uploaded a new version of VMMaker to project VM Maker: http://source.squeak.org/VMMaker/VMMaker-dtl.340.mcz
==================== Summary ====================
Name: VMMaker-dtl.340 Author: dtl Time: 11 February 2014, 8:04:47.752 pm UUID: 640fa600-e4e0-4cdd-ae74-c6cf1b51b763 Ancestors: VMMaker-dtl.339
VMMaker 4.13.2
For primitiveAllObjects, move the allObjects logic to ObjectMemory.
Incorporate various oscog code generation improvements, including code generation for sending #value: to a block, and elimination of unnecessary temp vars in inlining, for example, generate this:
thisWord = long32At(sourceIndex);
instead of this:
idx7 = sourceIndex; thisWord = long32At(idx7);
A note concerning the code generation - This update results in a regression in that some inlined methods are no longer being inlined, for example fetchClassOf: should be inlined within findSelectorOfMethod:forReceiver: but this is now retained as a function call. I have not identified the reason for the regression, however this update gives a significant reduction in unneeded temporary variable generation, which is an important improvement. Credit for the reduction in temporary variables goes to Eliot, and blame for the inlining regression is mine.
Dave
vm-dev@lists.squeakfoundation.org