Revert "[SimplifyCFG] Common debug handling [NFC]"

This reverts commit r340997.

This change turned out not to be NFC after all, but e.g. causes
clang to crash when building the linux kernel for aarch64.

llvm-svn: 341031
This commit is contained in:
Martin Storsjo 2018-08-30 08:06:50 +00:00
parent edf11fd450
commit 22dcddf651
1 changed files with 8 additions and 0 deletions

View File

@ -2694,6 +2694,8 @@ bool llvm::FoldBranchToCommonDest(BranchInst *BI, unsigned BonusInstThreshold) {
// all instructions before Cond other than DbgInfoIntrinsic are bonus
// instructions.
for (auto BonusInst = BB->begin(); Cond != &*BonusInst; ++BonusInst) {
if (isa<DbgInfoIntrinsic>(BonusInst))
continue;
Instruction *NewBonusInst = BonusInst->clone();
RemapInstruction(NewBonusInst, VMap,
RF_NoModuleLevelChanges | RF_IgnoreMissingLocals);
@ -2821,6 +2823,12 @@ bool llvm::FoldBranchToCommonDest(BranchInst *BI, unsigned BonusInstThreshold) {
// TODO: If BB is reachable from all paths through PredBlock, then we
// could replace PBI's branch probabilities with BI's.
// Copy any debug value intrinsics into the end of PredBlock.
for (Instruction &I : *BB)
if (isa<DbgInfoIntrinsic>(I))
I.clone()->insertBefore(PBI);
return true;
}
return false;