aboutsummaryrefslogtreecommitdiffstats
path: root/main/musl/0009-add-PIE-support-for-ARM.patch
diff options
context:
space:
mode:
Diffstat (limited to 'main/musl/0009-add-PIE-support-for-ARM.patch')
-rw-r--r--main/musl/0009-add-PIE-support-for-ARM.patch49
1 files changed, 49 insertions, 0 deletions
diff --git a/main/musl/0009-add-PIE-support-for-ARM.patch b/main/musl/0009-add-PIE-support-for-ARM.patch
new file mode 100644
index 0000000000..3ced0277a9
--- /dev/null
+++ b/main/musl/0009-add-PIE-support-for-ARM.patch
@@ -0,0 +1,49 @@
+From 84934ac8bcebb41ffca1703d97512682069c68ec Mon Sep 17 00:00:00 2001
+From: Rich Felker <dalias@aerifal.cx>
+Date: Wed, 10 Jul 2013 16:58:27 -0400
+Subject: [PATCH 9/9] add PIE support for ARM
+
+---
+ crt/arm/Scrt1.s | 30 ++++++++++++++++++++++++++++++
+ 1 file changed, 30 insertions(+)
+ create mode 100644 crt/arm/Scrt1.s
+
+diff --git a/crt/arm/Scrt1.s b/crt/arm/Scrt1.s
+new file mode 100644
+index 0000000..a54859a
+--- /dev/null
++++ b/crt/arm/Scrt1.s
+@@ -0,0 +1,30 @@
++.weak _init
++.weak _fini
++.global _start
++_start:
++ mov fp,#0
++ mov lr,#0
++
++ ldr a2,[sp],#4
++ mov a3,sp
++ str fp,[sp,#-4]!
++ str a1,[sp,#-4]!
++
++ adr ip,2f
++ ldr a4,2f+4
++ add a4,a4,ip
++ str a4,[sp,#-4]!
++ ldr a4,2f+8
++ add a4,a4,ip
++
++ ldr a1,2f
++ add ip,ip,a1
++ ldr a1,2f+12
++ ldr a1,[ip,a1]
++
++ bl __libc_start_main(PLT)
++1: b 1b
++2: .word _GLOBAL_OFFSET_TABLE_-2b
++ .word _fini-2b
++ .word _init-2b
++ .word main(GOT)
+--
+1.8.3.2
+