From 09528a74868f454a942d2d164535d23a80eb91be Mon Sep 17 00:00:00 2001 From: Elliot Saba Date: Wed, 24 Mar 2021 18:01:48 +0000 Subject: [PATCH] Fix armv7l trampoline We copy-pasted the wrong macro here, should have used `CNAMEADDR()` not `CNAME()`. This causes segfaults on armv7l processors by trying to read from an incorrect address when loading the trampoline target address value. --- cli/trampolines/trampolines_arm.S | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cli/trampolines/trampolines_arm.S b/cli/trampolines/trampolines_arm.S index 1bb924168525b..f99b7820360b2 100644 --- a/cli/trampolines/trampolines_arm.S +++ b/cli/trampolines/trampolines_arm.S @@ -5,7 +5,7 @@ .global CNAME(name); \ .cfi_startproc; \ CNAME(name)##:; \ - ldr ip, CONCAT(.L,CNAME(name)); \ + ldr ip, CONCAT(.L,CNAMEADDR(name)); \ CONCAT(.L,CNAME(name)): ;\ add ip, pc, ip; \ ldr pc, [ip]; \