https://gcc.gnu.org/bugzilla/show_bug.cgi?id=119731
--- Comment #5 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
GCC:
r1 = r10
r3 += r5
r1 += -16
call 113
.LBE7:
r2 = *(u32 *) (r10+-16)
*(u32 *) (r10+-24) = r2
clang:
call 113
.Ltmp27:
.Ltmp28:
.loc 1 55 34 is_stmt 1
.Ltmp29:
r1 = *(u64 *)(r10 - 8)
.loc 1 55 22 is_stmt 0
.Ltmp30:
*(u32 *)(r10 - 20) = w1
Huh? Is the verifier not understanding the load of u32 instead of a 64 load?
