Index: llvm/lib/MC/MCDwarf.cpp =================================================================== --- llvm/lib/MC/MCDwarf.cpp +++ llvm/lib/MC/MCDwarf.cpp @@ -1860,7 +1860,7 @@ // Emit the compact unwind info if available. bool NeedsEHFrameSection = !MOFI->getSupportsCompactUnwindWithoutEHFrame(); - if (IsEH && MOFI->getCompactUnwindSection()) { + if (MOFI->getCompactUnwindSection()) { Streamer.generateCompactUnwindEncodings(MAB); bool SectionEmitted = false; for (const MCDwarfFrameInfo &Frame : FrameArray) { Index: llvm/test/DebugInfo/AArch64/debugframeinfo.s =================================================================== --- /dev/null +++ llvm/test/DebugInfo/AArch64/debugframeinfo.s @@ -0,0 +1,14 @@ +# RUN: llvm-mc -filetype=obj --triple=arm64-apple-darwin22.1.0 %s -o %t.o +# RUN: llvm-dwarfdump -debug-frame %t.o | FileCheck %s + +# CHECK: .debug_frame contents: +# CHECK-EMPTY: +# CHECK-NEXT: 00000000 00000014 ffffffff CIE +# CHECK: .eh_frame contents: +# CHECK-EMPTY: + + .cfi_startproc + .cfi_signal_frame + .cfi_def_cfa x28, 0x340 + .cfi_endproc + .cfi_sections .debug_frame