Index: libunwind/src/DwarfInstructions.hpp =================================================================== --- libunwind/src/DwarfInstructions.hpp +++ libunwind/src/DwarfInstructions.hpp @@ -222,27 +222,22 @@ // are used here as gcc does not assemble autia1716/autib1716 for pre // armv8.3a targets. - if (cieInfo.addressesSignedWithBKey) - { - asm volatile( - "mov x17, %x0;" - "mov x16, %x1;" - "hint 0xe;" // autib1716 - "mov %0, x17" - : "+r"(returnAddress) - : "r"(cfa) - : "x16", "x17"); - } - else - { - asm volatile( - "mov x17, %x0;" - "mov x16, %x1;" - "hint 0xc;" // autia1716 - "mov %0, x17" - : "+r"(returnAddress) - : "r"(cfa) - : "x16", "x17"); + if (cieInfo.addressesSignedWithBKey) { + asm volatile("mov x17, %x0;" + "mov x16, %x1;" + "hint 0xe;" // autib1716 + "mov %0, x17" + : "+r"(returnAddress) + : "r"(cfa) + : "x16", "x17"); + } else { + asm volatile("mov x17, %x0;" + "mov x16, %x1;" + "hint 0xc;" // autia1716 + "mov %0, x17" + : "+r"(returnAddress) + : "r"(cfa) + : "x16", "x17"); } #endif }