diff options
| author | Austin Clements <austin@google.com> | 2014-12-16 14:12:01 -0500 |
|---|---|---|
| committer | Austin Clements <austin@google.com> | 2015-01-07 20:35:13 +0000 |
| commit | fcdffb3f334ae4bfa5fda2c01b3cc51c3c4e5715 (patch) | |
| tree | 9ef6e328e41335942e9e8dba89a5f64bf06f0fab /src/cmd/ld/ldelf.c | |
| parent | e32fe2049d41cefabe0380212beb2aea86a1789b (diff) | |
| download | go-fcdffb3f334ae4bfa5fda2c01b3cc51c3c4e5715.tar.xz | |
cmd/ld: support 2 byte relocations
ppc64 has a bunch of these.
Change-Id: I3b93ed2bae378322a8dec036b1681e520b56ff53
Reviewed-on: https://go-review.googlesource.com/2003
Reviewed-by: Russ Cox <rsc@golang.org>
Reviewed-by: Minux Ma <minux@golang.org>
Diffstat (limited to 'src/cmd/ld/ldelf.c')
| -rw-r--r-- | src/cmd/ld/ldelf.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/cmd/ld/ldelf.c b/src/cmd/ld/ldelf.c index 90da4aeb8f..f289fb38c7 100644 --- a/src/cmd/ld/ldelf.c +++ b/src/cmd/ld/ldelf.c @@ -721,6 +721,8 @@ ldelf(Biobuf *f, char *pkg, int64 len, char *pn) else diag("invalid rela size %d", rp->siz); } + if(rp->siz == 2) + rp->add = (int16)rp->add; if(rp->siz == 4) rp->add = (int32)rp->add; //print("rel %s %d %d %s %#llx\n", sect->sym->name, rp->type, rp->siz, rp->sym->name, rp->add); |
