diff options
author | Rafael Espindola <rafael.espindola@gmail.com> | 2014-06-04 18:51:31 +0000 |
---|---|---|
committer | Rafael Espindola <rafael.espindola@gmail.com> | 2014-06-04 18:51:31 +0000 |
commit | dcac1523c0db69547fe0f929690875ef23299a9a (patch) | |
tree | 5f8253a222979b880cb3c1f9e281ee8c74b14cdf /lib/IR | |
parent | c45bee91b8e5770501ab8a55f9c7069038b560f5 (diff) | |
download | llvm-dcac1523c0db69547fe0f929690875ef23299a9a.tar.gz llvm-dcac1523c0db69547fe0f929690875ef23299a9a.tar.bz2 llvm-dcac1523c0db69547fe0f929690875ef23299a9a.tar.xz |
Clauses in a landingpad are always Constant. Use a stricter type.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@210203 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/IR')
-rw-r--r-- | lib/IR/Instructions.cpp | 2 | ||||
-rw-r--r-- | lib/IR/Verifier.cpp | 3 |
2 files changed, 2 insertions, 3 deletions
diff --git a/lib/IR/Instructions.cpp b/lib/IR/Instructions.cpp index 13c51b817c..592cdd85e8 100644 --- a/lib/IR/Instructions.cpp +++ b/lib/IR/Instructions.cpp @@ -248,7 +248,7 @@ void LandingPadInst::growOperands(unsigned Size) { Use::zap(OldOps, OldOps + e, true); } -void LandingPadInst::addClause(Value *Val) { +void LandingPadInst::addClause(Constant *Val) { unsigned OpNo = getNumOperands(); growOperands(1); assert(OpNo < ReservedSpace && "Growing didn't work!"); diff --git a/lib/IR/Verifier.cpp b/lib/IR/Verifier.cpp index 1719cb2759..6da8014a22 100644 --- a/lib/IR/Verifier.cpp +++ b/lib/IR/Verifier.cpp @@ -2077,8 +2077,7 @@ void Verifier::visitLandingPadInst(LandingPadInst &LPI) { Assert1(isa<Constant>(PersonalityFn), "Personality function is not constant!", &LPI); for (unsigned i = 0, e = LPI.getNumClauses(); i < e; ++i) { - Value *Clause = LPI.getClause(i); - Assert1(isa<Constant>(Clause), "Clause is not constant!", &LPI); + Constant *Clause = LPI.getClause(i); if (LPI.isCatch(i)) { Assert1(isa<PointerType>(Clause->getType()), "Catch operand does not have pointer type!", &LPI); |