From 4de661ef18d4cdc7f859c8bc1990e8a0519163db Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alex=20R=C3=B8nne=20Petersen?= Date: Sat, 18 Jan 2025 13:54:05 +0100 Subject: [PATCH] start: Don't emit CFI directives if unwind tables are disabled. --- lib/std/start.zig | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/std/start.zig b/lib/std/start.zig index 9da0cb2ec6..8b0d6183cf 100644 --- a/lib/std/start.zig +++ b/lib/std/start.zig @@ -231,8 +231,8 @@ fn _start() callconv(.naked) noreturn { } // This is the first userspace frame. Prevent DWARF-based unwinders from unwinding further. We - // prevent FP-based unwinders from unwinding further by zeroing the register further below. - asm volatile (switch (native_arch) { + // prevent FP-based unwinders from unwinding further by zeroing the register below. + if (builtin.unwind_tables != .none or !builtin.strip_debug_info) asm volatile (switch (native_arch) { .arc => ".cfi_undefined blink", .arm, .armeb, .thumb, .thumbeb => "", // https://github.com/llvm/llvm-project/issues/115891 .aarch64, .aarch64_be => ".cfi_undefined lr",