https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65068 --- Comment #2 from Ramana Radhakrishnan <ramana at gcc dot gnu.org> --- And by default we see this .L4: add x3, x5, x1 add x1, x1, 1 ldr w2, [x4, x3, lsl 2] cmp w0, w1 add w2, w2, 1 str w2, [x4, x3, lsl 2] bgt .L4 - Costs ?