Skip to content

Commit aadb4b1

Browse files
committed
[AArch64] Fix popless ret frame lowering after upstream change.
This was merged in cee849d, but dropped one bit, causing test failures.
1 parent 93e1607 commit aadb4b1

File tree

1 file changed

+5
-1
lines changed

1 file changed

+5
-1
lines changed

llvm/lib/Target/AArch64/AArch64PrologueEpilogue.cpp

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1466,7 +1466,7 @@ void AArch64EpilogueEmitter::emitEpilogue() {
14661466
break;
14671467
} else if (IsSwiftCoroPartialReturn) {
14681468
assert(!EmitCFI);
1469-
assert(AFL.hasFP(MF));
1469+
assert(HasFP);
14701470
fixupCalleeSaveRestoreStackOffset(*FirstGPRRestoreI,
14711471
AFI->getLocalStackSize());
14721472
// if FP-based addressing, rewrite CSR restores from SP to FP
@@ -1693,6 +1693,10 @@ void AArch64EpilogueEmitter::emitEpilogue() {
16931693

16941694
bool AArch64EpilogueEmitter::shouldCombineCSRLocalStackBump(
16951695
uint64_t StackBumpBytes) const {
1696+
1697+
if (AFI->hasPoplessEpilogue())
1698+
return false;
1699+
16961700
if (!AArch64PrologueEpilogueCommon::shouldCombineCSRLocalStackBump(
16971701
StackBumpBytes))
16981702
return false;

0 commit comments

Comments
 (0)