projects
/
platform
/
upstream
/
llvm.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
354d1cc
)
[ValueTracking] Fix an assert from r340480.
author
Craig Topper
<craig.topper@intel.com>
Thu, 23 Aug 2018 17:15:02 +0000
(17:15 +0000)
committer
Craig Topper
<craig.topper@intel.com>
Thu, 23 Aug 2018 17:15:02 +0000
(17:15 +0000)
We need to allow ConstantExpr Selects in addition to SelectInst.
I'll try to put together a test case, but I wanted to fix the issues being reported.
Fixes PR38677
llvm-svn: 340546
llvm/lib/Analysis/ValueTracking.cpp
patch
|
blob
|
history
diff --git
a/llvm/lib/Analysis/ValueTracking.cpp
b/llvm/lib/Analysis/ValueTracking.cpp
index
322d5c2
..
d2844d8
100644
(file)
--- a/
llvm/lib/Analysis/ValueTracking.cpp
+++ b/
llvm/lib/Analysis/ValueTracking.cpp
@@
-2213,7
+2213,9
@@
bool MaskedValueIsZero(const Value *V, const APInt &Mask, unsigned Depth,
// Returns the input and lower/upper bounds.
static bool isSignedMinMaxClamp(const Value *Select, const Value *&In,
const APInt *&CLow, const APInt *&CHigh) {
- assert(isa<SelectInst>(Select) && "Input should be a SelectInst!");
+ assert(isa<Operator>(Select) &&
+ cast<Operator>(Select)->getOpcode() == Instruction::Select &&
+ "Input should be a SelectInst!");
const Value *LHS, *RHS, *LHS2, *RHS2;
SelectPatternFlavor SPF = matchSelectPattern(Select, LHS, RHS).Flavor;