|
I am trying figure out a way to make ifTrue:, ifFalse:,
ifTrue:ifFalse:, and ifFalse:ifTrue: as bytecodePrims with special
selectors which I can normalSend on bytecodePrim failure (like if the
receiver is not a Boolean). To do this I think I need to build a
difference parse tree for those selectors, emit special selectors
which matchup to new bytecodePrim methods, write those bytecodePrim
methods, and add to the list of special selectors, among other things.
As a guide for how to do this, I am looking to see how
bytecodePrimAdd is invoked. The compiler, through the SelectorNode,
is encoding a "special send"/SendPlus of value 176. What I don't see
is how the Compiler arrives at using this code? Could someone
provide some guidance?
thanks,
Rob
|