On Tuesday 20 January 2009 09:50:56 Patrick R. Michaud wrote: > > > What's the replacement opcode for n_neg ? > > If we remove n_neg, the replacement is likely a two-step operation: > > > > clone $P1, $P2 > > neg $P1 > > Please, not this -- it's terribly inconsistent. > > When we got rid of the other n_* opcodes, their non-n_* counterparts > were given the "create a new PMC" semantics that the n_* version had. > We should do the same for n_neg, such that what was previously > > n_add $P0, $P1, $P2 # construct $P0 as sum of $P1 and $P2 > n_neg $P0, $P1 # construct $P0 as negation of $P1 > > is now > > add $P0, $P1, $P2 # construct $P0 as sum of $P1 and $P2 > neg $P0, $P1 # construct $P0 as negation of $P1
Hm, now that I look closer, this already exists and works that way. Thus the replacement is to use: neg $P0, $P1 -- c