diff options
author | Bob Wilson <bob.wilson@apple.com> | 2011-01-10 23:54:17 +0000 |
---|---|---|
committer | Bob Wilson <bob.wilson@apple.com> | 2011-01-10 23:54:17 +0000 |
commit | bd4520b53523634d20bb56bb40a40d56125260fe (patch) | |
tree | d456de3b306c6199c07e3e5315d0caea63d6813c /clang/lib | |
parent | 2083ba400f1de7d5cfcac141168aa76a1dbe429f (diff) | |
download | bcm5719-llvm-bd4520b53523634d20bb56bb40a40d56125260fe.tar.gz bcm5719-llvm-bd4520b53523634d20bb56bb40a40d56125260fe.zip |
Move DefaultABIInfo::classifyReturnType where it belongs. No functional change.
llvm-svn: 123195
Diffstat (limited to 'clang/lib')
-rw-r--r-- | clang/lib/CodeGen/TargetInfo.cpp | 30 |
1 files changed, 15 insertions, 15 deletions
diff --git a/clang/lib/CodeGen/TargetInfo.cpp b/clang/lib/CodeGen/TargetInfo.cpp index 5f7cf843865..beb44dfa5ba 100644 --- a/clang/lib/CodeGen/TargetInfo.cpp +++ b/clang/lib/CodeGen/TargetInfo.cpp @@ -330,6 +330,21 @@ ABIArgInfo DefaultABIInfo::classifyArgumentType(QualType Ty) const { ABIArgInfo::getExtend() : ABIArgInfo::getDirect()); } +ABIArgInfo DefaultABIInfo::classifyReturnType(QualType RetTy) const { + if (RetTy->isVoidType()) + return ABIArgInfo::getIgnore(); + + if (isAggregateTypeForABI(RetTy)) + return ABIArgInfo::getIndirect(0); + + // Treat an enum type as its underlying type. + if (const EnumType *EnumTy = RetTy->getAs<EnumType>()) + RetTy = EnumTy->getDecl()->getIntegerType(); + + return (RetTy->isPromotableIntegerType() ? + ABIArgInfo::getExtend() : ABIArgInfo::getDirect()); +} + /// UseX86_MMXType - Return true if this is an MMX type that should use the special /// x86_mmx type. bool UseX86_MMXType(const llvm::Type *IRType) { @@ -2435,21 +2450,6 @@ llvm::Value *ARMABIInfo::EmitVAArg(llvm::Value *VAListAddr, QualType Ty, return AddrTyped; } -ABIArgInfo DefaultABIInfo::classifyReturnType(QualType RetTy) const { - if (RetTy->isVoidType()) - return ABIArgInfo::getIgnore(); - - if (isAggregateTypeForABI(RetTy)) - return ABIArgInfo::getIndirect(0); - - // Treat an enum type as its underlying type. - if (const EnumType *EnumTy = RetTy->getAs<EnumType>()) - RetTy = EnumTy->getDecl()->getIntegerType(); - - return (RetTy->isPromotableIntegerType() ? - ABIArgInfo::getExtend() : ABIArgInfo::getDirect()); -} - //===----------------------------------------------------------------------===// // SystemZ ABI Implementation //===----------------------------------------------------------------------===// |