aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/go-patches/0002-cmd-link-deal-with-ADDR32NB-relocations-the-same-way.patch
diff options
context:
space:
mode:
authorJason A. Donenfeld <Jason@zx2c4.com>2020-11-09 10:58:18 +0100
committerJason A. Donenfeld <Jason@zx2c4.com>2020-11-13 14:42:54 +0100
commit7ae981daefd7d1fc26e3b41d3089e352380d19d7 (patch)
tree558245a5e52851a234e496e3475c1570cb49c24d /go-patches/0002-cmd-link-deal-with-ADDR32NB-relocations-the-same-way.patch
parentglobal: go generate (diff)
downloadwireguard-windows-7ae981daefd7d1fc26e3b41d3089e352380d19d7.tar.xz
wireguard-windows-7ae981daefd7d1fc26e3b41d3089e352380d19d7.zip
build: add linker patches for llvm-rc
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
Diffstat (limited to 'go-patches/0002-cmd-link-deal-with-ADDR32NB-relocations-the-same-way.patch')
-rw-r--r--go-patches/0002-cmd-link-deal-with-ADDR32NB-relocations-the-same-way.patch31
1 files changed, 31 insertions, 0 deletions
diff --git a/go-patches/0002-cmd-link-deal-with-ADDR32NB-relocations-the-same-way.patch b/go-patches/0002-cmd-link-deal-with-ADDR32NB-relocations-the-same-way.patch
new file mode 100644
index 00000000..10137735
--- /dev/null
+++ b/go-patches/0002-cmd-link-deal-with-ADDR32NB-relocations-the-same-way.patch
@@ -0,0 +1,31 @@
+From b82dc55e45ee47e0df9604593c34d41654db45c8 Mon Sep 17 00:00:00 2001
+From: "Jason A. Donenfeld" <Jason@zx2c4.com>
+Date: Sun, 8 Nov 2020 03:09:42 +0100
+Subject: [PATCH 2/8] cmd/link: deal with ADDR32NB relocations the same way as
+ ADDR32 on arm
+
+As far as I can tell, the addend is the same for both of these, and in
+this context we don't really care about setting or unsetting the thumb
+selection bit, so just treat these the same way.
+
+Change-Id: I3756c027239f77778c32b317733df9ac92272580
+---
+ src/cmd/link/internal/loadpe/ldpe.go | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/cmd/link/internal/loadpe/ldpe.go b/src/cmd/link/internal/loadpe/ldpe.go
+index cf76741f43..5839a6a5f2 100644
+--- a/src/cmd/link/internal/loadpe/ldpe.go
++++ b/src/cmd/link/internal/loadpe/ldpe.go
+@@ -308,7 +308,7 @@ func Load(l *loader.Loader, arch *sys.Arch, localSymVersion int, input *bio.Read
+
+ rAdd = int64(int32(binary.LittleEndian.Uint32(sectdata[rsect][rOff:])))
+
+- case IMAGE_REL_ARM_ADDR32:
++ case IMAGE_REL_ARM_ADDR32, IMAGE_REL_ARM_ADDR32NB:
+ rType = objabi.R_ADDR
+
+ rAdd = int64(int32(binary.LittleEndian.Uint32(sectdata[rsect][rOff:])))
+--
+2.29.1
+