Don't replace *all* uses with the new stuff.

This is not necessarily the first or dominating use of the EH values. The IR
breaks if it's not. So replace the specific value in the instruction with the
new value.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138406 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Bill Wendling 2011-08-23 22:55:03 +00:00
parent cfcccef926
commit fc8713ff74

View File

@ -347,7 +347,7 @@ static void ReplaceLandingPadVal(Function &F, Instruction *Inst, Value *ExnAddr,
continue;
}
Inst->replaceAllUsesWith(CreateLandingPadLoad(F, ExnAddr, SelAddr, I));
I->replaceUsesOfWith(Inst, CreateLandingPadLoad(F, ExnAddr, SelAddr, I));
}
}