MemoryAccess

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

MemoryAccess

David T. Lewis
 
FYI, repeating from recent discussions on squeak-dev list:

Over the last 2 weeks I've been playing around with replacing the memory
access macros in sqMemoryAccess.h with equivalent Smalltalk slang. Along
the way I found and fixed several slang issues that prevented inlining of
methods with C declarations. I posted a snapshot of this on squeak-dev in
response to a question there, so I'm mentioning here on vm-dev for the
record.

I have the memory access methods working now, and with all the slang
inlining applied I'm seeing about 20% of the performance of the interpreter
using C macros. I don't know if it will be possible or practical to
achieve the performance of the CPP macros, but it does seem useful to
be able to generate the VM entirely in C without macros as an aid to
debugging and possibly profiling

The slang translation bug fixes will be worth capturing on Mantis, and
I'll do so within the next couple of weeks.

The thread on squeak-dev, including the change sets, is here:
  http://lists.squeakfoundation.org/pipermail/squeak-dev/2008-July/129982.html

Dave