[clang] [clang][AArch64] Don't round parameters to multiples of 8-byte (PR #215264)
via cfe-commits
cfe-commits at lists.llvm.org
Fri Oct 16 03:18:11 PDT 2026
bgra8 wrote:
@eleviant this PR is problematic: In [AAPCS64 (ยง6.8.2 Parameter Passing, Rule C.12)](https://github.com/ARM-software/abi-aa/blob/main/aapcs64/aapcs64.rst#parameter-passing-rules), composite types allocated to general-purpose registers explicitly specify:
> the size of the argument is rounded up to the nearest multiple of 8 bytes.
Lowering sub-64-bit aggregates to raw arbitrary integer types (`i8`, `i16`, `i24`, `i32`, `i40`, `i48`) in Clang frontend ABI lowering violates this assumption and produces non-standard types that break sanitizer invariants.
Please revert.
https://github.com/llvm/llvm-project/pull/215264
More information about the cfe-commits
mailing list