<HTML>
(Apologies if anyone has received multiple copies of this reply - I was having trouble with the e-mail client and the message formatting)<br>
<br>
----<br>
<br>
Good call on using "repeat...until" in my own code, thanks!<br>
<br>
I wasn't clear, but my intention was also keeping the conditional check at the end of the loop, but duplicating it at the start with the condition inverted. In other words, having both these example code segments:<br>
<br>
****<br>
xorl %r10d,%r10d<br>
movl $1,%r11d<br>
movl %edx,%eax<br>
cmpq %rax,%r11<br>
jge .Lj7<br>
.balign 8,0x90<br>
.Lj5:<br>
...<br>
.Lj6: // <-- This label won't actually be necessary<br>
<br>
movl %r10d,%eax<br>
leaq 1(%rax),%r11<br>
movl %edx,%eax<br>
cmpq %rax,%r11<br>
jl .Lj5<br>
.Lj7:<br>
...<br>
****<br>
<br>
Granted, in this situation, the condition is relatively simple, and something more complicated might cause some bloat, but would still be faster overall because it still does an initial check, but doesn't have to do a double jump upon entry.<br>
<br>
If I were optimising for size over speed though, then I'd definitely keep it as is.<br>
<br>
Gareth aka. Kit<br>
</HTML>