Make simdloop marker more robust
Previously the simdloop marker was metadata on a random add instruction in the loop.
This is problematic if that add instruction gets moved around or folded by an earlier
optimization pass. Switching to using an explicit marker instruction. Eventually we
should do something different here to address #26976. This just makes it more robust
to make sure it keeps working with the new optimizer.