Lines Matching refs:Members
233 uint64_t Members) const { in isHomogeneousAggregateSmallEnough()
4898 uint64_t Members) const override;
5036 uint64_t Members = 0; in getParamTypeAlignment() local
5038 isAggregateTypeForABI(Ty) && isHomogeneousAggregate(Ty, Base, Members)) in getParamTypeAlignment()
5059 uint64_t &Members) const { in isHomogeneousAggregate()
5064 if (!isHomogeneousAggregate(AT->getElementType(), Base, Members)) in isHomogeneousAggregate()
5066 Members *= NElements; in isHomogeneousAggregate()
5072 Members = 0; in isHomogeneousAggregate()
5089 Members += FldMembers; in isHomogeneousAggregate()
5114 Members = (RD->isUnion() ? in isHomogeneousAggregate()
5115 std::max(Members, FldMembers) : Members + FldMembers); in isHomogeneousAggregate()
5122 if (getContext().getTypeSize(Base) * Members != in isHomogeneousAggregate()
5126 Members = 1; in isHomogeneousAggregate()
5128 Members = 2; in isHomogeneousAggregate()
5158 return Members > 0 && isHomogeneousAggregateSmallEnough(Base, Members); in isHomogeneousAggregate()
5183 const Type *Base, uint64_t Members) const { in isHomogeneousAggregateSmallEnough()
5193 return Members * NumRegs <= 8; in isHomogeneousAggregateSmallEnough()
5228 uint64_t Members = 0; in classifyArgumentType() local
5230 isHomogeneousAggregate(Ty, Base, Members)) { in classifyArgumentType()
5232 llvm::Type *CoerceTy = llvm::ArrayType::get(BaseTy, Members); in classifyArgumentType()
5298 uint64_t Members = 0; in classifyReturnType() local
5300 isHomogeneousAggregate(RetTy, Base, Members)) { in classifyReturnType()
5302 llvm::Type *CoerceTy = llvm::ArrayType::get(BaseTy, Members); in classifyReturnType()
5426 uint64_t Members) const override;
5687 uint64_t Members = 0; in classifyArgumentType() local
5692 if (!IsWinVariadic && isHomogeneousAggregate(Ty, Base, Members)) { in classifyArgumentType()
5695 llvm::ArrayType::get(CGT.ConvertType(QualType(Base, 0)), Members)); in classifyArgumentType()
5704 llvm::ArrayType::get(CGT.ConvertType(QualType(Base, 0)), Members), 0, in classifyArgumentType()
5770 uint64_t Members = 0; in classifyReturnType() local
5771 if (isHomogeneousAggregate(RetTy, Base, Members) && in classifyReturnType()
5868 uint64_t Members) const { in isHomogeneousAggregateSmallEnough()
5869 return Members <= 4; in isHomogeneousAggregateSmallEnough()
6145 uint64_t Members = 0; in EmitDarwinVAArg() local
6146 IsIndirect = !isHomogeneousAggregate(Ty, Base, Members); in EmitDarwinVAArg()
6232 uint64_t Members) const;
6239 uint64_t Members) const override;
6430 uint64_t Members) const { in classifyHomogeneousAggregate()
6439 llvm::Type *Ty = llvm::ArrayType::get(NewVecTy, Members); in classifyHomogeneousAggregate()
6500 uint64_t Members = 0; in classifyArgumentType() local
6501 if (isHomogeneousAggregate(Ty, Base, Members)) in classifyArgumentType()
6502 return classifyHomogeneousAggregate(Ty, Base, Members); in classifyArgumentType()
6508 uint64_t Members = 0; in classifyArgumentType() local
6509 if (isHomogeneousAggregate(Ty, Base, Members)) { in classifyArgumentType()
6510 assert(Base && Members <= 4 && "unexpected homogeneous aggregate"); in classifyArgumentType()
6512 llvm::ArrayType::get(CGT.ConvertType(QualType(Base, 0)), Members); in classifyArgumentType()
6726 uint64_t Members = 0; in classifyReturnType() local
6727 if (isHomogeneousAggregate(RetTy, Base, Members)) in classifyReturnType()
6728 return classifyHomogeneousAggregate(RetTy, Base, Members); in classifyReturnType()
6862 uint64_t Members) const { in isHomogeneousAggregateSmallEnough()
6863 return Members <= 4; in isHomogeneousAggregateSmallEnough()
6893 uint64_t Members = 0; in EmitVAArg() local
6901 !isHomogeneousAggregate(Ty, Base, Members)) { in EmitVAArg()
8813 uint64_t Members) const override;
8843 const Type *Base, uint64_t Members) const { in isHomogeneousAggregateSmallEnough()
8847 return Members * NumRegs <= MaxNumRegsForArgsRet; in isHomogeneousAggregateSmallEnough()