Update llvm to release_39 branch r279689.

This commit is contained in:
Dimitry Andric 2016-08-27 11:51:08 +00:00
commit 68629f0dce
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/projects/clang390-import/; revision=304906
2 changed files with 7 additions and 18 deletions

View File

@ -1538,17 +1538,6 @@ static bool tryToReplaceWithConstant(SCCPSolver &Solver, Value *V) {
return true;
}
static bool tryToReplaceInstWithConstant(SCCPSolver &Solver, Instruction *Inst,
bool shouldEraseFromParent) {
if (!tryToReplaceWithConstant(Solver, Inst))
return false;
// Delete the instruction.
if (shouldEraseFromParent)
Inst->eraseFromParent();
return true;
}
// runSCCP() - Run the Sparse Conditional Constant Propagation algorithm,
// and return true if the function was modified.
//
@ -1597,8 +1586,9 @@ static bool runSCCP(Function &F, const DataLayout &DL,
if (Inst->getType()->isVoidTy() || isa<TerminatorInst>(Inst))
continue;
if (tryToReplaceInstWithConstant(Solver, Inst,
true /* shouldEraseFromParent */)) {
if (tryToReplaceWithConstant(Solver, Inst)) {
if (isInstructionTriviallyDead(Inst))
Inst->eraseFromParent();
// Hey, we just changed something!
MadeChanges = true;
++NumInstRemoved;
@ -1789,10 +1779,9 @@ static bool runIPSCCP(Module &M, const DataLayout &DL,
Instruction *Inst = &*BI++;
if (Inst->getType()->isVoidTy())
continue;
if (tryToReplaceInstWithConstant(
Solver, Inst,
!isa<CallInst>(Inst) &&
!isa<TerminatorInst>(Inst) /* shouldEraseFromParent */)) {
if (tryToReplaceWithConstant(Solver, Inst)) {
if (!isa<CallInst>(Inst) && !isa<TerminatorInst>(Inst))
Inst->eraseFromParent();
// Hey, we just changed something!
MadeChanges = true;
++IPNumInstRemoved;

View File

@ -7,4 +7,4 @@
#define CLANG_VENDOR "FreeBSD "
#define SVN_REVISION "279477"
#define SVN_REVISION "279689"