diff options
Diffstat (limited to 'devel/llvm60/files/patch-head-r338689.diff')
-rw-r--r-- | devel/llvm60/files/patch-head-r338689.diff | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/devel/llvm60/files/patch-head-r338689.diff b/devel/llvm60/files/patch-head-r338689.diff new file mode 100644 index 000000000000..c0a785e779ee --- /dev/null +++ b/devel/llvm60/files/patch-head-r338689.diff @@ -0,0 +1,32 @@ +r338689 | dim | 2018-09-14 21:25:23 +0200 (Fri, 14 Sep 2018) | 12 lines + +Pull in r335365 from upstream llvm trunk (by Krzysztof Parzyszek): + + Initialize LiveRegs once in BranchFolder::mergeCommonTails + +This should fix '(TRI && "LivePhysRegs is not initialized."' assertions +when building the lang/qt5-qml port in certain configurations. + +Approved by: re (kib) +Reported by: Piotr Kubaj <pkubaj@anongoth.pl> +PR: 231355 +MFC after: 3 days + +Index: lib/CodeGen/BranchFolding.cpp +=================================================================== +--- lib/CodeGen/BranchFolding.cpp (revision 338688) ++++ lib/CodeGen/BranchFolding.cpp (revision 338689) +@@ -884,11 +884,12 @@ void BranchFolder::mergeCommonTails(unsigned commo + if (UpdateLiveIns) { + LivePhysRegs NewLiveIns(*TRI); + computeLiveIns(NewLiveIns, *MBB); ++ LiveRegs.init(*TRI); + + // The flag merging may lead to some register uses no longer using the + // <undef> flag, add IMPLICIT_DEFs in the predecessors as necessary. + for (MachineBasicBlock *Pred : MBB->predecessors()) { +- LiveRegs.init(*TRI); ++ LiveRegs.clear(); + LiveRegs.addLiveOuts(*Pred); + MachineBasicBlock::iterator InsertBefore = Pred->getFirstTerminator(); + for (unsigned Reg : NewLiveIns) { |