//
std::vector<Value*> Indices;
const Type *ElTy = ConvertableToGEP(PTy, I->getOperand(1), Indices);
- if (ElTy) {
- assert(ElTy == PVTy && "Internal error, setup wrong!");
+ if (ElTy == PVTy) {
if (!ExpressionConvertableToType(I->getOperand(0),
PointerType::get(ElTy), CTMap))
return false; // Can't continue, ExConToTy might have polluted set!
int Val = getConstantValue(Expr.Scale);
if (Val < 0) return false; // Don't mess with negative scales
Scale = (unsigned)Val;
+ if (Scale == 1) Scale = 0; // No interesting scale if *1
}
// Loop over the Scale and Offset values, filling in the Indices vector for