pike.git / src / peep.in

version» Context lines:

pike.git/src/peep.in:1:   // -*- c -*-   // This file is part of Pike. For copyright information see COPYRIGHT.   // Pike is distributed under GPL, LGPL and MPL. See the file COPYING   // for more information. - // $Id: peep.in,v 1.68 2003/12/03 17:12:51 grubba Exp $ + // $Id: peep.in,v 1.69 2004/04/30 20:33:07 grubba Exp $      NOP :   POP_N_ELEMS (0) :   POP_N_ELEMS POP_VALUE : POP_N_ELEMS ($1a + 1)   POP_VALUE POP_VALUE : POP_N_ELEMS (2)   POP_VALUE POP_N_ELEMS : POP_N_ELEMS ($2a + 1)   POP_N_ELEMS POP_N_ELEMS : POP_N_ELEMS ($1a + $2a)   POP_N_ELEMS(1) : POP_VALUE   POP_VALUE POP_TO_MARK : POP_TO_MARK   POP_N_ELEMS POP_TO_MARK : POP_TO_MARK
pike.git/src/peep.in:221:   CONST_1 ADD: ADD_NEG_INT (1)   NUMBER [$1a >= 0] ADD : ADD_INT ($1a)   NUMBER [$1a < 0 && ($1a != -$1a) ] ADD : ADD_NEG_INT (-$1a)      CONST0 SUBTRACT: ADD_INT (0)   CONST1 SUBTRACT: ADD_NEG_INT (-1)   CONST_1 SUBTRACT: ADD_INT (1)   NUMBER [$1a >= 0] SUBTRACT : ADD_NEG_INT ($1a)   NUMBER [$1a < 0 && ($1a != -$1a)] SUBTRACT : ADD_INT (-$1a)    - ADD_INT ADD_INT: ADD_INT ($1a+$2a) - ADD_NEG_INT ADD_NEG_INT: ADD_NEG_INT ($1a+$2a) - ADD_NEG_INT ADD_INT [$1a <= $2a]: ADD_INT ($2a-$1a) - ADD_NEG_INT ADD_INT [$1a > $2a]: ADD_NEG_INT ($1a-$2a) - ADD_INT ADD_NEG_INT [$2a <= $1a]: ADD_INT ($1a-$2a) - ADD_INT ADD_NEG_INT [$2a > $1a]: ADD_NEG_INT ($2a-$1a) + // This set of optimizations is broken. Consider the case: + // STRING ADD_INT ADD_INT + // + // ADD_INT ADD_INT: ADD_INT ($1a+$2a) + // ADD_NEG_INT ADD_NEG_INT: ADD_NEG_INT ($1a+$2a) + // ADD_NEG_INT ADD_INT [$1a <= $2a]: ADD_INT ($2a-$1a) + // ADD_NEG_INT ADD_INT [$1a > $2a]: ADD_NEG_INT ($1a-$2a) + // ADD_INT ADD_NEG_INT [$2a <= $1a]: ADD_INT ($1a-$2a) + // ADD_INT ADD_NEG_INT [$2a > $1a]: ADD_NEG_INT ($2a-$1a)    -  + NUMBER ADD_INT : NUMBER ($1a+$2a) + NUMBER ADD_NEG_INT : NUMBER ($1a-$2a) +    LTOSVAL2 ADD ASSIGN : ADD_TO   LTOSVAL ADD ASSIGN : ADD_TO      LTOSVAL2 ADD_INTS ASSIGN : ADD_TO   LTOSVAL ADD_INTS ASSIGN : ADD_TO      LTOSVAL2 ADD_FLOATS ASSIGN : ADD_TO   LTOSVAL ADD_FLOATS ASSIGN : ADD_TO      LOCAL CONST1 ADD_TO : INC_LOCAL($1a)