diff options
| author | Stuart Hastings <stuart@apple.com> | 2011-04-28 18:16:06 +0000 |
|---|---|---|
| committer | Stuart Hastings <stuart@apple.com> | 2011-04-28 18:16:06 +0000 |
| commit | b7f62d01369c2a6e4af5dd2a76052ae65892161d (patch) | |
| tree | df5996d862b4e3e5a397e567c9c8c9547a25270d /lib/CodeGen/TargetInfo.cpp | |
| parent | a6ce3e6513f56e4d46399da9e35a3165b097f59e (diff) | |
Replace SmallVector with an array, as suggested by Frits van Bommel. rdar://problem/7662569
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@130417 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/TargetInfo.cpp')
| -rw-r--r-- | lib/CodeGen/TargetInfo.cpp | 19 |
1 files changed, 6 insertions, 13 deletions
diff --git a/lib/CodeGen/TargetInfo.cpp b/lib/CodeGen/TargetInfo.cpp index ee959198d9..ee49f75dc2 100644 --- a/lib/CodeGen/TargetInfo.cpp +++ b/lib/CodeGen/TargetInfo.cpp @@ -2347,14 +2347,7 @@ ABIArgInfo ARMABIInfo::classifyArgumentType(QualType Ty) const { if (getContext().getTypeSizeInChars(Ty) <= CharUnits::fromQuantity(32)) { ElemTy = llvm::Type::getInt32Ty(getVMContext()); SizeRegs = (getContext().getTypeSize(Ty) + 31) / 32; - llvm::SmallVector<const llvm::Type*, 8> LLVMFields; - LLVMFields.push_back(llvm::ArrayType::get(ElemTy, SizeRegs)); - const llvm::Type* STy = llvm::StructType::get(getVMContext(), LLVMFields, - true); - return ABIArgInfo::getDirect(STy); - } - - if (getABIKind() == ARMABIInfo::APCS) { + } else if (getABIKind() == ARMABIInfo::APCS) { // Initial ARM ByVal support is APCS-only. return ABIArgInfo::getIndirect(0, /*ByVal=*/true); } else { @@ -2363,12 +2356,12 @@ ABIArgInfo ARMABIInfo::classifyArgumentType(QualType Ty) const { // byval. ElemTy = llvm::Type::getInt64Ty(getVMContext()); SizeRegs = (getContext().getTypeSize(Ty) + 63) / 64; - llvm::SmallVector<const llvm::Type*, 8> LLVMFields; - LLVMFields.push_back(llvm::ArrayType::get(ElemTy, SizeRegs)); - const llvm::Type* STy = llvm::StructType::get(getVMContext(), LLVMFields, - true); - return ABIArgInfo::getDirect(STy); } + + const llvm::Type* LLVMField[1] = { llvm::ArrayType::get(ElemTy, SizeRegs) }; + const llvm::Type* STy = llvm::StructType::get(getVMContext(), LLVMField, + true); + return ABIArgInfo::getDirect(STy); } static bool isIntegerLikeType(QualType Ty, ASTContext &Context, |
