[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