https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92821
--- Comment #5 from Michael Matz <matz at gcc dot gnu.org> --- Yes, we (intentionally) haven't required any extensions to happen for arguments or return values smaller than 64bit (e.g. we haven't even specified that arguments <= 32bit would be zero-extended in the high bits, as would have been natural with the instruction set). If LLVM relies on that it would be a bug.