codea: optimierungen mit lea
[uebersetzerbau-ss10.git] / codea / parser.y
index b5a7e7d8fc7b0f5617be90720381076d6bb14012..b3b3726c781697c1d42ed2b62065141651ae78e5 100644 (file)
@@ -236,9 +236,11 @@ Expr:
 
                @reg {
                        /* TODO */
-                       @Term.node@->reg = @Expr.node@->reg;
-                       @Term.node@->skip = 0;
-                       @Minusterm.node@->reg = next_reg(@Term.node@->reg, @Expr.node@->skip, @Expr.gparamges@);
+                       if(!(@Expr.node@->kids[0] == TREENULL && @Expr.node@->kids[1] == TREENULL)) {
+                               @Term.node@->reg = @Expr.node@->reg;
+                               @Term.node@->skip = 0;
+                               @Minusterm.node@->reg = next_reg(@Term.node@->reg, @Expr.node@->skip, @Expr.gparamges@);
+                       }
                }
          @}