is returning a struct value.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47848
91177308-0d34-0410-b5e6-
96231b3b80d8
/// @brief Determine if the function returns a structure.
bool Function::isStructReturn() const {
- return paramHasAttr(1, ParamAttr::StructRet);
+ return paramHasAttr(1, ParamAttr::StructRet)
+ || isa<StructType>(getReturnType());
}
//===----------------------------------------------------------------------===//
isa<StructType>(F.getReturnType()),
"Functions cannot return aggregate values!", &F);
- Assert1(!F.isStructReturn() || FT->getReturnType() == Type::VoidTy,
- "Invalid struct-return function!", &F);
-
const ParamAttrsList *Attrs = F.getParamAttrs();
Assert1(!Attrs ||