https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81647
--- Comment #5 from amker at gcc dot gnu.org --- Looks like both x86_64(with -mavx2) and AArch64 translate u== into signaling comparison instructions when vectorization. x86_64 translates into "*avx_maskcmpv4df3_comm" thus: vcmpeq_uspd x(,%r13,8), %ymm0, %ymm0 While AArch64 implements UNEQ as !LTGT in "vec_cmp<mode><v_cmp_result>".