diff options
| author | David Majnemer <david.majnemer@gmail.com> | 2016-06-23 00:14:29 +0000 |
|---|---|---|
| committer | David Majnemer <david.majnemer@gmail.com> | 2016-06-23 00:14:29 +0000 |
| commit | d1fbf48566ae0ff14ea2b935cbf3cbbba40a6d28 (patch) | |
| tree | 06aa331db01dd5263c01963623041c18b63ce87b /llvm/lib/Transforms | |
| parent | 8871e7a49f511b17ee1d8f66d6dad05a2a610415 (diff) | |
| download | bcm5719-llvm-d1fbf48566ae0ff14ea2b935cbf3cbbba40a6d28.tar.gz bcm5719-llvm-d1fbf48566ae0ff14ea2b935cbf3cbbba40a6d28.zip | |
[SCCP] Don't assume all Constants are ConstantInt
This fixes PR28269.
llvm-svn: 273521
Diffstat (limited to 'llvm/lib/Transforms')
| -rw-r--r-- | llvm/lib/Transforms/Scalar/SCCP.cpp | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/llvm/lib/Transforms/Scalar/SCCP.cpp b/llvm/lib/Transforms/Scalar/SCCP.cpp index 83f087f487b..91e625b7aac 100644 --- a/llvm/lib/Transforms/Scalar/SCCP.cpp +++ b/llvm/lib/Transforms/Scalar/SCCP.cpp @@ -1419,10 +1419,10 @@ bool SCCPSolver::ResolvedUndefsIn(Function &F) { // Shifting by the bitwidth or more is undefined. if (Op1LV.isConstant()) { - auto *ShiftAmt = Op1LV.getConstantInt(); - if (ShiftAmt->getLimitedValue() >= - ShiftAmt->getType()->getScalarSizeInBits()) - break; + if (auto *ShiftAmt = Op1LV.getConstantInt()) + if (ShiftAmt->getLimitedValue() >= + ShiftAmt->getType()->getScalarSizeInBits()) + break; } // undef >>a X -> all ones @@ -1436,10 +1436,10 @@ bool SCCPSolver::ResolvedUndefsIn(Function &F) { // Shifting by the bitwidth or more is undefined. if (Op1LV.isConstant()) { - auto *ShiftAmt = Op1LV.getConstantInt(); - if (ShiftAmt->getLimitedValue() >= - ShiftAmt->getType()->getScalarSizeInBits()) - break; + if (auto *ShiftAmt = Op1LV.getConstantInt()) + if (ShiftAmt->getLimitedValue() >= + ShiftAmt->getType()->getScalarSizeInBits()) + break; } // undef << X -> 0 |

