From: Hans Wennborg <hans@hanshq.net>
Date: Fri, 22 Jan 2016 18:26:38 +0000 (+0000)
Subject: Merging r257886:
X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=c89d9654310e0f5b1171888c6573d09c9e66d0c4;p=oota-llvm.git

Merging r257886:
------------------------------------------------------------------------
r257886 | jamesm | 2016-01-15 02:36:01 -0800 (Fri, 15 Jan 2016) | 3 lines

[CodeGenPrepare] Try and appease sanitizers

dupRetToEnableTailCallOpts(BB) can invalidate BB. It must run *after* we iterate across BB!
------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_38@258510 91177308-0d34-0410-b5e6-96231b3b80d8
---

diff --git a/lib/CodeGen/CodeGenPrepare.cpp b/lib/CodeGen/CodeGenPrepare.cpp
index a7cfd580c16..c8007a524e7 100644
--- a/lib/CodeGen/CodeGenPrepare.cpp
+++ b/lib/CodeGen/CodeGenPrepare.cpp
@@ -5242,7 +5242,6 @@ bool CodeGenPrepare::optimizeBlock(BasicBlock &BB, bool& ModifiedDT) {
     if (ModifiedDT)
       return true;
   }
-  MadeChange |= dupRetToEnableTailCallOpts(&BB);
 
   bool MadeBitReverse = true;
   while (TLI && MadeBitReverse) {
@@ -5254,6 +5253,7 @@ bool CodeGenPrepare::optimizeBlock(BasicBlock &BB, bool& ModifiedDT) {
       }
     }
   }
+  MadeChange |= dupRetToEnableTailCallOpts(&BB);
   
   return MadeChange;
 }