]> granicus.if.org Git - llvm/commitdiff
Fix the buildbot failure introduced by r351404
authorSanjin Sijaric <ssijaric@codeaurora.org>
Thu, 17 Jan 2019 20:24:14 +0000 (20:24 +0000)
committerSanjin Sijaric <ssijaric@codeaurora.org>
Thu, 17 Jan 2019 20:24:14 +0000 (20:24 +0000)
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.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@351472 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/AArch64/AArch64FrameLowering.cpp
test/CodeGen/AArch64/seh_funclet_x1.ll

index 5719cf34c954b38801d2a8f09cbd98cc0055572b..12167192ba061b47e3939844c7b2ef8c258ce695 100644 (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;
index b6b84c0e62bda1a2d6fb74e09bcbf0d50dd5dd5d..8f2a4dade30909d1d0b4cda3fc84b78b29a2a059 100644 (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.