summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/Transforms/InstCombine/InstCombineCalls.cpp8
1 files changed, 4 insertions, 4 deletions
diff --git a/lib/Transforms/InstCombine/InstCombineCalls.cpp b/lib/Transforms/InstCombine/InstCombineCalls.cpp
index e34360087c..47c37c4658 100644
--- a/lib/Transforms/InstCombine/InstCombineCalls.cpp
+++ b/lib/Transforms/InstCombine/InstCombineCalls.cpp
@@ -633,12 +633,12 @@ Instruction *InstCombiner::visitCallInst(CallInst &CI) {
break;
}
case Intrinsic::objectsize: {
- ConstantInt *Const = dyn_cast<ConstantInt>(II->getOperand(2));
-
- if (!Const) return 0;
-
+ ConstantInt *Const = cast<ConstantInt>(II->getOperand(2));
const Type *Ty = CI.getType();
+ // 0 is maximum number of bytes left, 1 is minimum number of bytes left.
+ // TODO: actually add these values, the current return values are "don't
+ // know".
if (Const->getZExtValue() == 0)
return ReplaceInstUsesWith(CI, Constant::getAllOnesValue(Ty));
else