Store just the first and last addresses of rep string loops
Splitting out from #2001 to make it easier to track.
This is another step in address elision for values that can be reconstructed in post-processing. For rep string loops, rather than recording the address in each iteration, we would record just the first and the last, or the first and direction and size, with special handling for interruptions via fault or signal. This will take extra branches and maybe state in a TLS slot or something, but that should be worthwhile to reduce i/o.