This patch extends MemAccessInfo and PointerInfo to track the associated
SCEV for the pointer. The SCEV expressions is then used instead of
accessing ScalarEvolution on demand.
This has multiple benefits:
- We only need to replace symbolic strides once, up front.
- Allows for more flexibility to have accesses with different SCEV expressions for their pointers.For example, it allows adding 2 MemAccessInfo for a pointer fed by a select.
This is still a bit rough around the edges. In particular the printing
is still missing the SCEV expression.