Quick Search:

Mode

Context

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

Other Diffs

Ignore

Blank Lines Whitespace: Expand:

Diff

1.102
 
1.103
 
MAIN:gmcgarry:20090328060447
 
local.c
_>8484 
 8585 #define IALLOC(sz)      (isinlining ? permalloc(sz) : tmpalloc(sz))
 8686 
<>87 -#ifndef os_win32
8887 /*
 8988  * Make a symtab entry for PIC use.
 9089  */
     
 !
102101         sp->sflags = sp->slevel = 0;
 103102         return sp;
 104103 }
<> 104+
  105+#ifdef os_win32
  106+static NODE *
  107+import(NODE *p)
  108+{
  109+        NODE *q;
  110+        char *name;
  111+        struct symtab *sp;
  112+
  113+        if ((name = p->n_sp->soname) == NULL)
  114+                name = exname(p->n_sp->sname);
  115+
  116+        sp = picsymtab("__imp_", name, "");
  117+        q = xbcon(0, sp, PTR+VOID);
  118+        q = block(UMUL, q, 0, PTR|VOID, 0, MKSUE(VOID));
  119+        q = block(UMUL, q, 0, p->n_type, p->n_df, p->n_sue);
  120+        q->n_sp = p->n_sp; /* for init */
  121+        nfree(p);
  122+
  123+        return q;
  124+}
105125 #endif
 106126 
 107127 int gotnr; /* tempnum for GOT register */
     
 !
401421                                 break;
 402422                         }
 403423 #endif
<> 424+
  425+#ifdef os_win32
  426+                        if (q->sflags & SDLLINDIRECT)
  427+                                p = import(p);
  428+#endif
404429                         if (kflag == 0)
 405430                                 break;
 406431                         if (blevel > 0)
     
 !
14271452         int size = 0;
 14281453         char buf[256];
 14291454 
<>1430 -        if ((p->n_op == NAME || p->n_op == ICON) &&
 1431 -            p->n_sp && (p->n_sp->sflags & SDLLINDIRECT) && p->n_name) {
 1432 -                snprintf(buf, 256, "__imp_%s", p->n_name);
 1433 -                p->n_name = IALLOC(strlen(buf) + 1);
 1434 -                strcpy(p->n_name, buf);
 1435 -                return;
 1436 -        }
 1437 -
<_14381455         if (p->n_op != CALL && p->n_op != STCALL &&
 14391456             p->n_op != UCALL && p->n_op != USTCALL)
 14401457                 return;
FishEye: Open Source License registered to PCC.
Atlassian FishEye, CVS analysis. (Version:1.6.3 Build:build-336 2008-11-04) - Administration - Page generated 2014-12-26 16:43 +0100