Branch: Tag:

1997-03-09

1997-03-09 09:11:13 by Fredrik Hübinette (Hubbe) <hubbe@hubbe.net>

peephole optimizer and code generator bugfixed and improved

Rev: bin/mkpeep.pike:1.3
Rev: src/docode.c:1.13
Rev: src/interpret.c:1.30
Rev: src/language.yacc:1.29
Rev: src/lex.c:1.17
Rev: src/operators.h:1.2
Rev: src/peep.c:1.7
Rev: src/peep.in:1.5
Rev: src/testsuite.in:1.34

4:   ||| See the files COPYING and DISCLAIMER for more information.   \*/   #include "global.h" - RCSID("$Id: interpret.c,v 1.29 1997/03/08 12:54:06 hubbe Exp $"); + RCSID("$Id: interpret.c,v 1.30 1997/03/09 09:11:11 hubbe Exp $");   #include "interpret.h"   #include "object.h"   #include "program.h"
881:    }    break;    +  CASE(F_EQ_OR); +  if(is_eq(sp-2,sp-1)) +  { +  pop_n_elems(2); +  pc+=sizeof(INT32); +  }else{ +  pop_n_elems(2); +  push_int(1); +  DOJUMP(); +  } +  break; +     CASE(F_CATCH);    if(o_catch(pc+sizeof(INT32)))    return; /* There was a return inside the evaluated code */