On Thu, Oct 22, 2020 at 09:06:29PM +0100, Al Viro wrote: > On Thu, Oct 22, 2020 at 08:24:58PM +0100, Al Viro wrote: > > > Depending upon the calling conventions, compiler might do truncation in caller or > > in a callee, but it must be done _somewhere_. > > Unless I'm misreading AAPCS64, > "Unlike in the 32-bit AAPCS, named integral values must be narrowed by the callee > rather than the caller" > in 6.4.2 means that callee must not _not_ expect the upper 32 bits of %x0..%x7 to contain Sorry, artefact of editing - that's "in 6.4.2 means that callee must _not_ expect the upper 32 bits of %x0..%x7 to contain" obviously.