diff options
author | Manman Ren <mren@apple.com> | 2012-08-10 20:42:31 +0000 |
---|---|---|
committer | Manman Ren <mren@apple.com> | 2012-08-10 20:42:31 +0000 |
commit | d4badd7420cffe440a48fb6a08d7d00dd8917666 (patch) | |
tree | d6e9cf9017b4ed7af958b6ae5d1498842c13b005 /clang/lib/CodeGen/TargetInfo.cpp | |
parent | e201e27eb1bd7663ef90311c71d43c5781546757 (diff) | |
download | bcm5719-llvm-d4badd7420cffe440a48fb6a08d7d00dd8917666.tar.gz bcm5719-llvm-d4badd7420cffe440a48fb6a08d7d00dd8917666.zip |
ARM: enable struct byval for AAPCS.
rdar://9877866
PR://13350
llvm-svn: 161694
Diffstat (limited to 'clang/lib/CodeGen/TargetInfo.cpp')
-rw-r--r-- | clang/lib/CodeGen/TargetInfo.cpp | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/clang/lib/CodeGen/TargetInfo.cpp b/clang/lib/CodeGen/TargetInfo.cpp index 4aa98d2fd83..752228e2a38 100644 --- a/clang/lib/CodeGen/TargetInfo.cpp +++ b/clang/lib/CodeGen/TargetInfo.cpp @@ -2757,9 +2757,7 @@ ABIArgInfo ARMABIInfo::classifyArgumentType(QualType Ty) const { } } - // FIXME: byval for AAPCS is not yet supported; we need it for performance - // and to support large alignment. - if (getABIKind() == ARMABIInfo::APCS) { + if (getABIKind() == ARMABIInfo::APCS || getABIKind() == ARMABIInfo::AAPCS) { if (getContext().getTypeSizeInChars(Ty) > CharUnits::fromQuantity(64) || getContext().getTypeAlign(Ty) > 64) { return ABIArgInfo::getIndirect(0, /*ByVal=*/true); |