[Vm-dev] VM Maker: VMMaker-dtl.345.mcz
commits at source.squeak.org
commits at source.squeak.org
Wed Mar 12 23:29:38 UTC 2014
David T. Lewis uploaded a new version of VMMaker to project VM Maker:
http://source.squeak.org/VMMaker/VMMaker-dtl.345.mcz
==================== Summary ====================
Name: VMMaker-dtl.345
Author: dtl
Time: 12 March 2014, 7:28:15.468 pm
UUID: 68b2de23-462c-408f-b14b-b4bafb2ba594
Ancestors: VMMaker-dtl.344
Add a unit test to document the inlining bug that was addressed in VMMaker-dtl.344
=============== Diff against VMMaker-dtl.344 ===============
Item was added:
+ ----- Method: SlangTest>>testFetchClassOfIsFullyInlined (in category 'testing interpreter') -----
+ testFetchClassOfIsFullyInlined
+ "Test for inlining error resolved in VMMaker 4.13.4 (VMMaker-dtl.343).. In this example,
+ the ObjectMemoy>>wordMask method must be inlined (marked complete) in order for
+ fetchClassOf: to be inlined. Some versions of the inliner treat the #cCode:inSmalltalk:
+ at the root of the wordMask method as an indication that it is not completely inlined.
+ This in turn prevents fetchClassOf: from being inlined."
+
+ | stssi m |
+ stssi := SlangTestSupportInterpreter inline: true.
+ m := stssi asCString: #tryInliningForFetchClassOf:.
+ self deny: ('*fetchClassOf(rcvr);*' match: m). "fetchClassOf() should not appear as a function call"
+ self assert: ('*/# begin fetchClassOf: #/*' match: m). "fetchClassOf: has been inlined"
+ !
Item was added:
+ ----- Method: SlangTestSupportInterpreter>>tryInliningForFetchClassOf: (in category 'inlining') -----
+ tryInliningForFetchClassOf: rcvr
+
+ objectMemory fetchClassOf: rcvr
+ !
More information about the Vm-dev
mailing list