================
@@ -1069,6 +1069,10 @@ Address X86_32ABIInfo::EmitVAArg(CodeGenFunction &CGF,
 
   auto TypeInfo = getContext().getTypeInfoInChars(Ty);
 
+  // Empty records are ignored for parameter passing purposes on non-Windows.
+  if (!IsWin32StructABI && isEmptyRecord(getContext(), Ty, true))
+    return CGF.CreateMemTemp(Ty);
----------------
efriedma-quic wrote:

If it doesn't work with the code as-is, please refactor to the code to make it 
work.  Scattered checks like this are hard to maintain.

The simplest thing here would be to just construct a CCState here, I think?  Or 
if that doesn't work for some reason, make the CCState parameter to 
classifyArgumentType optional.

https://github.com/llvm/llvm-project/pull/86075
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to