Fix the buildbot failure introduced by r351404

EXPENSIVE_CHECKS buildbots are failing due to r351404.

Add x1 as live in to the funclet basic block for SEH funclets, as well as
-verify-machineinstrs to the test case that triggered the failure.

llvm-svn: 351472
This commit is contained in:
Sanjin Sijaric 2019-01-17 20:24:14 +00:00
parent b95b6f42f9
commit 4d1450298c
2 changed files with 4 additions and 2 deletions

View File

@ -929,9 +929,11 @@ void AArch64FrameLowering::emitPrologue(MachineFunction &MF,
// directly, and is not retrieved from X1.
if (F.hasPersonalityFn()) {
EHPersonality Per = classifyEHPersonality(F.getPersonalityFn());
if (isAsynchronousEHPersonality(Per))
if (isAsynchronousEHPersonality(Per)) {
BuildMI(MBB, MBBI, DL, TII->get(TargetOpcode::COPY), AArch64::FP)
.addReg(AArch64::X1).setMIFlag(MachineInstr::FrameSetup);
MBB.addLiveIn(AArch64::X1);
}
}
return;

View File

@ -1,4 +1,4 @@
; RUN: llc -o - %s -mtriple=aarch64-windows | FileCheck %s
; RUN: llc -o - %s -verify-machineinstrs -mtriple=aarch64-windows | FileCheck %s
; Windows runtime passes the establisher frame as the second argument to the
; termination handler. Check that we copy it into fp.