OLD | NEW |
1 // Derived from Inferno utils/6l/l.h | 1 // Derived from Inferno utils/6l/l.h |
2 // http://code.google.com/p/inferno-os/source/browse/utils/6l/l.h | 2 // http://code.google.com/p/inferno-os/source/browse/utils/6l/l.h |
3 // | 3 // |
4 // Copyright © 1994-1999 Lucent Technologies Inc. All rights reserved. | 4 // Copyright © 1994-1999 Lucent Technologies Inc. All rights reserved. |
5 // Portions Copyright © 1995-1997 C H Forsyth (forsyth@terzarima.net) | 5 // Portions Copyright © 1995-1997 C H Forsyth (forsyth@terzarima.net) |
6 // Portions Copyright © 1997-1999 Vita Nuova Limited | 6 // Portions Copyright © 1997-1999 Vita Nuova Limited |
7 // Portions Copyright © 2000-2007 Vita Nuova Holdings Limited (www.vitanuov
a.com) | 7 // Portions Copyright © 2000-2007 Vita Nuova Holdings Limited (www.vitanuov
a.com) |
8 // Portions Copyright © 2004,2006 Bruce Ellis | 8 // Portions Copyright © 2004,2006 Bruce Ellis |
9 // Portions Copyright © 2005-2007 C H Forsyth (forsyth@terzarima.net) | 9 // Portions Copyright © 2005-2007 C H Forsyth (forsyth@terzarima.net) |
10 // Revisions Copyright © 2000-2007 Lucent Technologies Inc. and others | 10 // Revisions Copyright © 2000-2007 Lucent Technologies Inc. and others |
(...skipping 29 matching lines...) Expand all Loading... |
40 SGOSTRING, | 40 SGOSTRING, |
41 SRODATA, | 41 SRODATA, |
42 STYPELINK, | 42 STYPELINK, |
43 SGCDATA, | 43 SGCDATA, |
44 SGCBSS, | 44 SGCBSS, |
45 SSYMTAB, | 45 SSYMTAB, |
46 SPCLNTAB, | 46 SPCLNTAB, |
47 SELFROSECT, | 47 SELFROSECT, |
48 SELFSECT, | 48 SELFSECT, |
49 SNOPTRDATA, | 49 SNOPTRDATA, |
| 50 SDATARELRO, |
50 SDATA, | 51 SDATA, |
51 SMACHO, /* Mach-O __nl_symbol_ptr */ | 52 SMACHO, /* Mach-O __nl_symbol_ptr */ |
52 SMACHOGOT, | 53 SMACHOGOT, |
53 SWINDOWS, | 54 SWINDOWS, |
54 SBSS, | 55 SBSS, |
55 SNOPTRBSS, | 56 SNOPTRBSS, |
56 | 57 |
57 SXREF, | 58 SXREF, |
58 SMACHODYNSTR, | 59 SMACHODYNSTR, |
59 SMACHODYNSYM, | 60 SMACHODYNSYM, |
(...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
131 EXTERN uchar inuxi4[4]; | 132 EXTERN uchar inuxi4[4]; |
132 EXTERN uchar inuxi8[8]; | 133 EXTERN uchar inuxi8[8]; |
133 EXTERN char* outfile; | 134 EXTERN char* outfile; |
134 EXTERN int32 nsymbol; | 135 EXTERN int32 nsymbol; |
135 EXTERN char* thestring; | 136 EXTERN char* thestring; |
136 EXTERN int ndynexp; | 137 EXTERN int ndynexp; |
137 EXTERN int havedynamic; | 138 EXTERN int havedynamic; |
138 EXTERN int iscgo; | 139 EXTERN int iscgo; |
139 EXTERN int elfglobalsymndx; | 140 EXTERN int elfglobalsymndx; |
140 EXTERN int flag_race; | 141 EXTERN int flag_race; |
| 142 EXTERN int flag_shared; |
141 EXTERN char* tracksym; | 143 EXTERN char* tracksym; |
142 EXTERN char* interpreter; | 144 EXTERN char* interpreter; |
143 | 145 |
144 EXTERN Segment segtext; | 146 EXTERN Segment segtext; |
145 EXTERN Segment segdata; | 147 EXTERN Segment segdata; |
146 EXTERN Segment segsym; | 148 EXTERN Segment segsym; |
147 EXTERN Segment segdwarf; | 149 EXTERN Segment segdwarf; |
148 | 150 |
149 void addlib(char *src, char *obj); | 151 void addlib(char *src, char *obj); |
150 void addlibpath(char *srcref, char *objref, char *file, char *pkg); | 152 void addlibpath(char *srcref, char *objref, char *file, char *pkg); |
(...skipping 18 matching lines...) Expand all Loading... |
169 void loadlib(void); | 171 void loadlib(void); |
170 void errorexit(void); | 172 void errorexit(void); |
171 void mangle(char*); | 173 void mangle(char*); |
172 void objfile(char *file, char *pkg); | 174 void objfile(char *file, char *pkg); |
173 void libinit(void); | 175 void libinit(void); |
174 void pclntab(void); | 176 void pclntab(void); |
175 void symtab(void); | 177 void symtab(void); |
176 void Lflag(char *arg); | 178 void Lflag(char *arg); |
177 void usage(void); | 179 void usage(void); |
178 void adddynrel(Sym*, Reloc*); | 180 void adddynrel(Sym*, Reloc*); |
| 181 void adddynrela(Sym*, Sym*, Reloc*); |
| 182 Sym* lookuprel(); |
179 void ldobj1(Biobuf *f, char*, int64 len, char *pn); | 183 void ldobj1(Biobuf *f, char*, int64 len, char *pn); |
180 void ldobj(Biobuf*, char*, int64, char*, int); | 184 void ldobj(Biobuf*, char*, int64, char*, int); |
181 void ldelf(Biobuf*, char*, int64, char*); | 185 void ldelf(Biobuf*, char*, int64, char*); |
182 void ldmacho(Biobuf*, char*, int64, char*); | 186 void ldmacho(Biobuf*, char*, int64, char*); |
183 void ldpe(Biobuf*, char*, int64, char*); | 187 void ldpe(Biobuf*, char*, int64, char*); |
184 void ldpkg(Biobuf*, char*, int64, char*, int); | 188 void ldpkg(Biobuf*, char*, int64, char*, int); |
185 void mark(Sym *s); | 189 void mark(Sym *s); |
186 void mkfwd(void); | 190 void mkfwd(void); |
187 char* expandpkg(char*, char*); | 191 char* expandpkg(char*, char*); |
188 void deadcode(void); | 192 void deadcode(void); |
(...skipping 155 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
344 int decodetype_funcoutcount(Sym*); | 348 int decodetype_funcoutcount(Sym*); |
345 Sym* decodetype_funcintype(Sym*, int); | 349 Sym* decodetype_funcintype(Sym*, int); |
346 Sym* decodetype_funcouttype(Sym*, int); | 350 Sym* decodetype_funcouttype(Sym*, int); |
347 int decodetype_structfieldcount(Sym*); | 351 int decodetype_structfieldcount(Sym*); |
348 char* decodetype_structfieldname(Sym*, int); | 352 char* decodetype_structfieldname(Sym*, int); |
349 Sym* decodetype_structfieldtype(Sym*, int); | 353 Sym* decodetype_structfieldtype(Sym*, int); |
350 vlong decodetype_structfieldoffs(Sym*, int); | 354 vlong decodetype_structfieldoffs(Sym*, int); |
351 vlong decodetype_ifacemethodcount(Sym*); | 355 vlong decodetype_ifacemethodcount(Sym*); |
352 | 356 |
353 void sortdynexp(void); | 357 void sortdynexp(void); |
OLD | NEW |