diff options
Diffstat (limited to 'lib/Transforms')
-rw-r--r-- | lib/Transforms/Scalar/SCCP.cpp | 4 | ||||
-rw-r--r-- | lib/Transforms/Scalar/ScalarReplAggregates.cpp | 3 |
2 files changed, 4 insertions, 3 deletions
diff --git a/lib/Transforms/Scalar/SCCP.cpp b/lib/Transforms/Scalar/SCCP.cpp index b51f3ad68c..c769b54991 100644 --- a/lib/Transforms/Scalar/SCCP.cpp +++ b/lib/Transforms/Scalar/SCCP.cpp @@ -771,12 +771,12 @@ static Constant *GetGEPGlobalInitializer(Constant *C, ConstantExpr *CE) { ConstantStruct *CS = dyn_cast<ConstantStruct>(C); if (CS == 0) return 0; if (CU->getValue() >= CS->getNumOperands()) return 0; - C = CS->getOperand(CU->getValue()); + C = CS->getOperand((unsigned)CU->getValue()); } else if (ConstantSInt *CS = dyn_cast<ConstantSInt>(CE->getOperand(i))) { ConstantArray *CA = dyn_cast<ConstantArray>(C); if (CA == 0) return 0; if ((uint64_t)CS->getValue() >= CA->getNumOperands()) return 0; - C = CA->getOperand(CS->getValue()); + C = CA->getOperand((unsigned)CS->getValue()); } else return 0; return C; diff --git a/lib/Transforms/Scalar/ScalarReplAggregates.cpp b/lib/Transforms/Scalar/ScalarReplAggregates.cpp index 8c8df54c2e..f934f1f127 100644 --- a/lib/Transforms/Scalar/ScalarReplAggregates.cpp +++ b/lib/Transforms/Scalar/ScalarReplAggregates.cpp @@ -183,7 +183,8 @@ bool SROA::performScalarRepl(Function &F) { Instruction *User = cast<Instruction>(AI->use_back()); GetElementPtrInst *GEPI = cast<GetElementPtrInst>(User); // We now know that the GEP is of the form: GEP <ptr>, 0, <cst> - uint64_t Idx = cast<ConstantInt>(GEPI->getOperand(2))->getRawValue(); + unsigned Idx = + (unsigned)cast<ConstantInt>(GEPI->getOperand(2))->getRawValue(); assert(Idx < ElementAllocas.size() && "Index out of range?"); AllocaInst *AllocaToUse = ElementAllocas[Idx]; |