https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87601
--- Comment #1 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
sub rsi, 1
test esi, esi
jne .L3
To
sub rsi, 1
jne .L3
Is not the same, the first is a 64bit subtract followed by a 32bit compare. in
the 2nd case, you have a 64bit subtract with the 64bit compare happening.
