diff options
Diffstat (limited to 'main/musl/0009-add-PIE-support-for-ARM.patch')
-rw-r--r-- | main/musl/0009-add-PIE-support-for-ARM.patch | 49 |
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 + |