compile simple loop conditions twice for a more efficient branch structure

I didn't think this would matter, but it actually makes a big difference
to LLVM. fixes #5469

with this, I believe no changes to Range1 are needed for performance.