https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83925
--- Comment #9 from Jakub Jelinek <jakub at gcc dot gnu.org> --- Given the issues we had on ARM, AArch64 (see exempli gratia PR65956 and associated discussions), et cetera with overaligned/underaligned scalars, I think the right thing is not to consider alignment for the argument passing and return value passing decisions at least for scalars. One can always call a function with a scalar argument expecting some alignment and callee expecting different etc. So, any reason why e.g. in this case the __int128_t arguments shouldn't be passed always the same, e.g. like normally aligned __int128_t?