From 615cdb92ee442cbfac75e3602df857e06ab9aee6 Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Fri, 23 Aug 2002 18:30:58 +0000 Subject: [PATCH] Implement classof for SetCondInst so that instcombine doesn't break on dyn_cast git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3493 91177308-0d34-0410-b5e6-96231b3b80d8 --- include/llvm/iOperators.h | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/include/llvm/iOperators.h b/include/llvm/iOperators.h index 3bdb13df0f6..730906a8374 100644 --- a/include/llvm/iOperators.h +++ b/include/llvm/iOperators.h @@ -34,6 +34,17 @@ public: // For example seteq -> setne, setgt -> setle, setlt -> setge, etc... // BinaryOps getInverseCondition() const; + + // Methods for support type inquiry through isa, cast, and dyn_cast: + static inline bool classof(const SetCondInst *) { return true; } + static inline bool classof(const Instruction *I) { + return I->getOpcode() == SetEQ || I->getOpcode() == SetNE || + I->getOpcode() == SetLE || I->getOpcode() == SetGE || + I->getOpcode() == SetLT || I->getOpcode() == SetGT; + } + static inline bool classof(const Value *V) { + return isa(V) && classof(cast(V)); + } }; #endif