Inliner strangeness
Andreas Raab
andreas.raab at gmx.de
Thu Jun 8 20:53:33 UTC 2006
Hi -
I don't know if this behavior has been in the CCode inliner before but I
just noticed that the inliner will forcefully convert iVars to temps if
that iVar is only explicitly referred to in a single method. Like, for
example here:
Interpreter>>getFoo
^self cCode: 'foo'
Interpreter>>setFoo: fooValue
foo := fooValue.
The above will cause the inliner to remove foo from the regular
interpreter variables (even if declared via #declareCVarsIn:) and move
it into #setFoo:. With the foreseeable result of creating total and
utter nonsense in the resulting C code.
Has anyone seen that before?
Cheers,
- Andreas
More information about the Vm-dev
mailing list