summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStuart Hastings <stuart@apple.com>2011-04-28 21:35:59 +0000
committerStuart Hastings <stuart@apple.com>2011-04-28 21:35:59 +0000
commit9f02fd9d8d81f79ea93d2ac7eaff59ba10e29f53 (patch)
tree0f3cf8f214c1f757ceab35b2b1e919a387a688e6
parent6aa79492a50b737febd580502093c22aa0ebbbc1 (diff)
downloadbcm5719-llvm-9f02fd9d8d81f79ea93d2ac7eaff59ba10e29f53.tar.gz
bcm5719-llvm-9f02fd9d8d81f79ea93d2ac7eaff59ba10e29f53.zip
Raise ARM byval minimum size from 32 to 64, addressing a performance
regression in mason. rdar://problem/7662569 llvm-svn: 130444
-rw-r--r--clang/lib/CodeGen/TargetInfo.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/clang/lib/CodeGen/TargetInfo.cpp b/clang/lib/CodeGen/TargetInfo.cpp
index aa48cb2eebe..bc2472cebbe 100644
--- a/clang/lib/CodeGen/TargetInfo.cpp
+++ b/clang/lib/CodeGen/TargetInfo.cpp
@@ -2344,7 +2344,7 @@ ABIArgInfo ARMABIInfo::classifyArgumentType(QualType Ty) const {
// FIXME: This doesn't handle alignment > 64 bits.
const llvm::Type* ElemTy;
unsigned SizeRegs;
- if (getContext().getTypeSizeInChars(Ty) <= CharUnits::fromQuantity(32)) {
+ if (getContext().getTypeSizeInChars(Ty) <= CharUnits::fromQuantity(64)) {
ElemTy = llvm::Type::getInt32Ty(getVMContext());
SizeRegs = (getContext().getTypeSize(Ty) + 31) / 32;
} else if (getABIKind() == ARMABIInfo::APCS) {
OpenPOWER on IntegriCloud