Quick Search:

Mode

Context

Displaying 0 lines of context. None | Less | More | Full

Other Diffs

Ignore

Blank Lines Whitespace: Expand:

Diff

1.43
 
1.44
 
MAIN:ragge:20060620060243
 
optim2.c
     
 !
_> 70+static struct interpass *cvpole;
     
 !
<> 90+ * Use stack argument addresses instead of copying if & is used on a var.
  91+ */
  92+static int
  93+setargs(int tval, struct addrof *w)
  94+{
  95+        struct interpass *ip;
  96+        NODE *p;
  97+
  98+        ip = DLIST_NEXT(cvpole, qelem); /* PROLOG */
  99+        ip = DLIST_NEXT(ip, qelem); /* first DEFLAB */
  100+        ip = DLIST_NEXT(ip, qelem); /* first NODE */
  101+        for (; ip->type != IP_DEFLAB; ip = DLIST_NEXT(ip, qelem)) {
  102+                p = ip->ip_node;
  103+#ifdef PCC_DEBUG
  104+                if (p->n_op != ASSIGN || p->n_left->n_op != TEMP)
  105+                        comperr("temparg");
  106+#endif
  107+                if (p->n_right->n_op != OREG)
  108+                        continue; /* arg in register */
  109+                if (tval != p->n_left->n_lval)
  110+                        continue; /* wrong assign */
  111+                w->oregoff = p->n_right->n_lval;
  112+                tfree(p);
  113+                DLIST_REMOVE(ip, qelem);
  114+                return 1;
  115+        }
  116+        return 0;
  117+}
  118+
  119+/*
     
 !
<>102 -        w->oregoff = BITOOR(freetemp(szty(p->n_left->n_type)));
  133+        if (setargs(p->n_left->n_lval, w) == 0)
  134+                w->oregoff = BITOOR(freetemp(szty(p->n_left->n_type)));
     
 !
<> 139+
     
 !
<_ 190+                cvpole = ipole;
FishEye: Open Source License registered to PCC.
Your maintenance has expired. You can renew your license at http://www.atlassian.com/fisheye/renew
Atlassian FishEye, CVS analysis. (Version:1.6.3 Build:build-336 2008-11-04) - Administration - Page generated 2014-11-01 15:05 +0100