https://gcc.gnu.org/bugzilla/show_bug.cgi?id=128524
--- Comment #2 from Mikael Pettersson <mikpelinux at gmail dot com> ---
I cannot reproduce this on m68k-linux-gnu with unmodified vanilla gcc 14.4.0,
15.3.0, 16.2.0, or 17.0.0 20261107. For all four of them it generates:
.text
.align 2
.globl check_lengths
.type check_lengths, @function
check_lengths:
move.l 4(%sp),%a1
lea (2,%a1),%a0
lea (32,%a1),%a1
moveq #1,%d0
.L3:
add.l %d0,%d0
clr.l %d1
move.w (%a0)+,%d1
sub.l %d1,%d0
jmi .L4
cmp.l %a0,%a1
jne .L3
rts
.L4:
moveq #-1,%d0
rts
.size check_lengths, .-check_lengths
No dbCC in sight. Could be down to your patches, how you confgured gcc, or
expected differences between m68k-linux and non-linux targets.