From: Alex Brainman Date: Thu, 15 Dec 2011 23:32:14 +0000 (+1100) Subject: ld: allow for IMAGE_REL_AMD64_ADDR32NB relocation type X-Git-Tag: weekly.2011-12-22~163 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=2da651f11537e05fa394df605570f1429cd084db;p=gostls13.git ld: allow for IMAGE_REL_AMD64_ADDR32NB relocation type enable cgo again on windows/amd64 R=rsc, vcc.163 CC=golang-dev https://golang.org/cl/5488074 --- diff --git a/src/Make.inc b/src/Make.inc index 9dc7b8c1c6..7b4ccd0aee 100644 --- a/src/Make.inc +++ b/src/Make.inc @@ -142,9 +142,6 @@ endif ifeq ($(GOOS),netbsd) # ... and not on NetBSD CGO_ENABLED:=0 endif -ifeq ($(GOOS)$(GOARCH),windowsamd64) # ... and not on Windows/amd64 -CGO_ENABLED:=0 -endif endif # Make environment more standard. diff --git a/src/cmd/ld/ldpe.c b/src/cmd/ld/ldpe.c index 8d175b1156..feb8620bdb 100644 --- a/src/cmd/ld/ldpe.c +++ b/src/cmd/ld/ldpe.c @@ -282,6 +282,8 @@ ldpe(Biobuf *f, char *pkg, int64 len, char *pn) diag("%s: unknown relocation type %d;", pn, type); case IMAGE_REL_I386_REL32: case IMAGE_REL_AMD64_REL32: + case IMAGE_REL_AMD64_ADDR32: // R_X86_64_PC32 + case IMAGE_REL_AMD64_ADDR32NB: rp->type = D_PCREL; rp->add = le32(rsect->base+rp->off); break; @@ -291,10 +293,6 @@ ldpe(Biobuf *f, char *pkg, int64 len, char *pn) // load addend from image rp->add = le32(rsect->base+rp->off); break; - case IMAGE_REL_AMD64_ADDR32: // R_X86_64_PC32 - rp->type = D_PCREL; - rp->add += 4; - break; case IMAGE_REL_AMD64_ADDR64: // R_X86_64_64 rp->siz = 8; rp->type = D_ADDR;