Quick Search:

Mode

Context

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

Other Diffs

Ignore

Blank Lines Whitespace: Expand:

Diff

1.63
 
1.64
 
MAIN:ragge:20110820104735
 
local.c
_>9494 
 9595         NODE *q;
 9696         struct symtab *sp;
<>97 -        char *c, *g;
  97+        char *c;
9898 
 9999         if (p->n_sp->sflags & SBEENHERE)
 100100                 return p;
 101101 
 102102         c = p->n_sp->soname ? p->n_sp->soname : exname(p->n_sp->sname);
<>103 -#ifdef notdef
 104 -        g = ISFTN(p->n_sp->stype) ? "@PLT" : "@GOTPCREL";
 105 -#endif
 106 -        g = "@GOTPCREL";
 107 -        sp = picsymtab("", c, g);
 108 -        sp->sflags = SBEENHERE;
  103+        sp = picsymtab("", c, "@GOTPCREL");
  104+        sp->sflags |= SBEENHERE;
109105         q = block(NAME, NIL, NIL, INCREF(p->n_type), p->n_df, p->n_ap);
 110106         q->n_sp = sp;
 111107         q = block(UMUL, q, 0, p->n_type, p->n_df, p->n_ap);
     
 !
120116 #endif
 121117 }
 122118 
<>123 -#ifdef notdef
 124 -/*
 125 - * Create a reference for a static variable.
 126 - */
127119 static NODE *
<>128 -picstatic(NODE *p)
 129 -{
 130 -        struct symtab *sp;
 131 -        char *c, buf[32];
 132 -
 133 -        if (p->n_sp->slevel > 0)
 134 -                snprintf(c = buf, 32, LABFMT, (int)p->n_sp->soffset);
 135 -        else
 136 -                c = p->n_sp->soname ? p->n_sp->soname : p->n_sp->sname;
 137 -        sp = picsymtab("", c, "");
 138 -        sp->sclass = STATIC;
 139 -        sp->stype = p->n_sp->stype;
 140 -        p->n_sp = sp;
 141 -        return p;
 142 -}
 143 -#endif
 144 -
 145 -static NODE *
146120 cmop(NODE *l, NODE *r)
 147121 {
 148122         return block(CM, l, r, INT, 0, 0);
     
 !
549523                 p->n_label = p->n_type == FLOAT ? fltxor : dblxor;
 550524                 return;
 551525         }
<> 526+        if (kflag && (cdope(p->n_op) & CALLFLG) && p->n_left->n_op == NAME) {
  527+                /* Convert @GOTPCREL to @PLT */
  528+                char *s;
  529+
  530+                sp = p->n_left->n_sp;
  531+                if ((s = strstr(sp->sname, "@GOTPCREL")) != NULL) {
  532+                        strcpy(s, "@PLT");
  533+                        p->n_left->n_op = ICON;
  534+                }
  535+                return;
  536+        }
552537         if (p->n_op != FCON)
 553538                 return;
 554539 
     
 !
579564 andable(NODE *p)
 580565 {
 581566         if (p->n_sp->sclass == STATIC || p->n_sp->sclass == USTATIC)
<>582 -                return 0;
 583 -        return 1;
  567+                return 1;
  568+        return !kflag;
<_584569 }
 585570 
 586571 /*
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 00:01 +0100