[Vm-dev] Interpreter>>isContextHeader: optimization
David T. Lewis
lewis at mail.msen.com
Mon Feb 23 12:39:23 UTC 2009
On Mon, Feb 23, 2009 at 07:05:39AM +0200, Igor Stasenko wrote:
> i never took a look how method inliner works in code generator. But
> some of its discrepancies is a pain.
> Like unable to inline a method which having cCode, or c variables
I think I forgot to put this on Mantis (sorry), but look at VMMaker-dtl.103
on SqueakSource for the changes that allow inlining methods with embedded C
Time: 24 September 2008, 11:23:59 pm
Supports #inline: directive for methods containing embedded C code (#cCode:).
This includes fixes for Slang generation, case statement translation to C in
the interp() loop, and various type declaration cleanups.
Low level methods with embedded C may now be inlined and translated, permitting
functions that previously required external support code and C macros to be
directly implemented in Slang.
A remaining caveat is that methods with #cCode: strings with references to
method parameters must not request inlining, as the inliner may rename method
parameters such that they no longer match variable names in the embedded C.
More information about the Vm-dev