reduce memory usage (again)
authorceriel <none@none>
Fri, 1 Feb 1991 10:21:39 +0000 (10:21 +0000)
committerceriel <none@none>
Fri, 1 Feb 1991 10:21:39 +0000 (10:21 +0000)
util/opt/line.h
util/opt/process.c
util/opt/tes.c

index f282e9e..502467b 100644 (file)
@@ -70,7 +70,6 @@ typedef union {
 
 struct line {
        line_p          l_next;         /* maintains linked list */
-       line_p          l_prev;         /* for back referencing loc's */
        byte            l_instr;        /* instruction number */
        byte            l_optyp;        /* specifies what follows */
        un_l_a          l_a;
index 9f860f0..ce3a628 100644 (file)
@@ -191,14 +191,14 @@ symvalue() {
 
 do_tes()
 {
-       register line_p insptr = instrs, oldlin = NULL;
+       register line_p insptr = instrs, oldlin = NULL, oldlin2 = NULL;
 
        init_state();
        tes_pseudos();
        while (insptr != NULL) {
-               insptr->l_prev = oldlin;
+               tes_instr(insptr, oldlin, oldlin2);
+               oldlin2 = oldlin;
                oldlin = insptr;
-               tes_instr(insptr);
                insptr = insptr->l_next;
        }
 }
index 355042a..6e484f0 100644 (file)
@@ -30,7 +30,6 @@ extern char flow_tab[];
 
 #define INSTR(lnp)      (lnp->l_instr & BMASK)
 #define TYPE(lnp)       lnp->l_optyp
-#define PREV(lnp)       lnp->l_prev
 #define SHORT(lnp)      lnp->l_a.la_short
 #define MINI(lnp)      ((lnp->l_optyp & BMASK) - Z_OPMINI)
 
@@ -69,14 +68,12 @@ tes_pseudos()
        }
 }
 
-tes_instr(lnp)
-line_p lnp;
+tes_instr(lnp, x, y)
+line_p lnp, x, y;
 {
        char *s;
        register instr = INSTR(lnp);
        register int arg, argdef;
-       line_p x = PREV(lnp);
-       line_p y = (x == (line_p) 0 ? (line_p) 0 : PREV(x));
        int neg = 0;
 
        if (instr == op_lab) {