https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82479
--- Comment #1 from kugan at gcc dot gnu.org --- gcc trunk generates: PopCount: mov w2, 0 cbz x0, .L1 .p2align 3 .L3: sub x1, x0, #1 add w2, w2, 1 ands x0, x0, x1 bne .L3 .L1: mov w0, w2 ret
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82479
--- Comment #1 from kugan at gcc dot gnu.org --- gcc trunk generates: PopCount: mov w2, 0 cbz x0, .L1 .p2align 3 .L3: sub x1, x0, #1 add w2, w2, 1 ands x0, x0, x1 bne .L3 .L1: mov w0, w2 ret