Quick Search:

Mode

Context

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

Other Diffs

Ignore

Blank Lines Whitespace: Expand:

Diff

1.26
 
1.27
 
MAIN:ragge:20050628184815
 
optim2.c
_>414414 deljumps()
 415415 {
 416416         struct interpass_prolog *ipp, *epp;
<>417 -        struct interpass *ip, *n, *ip2;
  417+        struct interpass *ip, *n;
418418         int gotone,low, high;
<>419 -        int *lblary, i, sz, o;
  419+        int *lblary, sz;
420420 
 421421         ipp = (struct interpass_prolog *)DLIST_NEXT(&ipole, qelem);
 422422         epp = (struct interpass_prolog *)DLIST_PREV(&ipole, qelem);
     
 !
437437 
 438438 printip(&ipole);
 439439 
<>440 -        /* Delete all goto/branch to the following label */
  440+        /* delete all labels with a following label */
441441         DLIST_FOREACH(ip, &ipole, qelem) {
 442442                 if (ip->type == IP_DEFLAB) {
<> 443+                        n = DLIST_NEXT(ip, qelem);
  444+                        while (n->type == IP_DEFLAB) {
  445+                                lblary[n->ip_lbl-low] = -ip->ip_lbl;
  446+                                DLIST_REMOVE(n, qelem);
  447+                                n = DLIST_NEXT(ip, qelem);
  448+                        }
  449+                        if (n->type == IP_STKOFF) {
  450+                                n = DLIST_NEXT(n, qelem);
  451+                                while (n->type == IP_DEFLAB) {
  452+                                        lblary[n->ip_lbl-low] = -ip->ip_lbl;
  453+                                        DLIST_REMOVE(n, qelem);
  454+                                        n = DLIST_NEXT(n, qelem);
  455+                                }
  456+                        }
  457+                }
  458+        }
  459+
  460+        if (gotone)
  461+                goto again;
  462+
  463+printf("2\n");
  464+printip(&ipole);
  465+
  466+#if 0
  467+ && ip->type != IP_STKOFF)
  468+                        continue;
  469+
  470+                n = DLIST_NEXT(ip, qelem);
  471+                while (n->type == IP_DEFLAB || n->type == IP_STKOFF) {
  472+                        
  473+
  474+
  475+
  476+
  477+
  478+
  479+        DLIST_FOREACH(ip, &ipole, qelem) {
  480+                if (ip->type == IP_DEFLAB) {
443481                         lblary[ip->ip_lbl-low] |= FOUND;
 444482 printf("IP_DEFLAB: %d\n", ip->ip_lbl);
 445483                         ip2 = DLIST_NEXT(ip, qelem);
     
 !
485523         if (gotone)
 486524                 goto again;
 487525 
<> 526+#endif
  527+
<_488528 #ifdef notyet
 489529         tmpfree(mark);
 490530 #endif
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-10-31 20:18 +0100