Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code | Sign in
(694)

Side by Side Diff: include/link.h

Issue 88190043: code review 88190043: liblink, cmd/ld: reenable nosplit checking and test (Closed)
Patch Set: diff -r 738877993c83 https://code.google.com/p/go/ Created 10 years, 11 months ago
Left:
Right:
Use n/p to move between diff chunks; N/P to move between comments. Please Sign in to add in-line comments.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | src/cmd/6l/asm.c » ('j') | src/cmd/6l/asm.c » ('J')
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Derived from Inferno utils/6l/l.h and related files. 1 // Derived from Inferno utils/6l/l.h and related files.
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 106 matching lines...) Expand 10 before | Expand all | Expand 10 after
117 // prevent incompatible type signatures between liblink and 8l on Plan 9 117 // prevent incompatible type signatures between liblink and 8l on Plan 9
118 #pragma incomplete struct Section 118 #pragma incomplete struct Section
119 119
120 struct LSym 120 struct LSym
121 { 121 {
122 char* name; 122 char* name;
123 char* extname; // name used in external object files 123 char* extname; // name used in external object files
124 short type; 124 short type;
125 short version; 125 short version;
126 uchar dupok; 126 uchar dupok;
127 uchar external;
128 uchar nosplit;
127 uchar reachable; 129 uchar reachable;
128 uchar cgoexport; 130 uchar cgoexport;
129 uchar special; 131 uchar special;
130 uchar stkcheck; 132 uchar stkcheck;
131 uchar hide; 133 uchar hide;
132 uchar leaf; // arm only 134 uchar leaf; // arm only
133 uchar fnptr; // arm only 135 uchar fnptr; // arm only
134 uchar seenglobl; 136 uchar seenglobl;
135 uchar onlist; // on the textp or datap lists 137 uchar onlist; // on the textp or datap lists
136 int16 symid; // for writing .5/.6/.8 files 138 int16 symid; // for writing .5/.6/.8 files
(...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after
222 SSUB = 1<<8, /* sub-symbol, linked from parent via ->sub list */ 224 SSUB = 1<<8, /* sub-symbol, linked from parent via ->sub list */
223 SMASK = SSUB - 1, 225 SMASK = SSUB - 1,
224 SHIDDEN = 1<<9, // hidden or local symbol 226 SHIDDEN = 1<<9, // hidden or local symbol
225 }; 227 };
226 228
227 // Reloc.type 229 // Reloc.type
228 enum 230 enum
229 { 231 {
230 R_ADDR = 1, 232 R_ADDR = 1,
231 R_SIZE, 233 R_SIZE,
232 » R_CALL, 234 » R_CALL, // relocation for direct call
iant 2014/04/16 21:29:09 The way this is used in the machine-independent co
rsc 2014/04/16 22:59:16 Thanks. Changed, and changed ARM to use R_CALLARM.
235 » R_CALLIND, // marker for indirect call (no actual relocating necessary)
233 R_CONST, 236 R_CONST,
234 R_PCREL, 237 R_PCREL,
235 R_TLS, 238 R_TLS,
236 R_TLS_LE, // TLS local exec offset from TLS segment register 239 R_TLS_LE, // TLS local exec offset from TLS segment register
237 R_TLS_IE, // TLS initial exec offset from TLS base pointer 240 R_TLS_IE, // TLS initial exec offset from TLS base pointer
238 R_GOTOFF, 241 R_GOTOFF,
239 R_PLT0, 242 R_PLT0,
240 R_PLT1, 243 R_PLT1,
241 R_PLT2, 244 R_PLT2,
242 }; 245 };
(...skipping 358 matching lines...) Expand 10 before | Expand all | Expand 10 after
601 604
602 #pragma varargck type "A" int 605 #pragma varargck type "A" int
603 #pragma varargck type "D" Addr* 606 #pragma varargck type "D" Addr*
604 #pragma varargck type "lD" Addr* 607 #pragma varargck type "lD" Addr*
605 #pragma varargck type "P" Prog* 608 #pragma varargck type "P" Prog*
606 #pragma varargck type "R" int 609 #pragma varargck type "R" int
607 610
608 // TODO(ality): remove this workaround. 611 // TODO(ality): remove this workaround.
609 // It's here because Pconv in liblink/list?.c references %L. 612 // It's here because Pconv in liblink/list?.c references %L.
610 #pragma varargck type "L" int32 613 #pragma varargck type "L" int32
OLDNEW
« no previous file with comments | « no previous file | src/cmd/6l/asm.c » ('j') | src/cmd/6l/asm.c » ('J')

Powered by Google App Engine
RSS Feeds Recent Issues | This issue
This is Rietveld f62528b