[clang] [llvm] [LLVMABI][AARCH64] Handle condtions for ignoring empty types (PR #224476)

Madhur Amilkanthwar via cfe-commits cfe-commits at lists.llvm.org
Thu Sep 17 23:22:41 PDT 2026


================
@@ -794,4 +794,78 @@ TEST_F(AArch64TargetInfoTest, ClassifyArgumentOveralignedHFAAlign) {
   }
 }
 
+// Empty records and zero-size types are ignored as returns under all AArch64
+// ABI kinds. Empty C arguments are ignored; Darwin also ignores empty C++
+// arguments. C++ AAPCS/Win64 only ignore zero-size types.
----------------
madhur13490 wrote:

This last sentence isn't true yet. I built the patch and classified a C++ empty record with sizeof() == 1: under both AAPCS and Win64 it still comes back Ignore, because it falls through to the reportNYI("Aggregate argument type handling") at line 195, which also returns Ignore. Clang passes it as i8, so we still disagree there. Could you reword this to describe what the code does today and add a FIXME at the fall-through?

https://github.com/llvm/llvm-project/pull/224476


More information about the cfe-commits mailing list