Branch: Tag:

2000-08-31

2000-08-31 21:57:13 by Henrik Grubbström (Grubba) <grubba@grubba.org>

Fixed possible bug in optimizer.
Improved optimization of return statements.

Rev: src/las.c:1.201

5:   \*/   /**/   #include "global.h" - RCSID("$Id: las.c,v 1.200 2000/08/31 14:16:55 grubba Exp $"); + RCSID("$Id: las.c,v 1.201 2000/08/31 21:57:13 grubba Exp $");      #include "language.h"   #include "interpret.h"
3931:    if(n->tree_info & (OPT_NOT_CONST|    OPT_SIDE_EFFECT|    OPT_EXTERNAL_DEPEND| -  OPT_ASSIGNMENT)) +  OPT_ASSIGNMENT| +  OPT_RETURN))    {    if(car_is_node(n) &&    !(CAR(n)->tree_info & (OPT_NOT_CONST|    OPT_SIDE_EFFECT|    OPT_EXTERNAL_DEPEND| -  OPT_ASSIGNMENT)) && +  OPT_ASSIGNMENT| +  OPT_RETURN)) &&    (CAR(n)->tree_info & OPT_TRY_OPTIMIZE) &&    CAR(n)->token != ':')    {
3958:    !(CDR(n)->tree_info & (OPT_NOT_CONST|    OPT_SIDE_EFFECT|    OPT_EXTERNAL_DEPEND| -  OPT_ASSIGNMENT)) && +  OPT_ASSIGNMENT| +  OPT_RETURN)) &&    (CDR(n)->tree_info & OPT_TRY_OPTIMIZE) &&    CDR(n)->token != ':')    {