Fix Expr(:loopinfo) codegen (#50663)
We used a loop-marker intrinsic because the LoopID used to
be dropped by optimization passes (this seems no longer true).
#50660 is an example of a miscompilation where a loop of length 1
got optimized by simplifycfg to the point where the loop-marker
is now attached to the wrong back-edge.
This PR drops the loop-marker and uses the LoopID metadata node
directly.