Quick Search:

Mode

Context

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

Other Diffs

Ignore

Blank Lines Whitespace: Expand:

Diff

1.77
 
1.78
 
MAIN:ragge:20040429163048
 
reader.c
_>117117                 cerror("not logop branch");
 118118         if ((dope[p->n_op] & ASGOPFLG) && p->n_op != RETURN)
 119119                 cerror("asgop %d slipped through", p->n_op);
<> 120+        if (p->n_op ==CALL)
  121+                cerror("non-UCALL node");
120122 }
 121123 #endif
 122124 
     
 !
134136 
 135137         /* generate code for the tree p */
 136138 #ifdef PCC_DEBUG
<> 139+        fprintf(stderr, "Entering pass2\n");
137140         walkf(p, cktree);
 138141         if (e2debug)
 139142                 fwalk(p, e2print, 0);
     
 !
149152         for (i = 0; i < deli; ++i)
 150153                 codgen(deltrees[i], FOREFF);  /* do the rest */
 151154         tfree(p);
<>152 -        allchk();
153155 }
 154156 
 155157 /* look for delayable ++ and -- operators */
     
 !
159161         int ty = optype(p->n_op);
 160162 
 161163         switch (p->n_op) {
<>162 -        case CALL:
163164         case UCALL:
 164165         case STCALL:
 165166         case USTCALL:
     
 !
274275 #endif
 275276         do {
 276277                 geninsn(p, cookie); /* Assign instructions for tree */
<> 278+#ifdef PCC_DEBUG
  279+                if (udebug) {
  280+                        printf("sucomp called on:\n");
  281+                        fwalk(p, e2print, 0);
  282+                }
  283+#endif
277284         } while (sucomp(p) < 0);  /* Calculate sub-tree evaluation order */
 278285 #ifdef PCC_DEBUG
 279286         if (udebug) {
     
 !
530537                 p->n_su = rv;
 531538                 break;
 532539 
<>533 -#if 0
 534 -                if (gencall(p, cookie))
 535 -                        goto failed;
 536 -                if (cookie == FOREFF)
 537 -                        p->n_type = VOID; /* XXX */
 538 -                gotcall = 1;
 539 -                break;
 540 -#endif
 541 -
542540         case CBRANCH:
 543541                 p1 = p->n_left;
 544542                 p2 = p->n_right;
     
 !
610608                 return sucomp(p->n_left);
 611609 
 612610         if (p->n_op == UCALL) {
<>613 -                if (sucomp(p->n_left) < 0)
  611+                if ((p->n_su & LMASK) && sucomp(p->n_left) < 0)
614612                         return -1;
 615613                 return fregs;
 616614         }
     
 !
15921590         fwalk(nodepole, e2print, 0);
 15931591         exit(1);
 15941592 }
<_ 1593+
  1594+/*
  1595+ * allocate k integers worth of temp space
  1596+ * we also make the convention that, if the number of words is
  1597+ * more than 1, it must be aligned for storing doubles...
  1598+ */
  1599+int
  1600+freetemp(int k)
  1601+{
  1602+#ifndef BACKTEMP
  1603+        int t;
  1604+
  1605+        if (k > 1)
  1606+                SETOFF(autooff, ALDOUBLE);
  1607+
  1608+        t = autooff;
  1609+        autooff += k*SZINT;
  1610+        if (autooff > maxautooff)
  1611+                maxautooff = autooff;
  1612+        return (t);
  1613+
  1614+#else
  1615+        autooff += k*SZINT;
  1616+        if (k > 1)
  1617+                SETOFF(autooff, ALDOUBLE);
  1618+
  1619+        if (autooff > maxautooff)
  1620+                maxautooff = autooff;
  1621+        return( -autooff );
  1622+#endif
  1623+        }
  1624+
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-07-10 22:38 +0200