https://gcc.gnu.org/bugzilla/show_bug.cgi?id=59967
--- Comment #23 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
One thing unrelated to the unrolling I Noticed is:
```
if (_221 != 0)
goto <bb 50>; [50.00%]
else
goto <bb 49>; [50.00%]
<bb 49> [local count: 163152564]:
_212 = _218 - s_202;
goto <bb 51>; [100.00%]
<bb 50> [local count: 163152564]:
_222 = s_202 + _218;
<bb 51> [local count: 326305128]:
# ck0$0_144 = PHI <_218(49), _222(50)>
# prephitmp_211 = PHI <_212(49), _218(50)>
```
Does not use conditional moves on aarch64 (or x86_64) even though it
could/should.
That pattern shows up 3 times due to the unrolling of the inner loop there.
```
ck0[j] = c0[j];
if (1<<j & i)
ck0[j] += s;
if (r->rop[j] < ck0[j] - 1.0*s)
```