Loop-Invariant Code Motion