aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorRuss Cox <rsc@golang.org>2015-01-29 23:35:14 -0500
committerRuss Cox <rsc@golang.org>2015-02-04 16:50:06 +0000
commit1f2d7bf44fd20d06c21d16df485fa17137fe79f6 (patch)
treec94e9493475cd1d6bafb92cecffe02c9b64757ac /include
parent3e9ed273a244da5d96472656af911a6d2714a9e8 (diff)
downloadgo-1f2d7bf44fd20d06c21d16df485fa17137fe79f6.tar.xz
liblink: require use of TYPE_ADDR, not TYPE_CONST
Add Addr-checking for all Progs on input to liblink, in liblink/pass.c, including requiring use of TYPE_ADDR, not TYPE_CONST. Update compilers and assemblers to satisfy checks. Change-Id: Idac36b9f6805f0451cb541d2338992ca5eaf3963 Reviewed-on: https://go-review.googlesource.com/3801 Reviewed-by: Austin Clements <austin@google.com>
Diffstat (limited to 'include')
-rw-r--r--include/link.h3
1 files changed, 1 insertions, 2 deletions
diff --git a/include/link.h b/include/link.h
index d210e06e55..91993986b3 100644
--- a/include/link.h
+++ b/include/link.h
@@ -62,13 +62,11 @@ typedef struct Pciter Pciter;
//
// $<mem>
// Effective address of memory reference <mem>, defined above.
-// NOTE: Today, on arm and ppc64, type = TYPE_CONST instead.
// Encoding: same as memory reference, but type = TYPE_ADDR.
//
// $<±integer value>
// This is a special case of $<mem>, in which only ±offset is present.
// It has a separate type for easy recognition.
-// NOTE: Today, on arm and ppc64, TYPE_CONST and TYPE_ADDR are merged into just TYPE_CONST.
// Encoding:
// type = TYPE_CONST
// offset = ±integer value
@@ -157,6 +155,7 @@ struct Addr
float64 dval;
Prog* branch;
int32 argsize; // for 5l, 8l
+ uint64 bits; // raw union bits, for testing if anything has been written to any field
} u;
// gotype is the name of the Go type descriptor for sym.