help-smalltalk
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Help-smalltalk] Re: Dynamic compilation in GNU Smalltalk


From: Paolo Bonzini
Subject: [Help-smalltalk] Re: Dynamic compilation in GNU Smalltalk
Date: Wed, 17 Aug 2005 14:18:24 +0200
User-agent: Mozilla Thunderbird 0.9 (Macintosh/20041103)

Ludovic Courtès wrote:

Hi,

First, thank you for providing GNU Lightning.  I think it's a very
valuable tool and it ought to be used more widely.

I have a few questions about how it is used in GNU Smalltalk -- you
might want to redirect it to some more appropriate mailing list or
such.  Basically:  does GNU Smalltalk basically compiles bytecode to
native code, or does it also perform specialization or some such, as in
Psyco for instance[1]?

Yes, it specializes code for each instance, but it is used very little right now -- in fact, the only cases in which the methods are different are:

- if the receiver is SmallInteger

- if the method is one of the primitives as #basicAt:, #basicAt:put:, #basicSize, #==, #class in Object or String.

Plus, arithmetic on SmallIntegers is inlined in the method.

The code generator is mostly template-based, with some small optimizations to improve register allocation.

Paolo




reply via email to

[Prev in Thread] Current Thread [Next in Thread]