This is an archive of the discontinued LLVM Phabricator instance.

[clang] [AArch64] Fix handling of HFAs passed to Windows variadic functions
ClosedPublic

Authored by mstorsjo on Apr 14 2021, 4:53 AM.

Details

Summary

The documentation says that for variadic functions, all composites
are treated similarly, no special handling of HFAs/HVAs, not even
for the fixed arguments of a variadic function.

Diff Detail

Event Timeline

mstorsjo created this revision.Apr 14 2021, 4:53 AM
mstorsjo requested review of this revision.Apr 14 2021, 4:53 AM
Herald added a project: Restricted Project. · View Herald TranscriptApr 14 2021, 4:53 AM
rnk accepted this revision.Apr 15 2021, 10:05 AM

lgtm, micro readability suggestion

clang/lib/CodeGen/TargetInfo.cpp
5691

nit: I feel like this would be more readable and short-circuit better:

bool IsWinVariadic = IsWin64 && IsVariadic;
if (!IsWinVariadic && isHomogeneousAggregate(...)) {
This revision is now accepted and ready to land.Apr 15 2021, 10:05 AM