summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorRuss Cox <rsc@golang.org>2014-10-14 23:25:12 -0400
committerRuss Cox <rsc@golang.org>2014-10-14 23:25:12 -0400
commit601416627d7e4d21399144e43ca539707badbf61 (patch)
tree37368e97beec79dee773662ab08335ffd9d6772b /include
parentf617e5520bbfe677fed06a1fd2bfedd5ef61a5ef (diff)
downloadgo-601416627d7e4d21399144e43ca539707badbf61.tar.gz
liblink: require DATA lines to be ordered by offset, with no overlap
The assembler could give a better error, but this one is good enough for now. Fixes issue 8880. LGTM=r R=r CC=golang-codereviews https://codereview.appspot.com/153610043
Diffstat (limited to 'include')
-rw-r--r--include/link.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/include/link.h b/include/link.h
index 845f9338d..05e117c87 100644
--- a/include/link.h
+++ b/include/link.h
@@ -373,6 +373,7 @@ struct Link
char* trimpath;
char* goroot;
char* goroot_final;
+ int32 enforce_data_order; // for use by assembler
// hash table of all symbols
LSym* hash[LINKHASH];
@@ -542,6 +543,7 @@ vlong adduint8(Link *ctxt, LSym *s, uint8 v);
vlong adduintxx(Link *ctxt, LSym *s, uint64 v, int wid);
void mangle(char *file);
void savedata(Link *ctxt, LSym *s, Prog *p, char *pn);
+void savedata1(Link *ctxt, LSym *s, Prog *p, char *pn, int enforce_order);
vlong setaddr(Link *ctxt, LSym *s, vlong off, LSym *t);
vlong setaddrplus(Link *ctxt, LSym *s, vlong off, LSym *t, vlong add);
vlong setuint16(Link *ctxt, LSym *s, vlong r, uint16 v);