[Vm-dev] dispatchOn:in: and inlining bytecode routines
mathk.sue at gmail.com
Sat Apr 12 21:57:39 UTC 2008
Can you show use the smalltalk code?
I think is because your aren't using the internalPush..
On Apr 12, 2008, at 12:40 PM, André Wendt wrote:
> as far as I can see, there's nothing special about BytecodeTable in
> Interpreter that instructs VMMaker to generate a switch statement that
> case 112:
> /* pushReceiverBytecode */
> /* begin fetchNextBytecode */
> currentBytecode = byteAtPointer(++localIP);
> /* begin internalPush: */
> longAtPointerput(localSP += BytesPerWord, foo->receiver);
> However, when I want to dispatch on a code in a subset of bytecodes
> using my own table (for integrating multiple bytecodes into one), I
> case 0:
> instead of an inlined pushReceiverBytecode routine. Needless to say my
> code doesn't compile because of the pushReceiverBytecode() call.
> Why does pushReceiverBytecode get inlined when used with
> but not in my own?
More information about the Vm-dev