Skip to content

Commit 901831a

Browse files
committed
Revert "AArch64: take compact unwind frame size from last CFI instruction."
It was on ToT when I pushed and committed unintentionally.
1 parent 9fe32ca commit 901831a

File tree

3 files changed

+12
-11
lines changed

3 files changed

+12
-11
lines changed

llvm/lib/Target/AArch64/MCTargetDesc/AArch64AsmBackend.cpp

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -621,6 +621,8 @@ class DarwinAArch64AsmBackend : public AArch64AsmBackend {
621621
break;
622622
}
623623
case MCCFIInstruction::OpDefCfaOffset: {
624+
if (StackSize != 0)
625+
return CU::UNWIND_ARM64_MODE_DWARF;
624626
StackSize = std::abs(Inst.getOffset());
625627
break;
626628
}

llvm/test/CodeGen/AArch64/compact-unwind-async.ll

Lines changed: 0 additions & 11 deletions
This file was deleted.

llvm/test/MC/AArch64/arm64-compact-unwind-fallback.s

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,21 @@
55

66
// CHECK: Contents of __compact_unwind section:
77
// CHECK: compact encoding: 0x03000000
8+
// CHECK: compact encoding: 0x03000000
89

910
// CHECK: .eh_frame contents:
1011
// CHECK: DW_CFA_def_cfa: reg1 +32
1112

13+
// DW_CFA_def_cfa_offset: +32
14+
// DW_CFA_def_cfa_offset: +64
15+
1216
_cfi_dwarf0:
1317
.cfi_startproc
1418
.cfi_def_cfa x1, 32;
1519
.cfi_endproc
20+
21+
_cfi_dwarf1:
22+
.cfi_startproc
23+
.cfi_def_cfa_offset 32
24+
.cfi_def_cfa_offset 64
25+
.cfi_endproc

0 commit comments

Comments
 (0)