Compiling this code gives me "undeclared symbol" errors for begin and end in drop_begin:
if (const auto *A = dyn_cast<SCEVAddExpr>(R->getStart())) {
if (const auto *C = dyn_cast<SCEVConstant>(A->getOperand(0))) {
SmallVector<const SCEV*,2> Ops1(drop_begin(A->operands(), 1));
const SCEV *NA = SE->getAddExpr(Ops1, A->getNoWrapFlags());
}
}This change is intended to fix that.