commit 4de661ef18d4cdc7f859c8bc1990e8a0519163db (tree)
parent 566cc4f99d03075f396b3ca13ee140fdcd80d37a
Author: Alex Rønne Petersen <alex@alexrp.com>
Date: Sat, 18 Jan 2025 13:54:05 +0100
start: Don't emit CFI directives if unwind tables are disabled.
Diffstat:
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git 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",