https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117811
--- Comment #8 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
(In reply to Sam James from comment #7)
> Can you convert it into a runtime one (or I'll do it in a bit when I've done
> some chores around the house) then I'll try bisect it again?
The same original testing infastructure should work here for comment #7 since
what it does is exactly the same as the original code just using GCC vector
extensions. obvious you can ignore the aliasing issue (or replace long with
int) since I changed it to being int rather than long.
Or you could look to see when `#0` starts to be produced.
Since in GCC 9 produced:
vmov.i32 q8, #0 @ v4si
vshl.s32 q0, q0, q8
Which is wrong too. q8 should have been a `vdup.i32 q8, r1`