[all-commits] [llvm/llvm-project] ea158b: [LLVMABI][AARCH64] Support homogeneous aggregate a...

Andy Kaylor via All-commits all-commits at lists.llvm.org
Thu Sep 17 16:00:35 PDT 2026


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: ea158b1e145680795e08e35426b850ba03c8f5a3
      https://github.com/llvm/llvm-project/commit/ea158b1e145680795e08e35426b850ba03c8f5a3
  Author: Andy Kaylor <akaylor at nvidia.com>
  Date:   2026-09-17 (Thu, 17 Sep 2026)

  Changed paths:
    M clang/lib/CIR/Dialect/Transforms/CallConvLoweringPass.cpp
    M clang/lib/CodeGen/CGCall.cpp
    M clang/lib/CodeGen/QualTypeMapper.cpp
    M clang/test/CodeGen/AArch64/abi-classify-arg-types.c
    M clang/test/CodeGen/AArch64/abi-classify-arg-types.cpp
    M clang/test/CodeGen/AArch64/args-hfa.c
    M clang/test/CodeGen/AArch64/arguments-hfa-v3.c
    M llvm/include/llvm/ABI/Types.h
    M llvm/lib/ABI/Targets/AArch64.cpp
    M llvm/lib/ABI/Targets/X86.cpp
    M llvm/lib/ABI/Types.cpp
    M llvm/unittests/ABI/AArch64TargetInfoTest.cpp
    M llvm/unittests/ABI/FunctionInfoTest.cpp
    M llvm/unittests/ABI/IRTypeMapperTest.cpp
    M llvm/unittests/ABI/TypesTest.cpp
    M llvm/unittests/ABI/X86TargetInfoTest.cpp

  Log Message:
  -----------
  [LLVMABI][AARCH64] Support homogeneous aggregate arguments (#224138)

This adds support for handling homogeneous aggregate arguments in the
AArch64 implementation of the LLVM ABI library.

This required adding a new field to the llvm::abi::Type class to track
the unadjusted alignment of the field. This meant I needed to make
updates to the CIR calling convention lowering pass, but AArch64 isn't
supported in the CIR pass yet, so that part of the change is strictly
NFC at this point.

I'm removing the aarch64-pc-windows-msvc run lines from the
abi-classify-arg-types.cpp test because the new test cases added would
land in NYI diagnostic in isPermittedToBeHomogeneousAggregate(), and
they weren't adding any unique coverage.

Assisted-by: Cursor / various models



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list