Lines Matching refs:ABIArgInfo
54 static ABIArgInfo coerceToIntArray(QualType Ty, in coerceToIntArray()
62 return ABIArgInfo::getDirect(llvm::ArrayType::get(IntType, NumElements)); in coerceToIntArray()
83 ABIArgInfo ABIInfo::getNaturalAlignIndirect(QualType Ty, bool ByVal, in getNaturalAlignIndirect()
86 return ABIArgInfo::getIndirect(getContext().getTypeAlignInChars(Ty), ByVal, in getNaturalAlignIndirect()
90 ABIArgInfo
92 return ABIArgInfo::getIndirectInReg(getContext().getTypeAlignInChars(Ty), in getNaturalAlignIndirectInReg()
235 LLVM_DUMP_METHOD void ABIArgInfo::dump() const { in dump()
639 const ABIArgInfo &AI) { in EmitVAArgInstr()
694 ABIArgInfo classifyReturnType(QualType RetTy) const;
695 ABIArgInfo classifyArgumentType(QualType RetTy) const;
716 ABIArgInfo DefaultABIInfo::classifyArgumentType(QualType Ty) const { in classifyArgumentType()
740 return (isPromotableIntegerTypeForABI(Ty) ? ABIArgInfo::getExtend(Ty) in classifyArgumentType()
741 : ABIArgInfo::getDirect()); in classifyArgumentType()
744 ABIArgInfo DefaultABIInfo::classifyReturnType(QualType RetTy) const { in classifyReturnType()
746 return ABIArgInfo::getIgnore(); in classifyReturnType()
762 return (isPromotableIntegerTypeForABI(RetTy) ? ABIArgInfo::getExtend(RetTy) in classifyReturnType()
763 : ABIArgInfo::getDirect()); in classifyReturnType()
788 ABIArgInfo classifyReturnType(QualType RetTy) const;
789 ABIArgInfo classifyArgumentType(QualType Ty) const;
853 ABIArgInfo WebAssemblyABIInfo::classifyArgumentType(QualType Ty) const { in classifyArgumentType()
863 return ABIArgInfo::getIgnore(); in classifyArgumentType()
868 return ABIArgInfo::getDirect(CGT.ConvertType(QualType(SeltTy, 0))); in classifyArgumentType()
881 return ABIArgInfo::getExpand(); in classifyArgumentType()
889 ABIArgInfo WebAssemblyABIInfo::classifyReturnType(QualType RetTy) const { in classifyReturnType()
896 return ABIArgInfo::getIgnore(); in classifyReturnType()
901 return ABIArgInfo::getDirect(CGT.ConvertType(QualType(SeltTy, 0))); in classifyReturnType()
904 return ABIArgInfo::getDirect(); in classifyReturnType()
934 ABIArgInfo classifyReturnType(QualType RetTy) const;
935 ABIArgInfo classifyArgumentType(QualType RetTy) const;
964 return EmitVAArgInstr(CGF, VAListAddr, Ty, ABIArgInfo::getDirect()); in EmitVAArg()
968 ABIArgInfo PNaClABIInfo::classifyArgumentType(QualType Ty) const { in classifyArgumentType()
978 return ABIArgInfo::getDirect(); in classifyArgumentType()
983 return ABIArgInfo::getDirect(); in classifyArgumentType()
986 return (isPromotableIntegerTypeForABI(Ty) ? ABIArgInfo::getExtend(Ty) in classifyArgumentType()
987 : ABIArgInfo::getDirect()); in classifyArgumentType()
990 ABIArgInfo PNaClABIInfo::classifyReturnType(QualType RetTy) const { in classifyReturnType()
992 return ABIArgInfo::getIgnore(); in classifyReturnType()
1002 return ABIArgInfo::getDirect(); in classifyReturnType()
1009 return (isPromotableIntegerTypeForABI(RetTy) ? ABIArgInfo::getExtend(RetTy) in classifyReturnType()
1010 : ABIArgInfo::getDirect()); in classifyReturnType()
1070 static ABIArgInfo getDirectX86Hva(llvm::Type* T = nullptr) { in getDirectX86Hva()
1071 auto AI = ABIArgInfo::getDirect(T); in getDirectX86Hva()
1132 ABIArgInfo getIndirectResult(QualType Ty, bool ByVal, CCState &State) const;
1134 ABIArgInfo getIndirectReturnResult(QualType Ty, CCState &State) const;
1140 ABIArgInfo classifyReturnType(QualType RetTy, CCState &State) const;
1141 ABIArgInfo classifyArgumentType(QualType RetTy, CCState &State) const;
1158 CharUnits &StackOffset, ABIArgInfo &Info,
1464 ABIArgInfo X86_32ABIInfo::getIndirectReturnResult(QualType RetTy, CCState &State) const { in getIndirectReturnResult()
1475 ABIArgInfo X86_32ABIInfo::classifyReturnType(QualType RetTy, in classifyReturnType()
1478 return ABIArgInfo::getIgnore(); in classifyReturnType()
1486 return ABIArgInfo::getDirect(); in classifyReturnType()
1498 return ABIArgInfo::getDirect(llvm::FixedVectorType::get( in classifyReturnType()
1505 return ABIArgInfo::getDirect(llvm::IntegerType::get(getVMContext(), in classifyReturnType()
1511 return ABIArgInfo::getDirect(); in classifyReturnType()
1527 return ABIArgInfo::getIgnore(); in classifyReturnType()
1542 return ABIArgInfo::getDirect(CGT.ConvertType(QualType(SeltTy, 0))); in classifyReturnType()
1546 return ABIArgInfo::getDirect(llvm::IntegerType::get(getVMContext(),Size)); in classifyReturnType()
1560 return (isPromotableIntegerTypeForABI(RetTy) ? ABIArgInfo::getExtend(RetTy) in classifyReturnType()
1561 : ABIArgInfo::getDirect()); in classifyReturnType()
1614 ABIArgInfo X86_32ABIInfo::getIndirectResult(QualType Ty, bool ByVal, in getIndirectResult()
1629 return ABIArgInfo::getIndirect(CharUnits::fromQuantity(4), /*ByVal=*/true); in getIndirectResult()
1634 return ABIArgInfo::getIndirect(CharUnits::fromQuantity(StackAlign), in getIndirectResult()
1751 Args[I].info = ABIArgInfo::getDirectInReg(); in runVectorCallFirstPass()
1758 ABIArgInfo X86_32ABIInfo::classifyArgumentType(QualType Ty, in classifyArgumentType()
1776 return ABIArgInfo::getInAlloca(/*FieldIndex=*/0); in classifyArgumentType()
1795 return ABIArgInfo::getDirect(); in classifyArgumentType()
1796 return ABIArgInfo::getExpand(); in classifyArgumentType()
1809 return ABIArgInfo::getIgnore(); in classifyArgumentType()
1820 return ABIArgInfo::getDirectInReg(Result); in classifyArgumentType()
1822 return ABIArgInfo::getDirect(Result); in classifyArgumentType()
1839 return ABIArgInfo::getExpandWithPadding( in classifyArgumentType()
1852 return ABIArgInfo::getDirectInReg(); in classifyArgumentType()
1862 return ABIArgInfo::getDirect( in classifyArgumentType()
1867 return ABIArgInfo::getDirect(llvm::IntegerType::get(getVMContext(), 64)); in classifyArgumentType()
1869 return ABIArgInfo::getDirect(); in classifyArgumentType()
1880 return ABIArgInfo::getExtendInReg(Ty); in classifyArgumentType()
1881 return ABIArgInfo::getExtend(Ty); in classifyArgumentType()
1887 return ABIArgInfo::getDirectInReg(); in classifyArgumentType()
1888 return ABIArgInfo::getDirect(); in classifyArgumentType()
1894 return ABIArgInfo::getDirectInReg(); in classifyArgumentType()
1895 return ABIArgInfo::getDirect(); in classifyArgumentType()
1950 UsedInAlloca |= (Args[I].info.getKind() == ABIArgInfo::InAlloca); in computeInfo()
1961 CharUnits &StackOffset, ABIArgInfo &Info, in addFieldToArgStruct()
1973 Info = ABIArgInfo::getInAlloca(FrameFields.size(), IsIndirect); in addFieldToArgStruct()
1991 static bool isArgInAlloca(const ABIArgInfo &Info) { in isArgInAlloca()
1994 case ABIArgInfo::InAlloca: in isArgInAlloca()
1996 case ABIArgInfo::Ignore: in isArgInAlloca()
1997 case ABIArgInfo::IndirectAliased: in isArgInAlloca()
1999 case ABIArgInfo::Indirect: in isArgInAlloca()
2000 case ABIArgInfo::Direct: in isArgInAlloca()
2001 case ABIArgInfo::Extend: in isArgInAlloca()
2003 case ABIArgInfo::Expand: in isArgInAlloca()
2004 case ABIArgInfo::CoerceAndExpand: in isArgInAlloca()
2027 ABIArgInfo &Ret = FI.getReturnInfo(); in rewriteWithInAlloca()
2255 ABIArgInfo getIndirectReturnResult(QualType Ty) const;
2262 ABIArgInfo getIndirectResult(QualType Ty, unsigned freeIntRegs) const;
2264 ABIArgInfo classifyReturnType(QualType RetTy) const;
2266 ABIArgInfo classifyArgumentType(QualType Ty, unsigned freeIntRegs,
2270 ABIArgInfo classifyRegCallStructType(QualType Ty, unsigned &NeededInt,
2273 ABIArgInfo classifyRegCallStructTypeImpl(QualType Ty, unsigned &NeededInt,
2328 ABIArgInfo info = classifyArgumentType(type, 0, neededInt, neededSSE, in isPassedUsingAVXType()
2391 ABIArgInfo classify(QualType Ty, unsigned &FreeSSERegs, bool IsReturnType,
2393 ABIArgInfo reclassifyHvaArgType(QualType Ty, unsigned &FreeSSERegs,
2394 const ABIArgInfo ¤t) const;
3140 ABIArgInfo X86_64ABIInfo::getIndirectReturnResult(QualType Ty) const { in getIndirectReturnResult()
3151 return (isPromotableIntegerTypeForABI(Ty) ? ABIArgInfo::getExtend(Ty) in getIndirectReturnResult()
3152 : ABIArgInfo::getDirect()); in getIndirectReturnResult()
3174 ABIArgInfo X86_64ABIInfo::getIndirectResult(QualType Ty, in getIndirectResult()
3190 return (isPromotableIntegerTypeForABI(Ty) ? ABIArgInfo::getExtend(Ty) in getIndirectResult()
3191 : ABIArgInfo::getDirect()); in getIndirectResult()
3228 return ABIArgInfo::getDirect(llvm::IntegerType::get(getVMContext(), in getIndirectResult()
3232 return ABIArgInfo::getIndirect(CharUnits::fromQuantity(Align)); in getIndirectResult()
3530 ABIArgInfo X86_64ABIInfo::
3545 return ABIArgInfo::getIgnore(); in classifyReturnType()
3575 return ABIArgInfo::getExtend(RetTy); in classifyReturnType()
3616 return ABIArgInfo::getDirect(HighPart, 8); in classifyReturnType()
3621 return ABIArgInfo::getDirect(HighPart, 8); in classifyReturnType()
3644 return ABIArgInfo::getDirect(HighPart, 8); in classifyReturnType()
3655 return ABIArgInfo::getDirect(ResType); in classifyReturnType()
3658 ABIArgInfo X86_64ABIInfo::classifyArgumentType( in classifyArgumentType()
3679 return ABIArgInfo::getIgnore(); in classifyArgumentType()
3720 return ABIArgInfo::getExtend(Ty); in classifyArgumentType()
3754 return ABIArgInfo::getDirect(HighPart, 8); in classifyArgumentType()
3764 return ABIArgInfo::getDirect(HighPart, 8); in classifyArgumentType()
3784 return ABIArgInfo::getDirect(ResType); in classifyArgumentType()
3787 ABIArgInfo
3832 return ABIArgInfo::getDirect(); in classifyRegCallStructTypeImpl()
3835 ABIArgInfo X86_64ABIInfo::classifyRegCallStructType(QualType Ty, in classifyRegCallStructType()
3974 ABIArgInfo AI = classifyArgumentType(Ty, 0, neededInt, neededSSE, in EmitVAArg()
4155 ABIArgInfo
4157 const ABIArgInfo ¤t) const { in reclassifyHvaArgType()
4170 ABIArgInfo WinX86_64ABIInfo::classify(QualType Ty, unsigned &FreeSSERegs, in classify()
4175 return ABIArgInfo::getIgnore(); in classify()
4206 return ABIArgInfo::getDirect(); in classify()
4207 return ABIArgInfo::getExpand(); in classify()
4209 return ABIArgInfo::getIndirect(Align, /*ByVal=*/false); in classify()
4214 return ABIArgInfo::getDirect(); in classify()
4216 return ABIArgInfo::getExpand(); in classify()
4219 return ABIArgInfo::getIndirect(Align, /*ByVal=*/false); in classify()
4229 return ABIArgInfo::getDirect(); in classify()
4239 return ABIArgInfo::getDirect(llvm::IntegerType::get(getVMContext(), Width)); in classify()
4247 return ABIArgInfo::getExtend(Ty); in classify()
4255 return ABIArgInfo::getIndirect(Align, /*ByVal=*/false); in classify()
4265 return ABIArgInfo::getIndirect(Align, /*ByVal=*/false); in classify()
4269 return ABIArgInfo::getDirect(llvm::FixedVectorType::get( in classify()
4284 return ABIArgInfo::getDirect(); in classify()
4285 return ABIArgInfo::getIndirect(Align, /*ByVal=*/false); in classify()
4288 return ABIArgInfo::getDirect(); in classify()
4452 ABIArgInfo classifyReturnType(QualType RetTy) const;
4453 ABIArgInfo classifyArgumentType(QualType Ty) const;
4512 ABIArgInfo AIXABIInfo::classifyReturnType(QualType RetTy) const { in classifyReturnType()
4514 return ABIArgInfo::getDirect(); in classifyReturnType()
4517 return ABIArgInfo::getDirect(); in classifyReturnType()
4520 return ABIArgInfo::getIgnore(); in classifyReturnType()
4525 return (isPromotableTypeForABI(RetTy) ? ABIArgInfo::getExtend(RetTy) in classifyReturnType()
4526 : ABIArgInfo::getDirect()); in classifyReturnType()
4529 ABIArgInfo AIXABIInfo::classifyArgumentType(QualType Ty) const { in classifyArgumentType()
4533 return ABIArgInfo::getDirect(); in classifyArgumentType()
4536 return ABIArgInfo::getDirect(); in classifyArgumentType()
4547 return ABIArgInfo::getIndirect(CCAlign, /*ByVal*/ true, in classifyArgumentType()
4551 return (isPromotableTypeForABI(Ty) ? ABIArgInfo::getExtend(Ty) in classifyArgumentType()
4552 : ABIArgInfo::getDirect()); in classifyArgumentType()
4608 ABIArgInfo classifyReturnType(QualType RetTy) const;
4665 ABIArgInfo PPC32_SVR4_ABIInfo::classifyReturnType(QualType RetTy) const { in classifyReturnType()
4683 return ABIArgInfo::getIgnore(); in classifyReturnType()
4686 return ABIArgInfo::getDirect(CoerceTy); in classifyReturnType()
4898 ABIArgInfo classifyReturnType(QualType RetTy) const;
4899 ABIArgInfo classifyArgumentType(QualType Ty) const;
4924 I.info = ABIArgInfo::getDirectInReg(CGT.ConvertType(QT)); in computeInfo()
5197 ABIArgInfo
5202 return ABIArgInfo::getDirect(); in classifyArgumentType()
5212 return ABIArgInfo::getDirect(CoerceTy); in classifyArgumentType()
5234 return ABIArgInfo::getDirect(CoerceTy); in classifyArgumentType()
5259 return ABIArgInfo::getDirect(CoerceTy); in classifyArgumentType()
5263 return ABIArgInfo::getIndirect(CharUnits::fromQuantity(ABIAlign), in classifyArgumentType()
5268 return (isPromotableTypeForABI(Ty) ? ABIArgInfo::getExtend(Ty) in classifyArgumentType()
5269 : ABIArgInfo::getDirect()); in classifyArgumentType()
5272 ABIArgInfo
5275 return ABIArgInfo::getIgnore(); in classifyReturnType()
5278 return ABIArgInfo::getDirect(); in classifyReturnType()
5288 return ABIArgInfo::getDirect(CoerceTy); in classifyReturnType()
5304 return ABIArgInfo::getDirect(CoerceTy); in classifyReturnType()
5311 return ABIArgInfo::getIgnore(); in classifyReturnType()
5320 return ABIArgInfo::getDirect(CoerceTy); in classifyReturnType()
5327 return (isPromotableTypeForABI(RetTy) ? ABIArgInfo::getExtend(RetTy) in classifyReturnType()
5328 : ABIArgInfo::getDirect()); in classifyReturnType()
5421 ABIArgInfo classifyReturnType(QualType RetTy, bool IsVariadic) const;
5422 ABIArgInfo classifyArgumentType(QualType RetTy) const;
5423 ABIArgInfo coerceIllegalVector(QualType Ty) const;
5555 ABIArgInfo AArch64ABIInfo::coerceIllegalVector(QualType Ty) const { in coerceIllegalVector()
5564 return ABIArgInfo::getDirect(llvm::ScalableVectorType::get( in coerceIllegalVector()
5613 return ABIArgInfo::getDirect(ResType); in coerceIllegalVector()
5620 return ABIArgInfo::getDirect(ResType); in coerceIllegalVector()
5624 return ABIArgInfo::getDirect(ResType); in coerceIllegalVector()
5629 return ABIArgInfo::getDirect(ResType); in coerceIllegalVector()
5634 return ABIArgInfo::getDirect(ResType); in coerceIllegalVector()
5639 ABIArgInfo AArch64ABIInfo::classifyArgumentType(QualType Ty) const { in classifyArgumentType()
5656 ? ABIArgInfo::getExtend(Ty) in classifyArgumentType()
5657 : ABIArgInfo::getDirect()); in classifyArgumentType()
5673 return ABIArgInfo::getIgnore(); in classifyArgumentType()
5678 return ABIArgInfo::getIgnore(); in classifyArgumentType()
5679 return ABIArgInfo::getDirect(llvm::Type::getInt8Ty(getVMContext())); in classifyArgumentType()
5686 return ABIArgInfo::getDirect( in classifyArgumentType()
5710 return ABIArgInfo::getDirect( in classifyArgumentType()
5718 ABIArgInfo AArch64ABIInfo::classifyReturnType(QualType RetTy, in classifyReturnType()
5721 return ABIArgInfo::getIgnore(); in classifyReturnType()
5743 ? ABIArgInfo::getExtend(RetTy) in classifyReturnType()
5744 : ABIArgInfo::getDirect()); in classifyReturnType()
5749 return ABIArgInfo::getIgnore(); in classifyReturnType()
5757 return ABIArgInfo::getDirect(); in classifyReturnType()
5773 return ABIArgInfo::getDirect(llvm::ArrayType::get(BaseTy, Size / 64)); in classifyReturnType()
5775 return ABIArgInfo::getDirect(llvm::IntegerType::get(getVMContext(), Size)); in classifyReturnType()
5845 ABIArgInfo AI = classifyArgumentType(Ty); in EmitAAPCSVAArg()
6094 return EmitVAArgInstr(CGF, VAListAddr, Ty, ABIArgInfo::getDirect()); in EmitDarwinVAArg()
6191 ABIArgInfo classifyReturnType(QualType RetTy, bool isVariadic,
6193 ABIArgInfo classifyArgumentType(QualType RetTy, bool isVariadic,
6195 ABIArgInfo classifyHomogeneousAggregate(QualType Ty, const Type *Base,
6197 ABIArgInfo coerceIllegalVector(QualType Ty) const;
6377 ABIArgInfo ARMABIInfo::coerceIllegalVector(QualType Ty) const { in coerceIllegalVector()
6382 return ABIArgInfo::getDirect(ResType); in coerceIllegalVector()
6387 return ABIArgInfo::getDirect(ResType); in coerceIllegalVector()
6392 ABIArgInfo ARMABIInfo::classifyHomogeneousAggregate(QualType Ty, in classifyHomogeneousAggregate()
6404 return ABIArgInfo::getDirect(Ty, 0, nullptr, false); in classifyHomogeneousAggregate()
6407 return ABIArgInfo::getDirect(nullptr, 0, nullptr, false); in classifyHomogeneousAggregate()
6410 ABIArgInfo ARMABIInfo::classifyArgumentType(QualType Ty, bool isVariadic, in classifyArgumentType()
6439 return (isPromotableIntegerTypeForABI(Ty) ? ABIArgInfo::getExtend(Ty) in classifyArgumentType()
6440 : ABIArgInfo::getDirect()); in classifyArgumentType()
6449 return ABIArgInfo::getIgnore(); in classifyArgumentType()
6468 return ABIArgInfo::getDirect(Ty, 0, nullptr, false); in classifyArgumentType()
6477 return ABIArgInfo::getIndirect( in classifyArgumentType()
6496 return ABIArgInfo::getIndirect(CharUnits::fromQuantity(ABIAlign), in classifyArgumentType()
6520 return ABIArgInfo::getDirect(llvm::ArrayType::get(ElemTy, SizeRegs)); in classifyArgumentType()
6608 ABIArgInfo ARMABIInfo::classifyReturnType(QualType RetTy, bool isVariadic, in classifyReturnType()
6616 return ABIArgInfo::getIgnore(); in classifyReturnType()
6641 return isPromotableIntegerTypeForABI(RetTy) ? ABIArgInfo::getExtend(RetTy) in classifyReturnType()
6642 : ABIArgInfo::getDirect(); in classifyReturnType()
6648 return ABIArgInfo::getIgnore(); in classifyReturnType()
6655 return ABIArgInfo::getDirect(llvm::IntegerType::get( in classifyReturnType()
6663 return ABIArgInfo::getDirect(llvm::Type::getInt8Ty(getVMContext())); in classifyReturnType()
6665 return ABIArgInfo::getDirect(llvm::Type::getInt16Ty(getVMContext())); in classifyReturnType()
6666 return ABIArgInfo::getDirect(llvm::Type::getInt32Ty(getVMContext())); in classifyReturnType()
6676 return ABIArgInfo::getIgnore(); in classifyReturnType()
6697 return ABIArgInfo::getDirect(llvm::Type::getInt32Ty(getVMContext())); in classifyReturnType()
6701 return ABIArgInfo::getDirect(llvm::Type::getInt8Ty(getVMContext())); in classifyReturnType()
6703 return ABIArgInfo::getDirect(llvm::Type::getInt16Ty(getVMContext())); in classifyReturnType()
6704 return ABIArgInfo::getDirect(llvm::Type::getInt32Ty(getVMContext())); in classifyReturnType()
6709 return ABIArgInfo::getDirect(CoerceTy); in classifyReturnType()
6895 ABIArgInfo classifyReturnType(QualType RetTy) const;
6896 ABIArgInfo classifyArgumentType(QualType Ty) const;
6902 ABIArgInfo coerceToIntArrayWithLimit(QualType Ty, unsigned MaxSize) const;
7000 ABIArgInfo NVPTXABIInfo::coerceToIntArrayWithLimit(QualType Ty, in coerceToIntArrayWithLimit()
7008 return ABIArgInfo::getDirect(llvm::ArrayType::get(IntType, NumElements)); in coerceToIntArrayWithLimit()
7011 ABIArgInfo NVPTXABIInfo::classifyReturnType(QualType RetTy) const { in classifyReturnType()
7013 return ABIArgInfo::getIgnore(); in classifyReturnType()
7021 return ABIArgInfo::getDirect(); in classifyReturnType()
7027 return (isPromotableIntegerTypeForABI(RetTy) ? ABIArgInfo::getExtend(RetTy) in classifyReturnType()
7028 : ABIArgInfo::getDirect()); in classifyReturnType()
7031 ABIArgInfo NVPTXABIInfo::classifyArgumentType(QualType Ty) const { in classifyArgumentType()
7042 return ABIArgInfo::getDirect( in classifyArgumentType()
7045 return ABIArgInfo::getDirect( in classifyArgumentType()
7058 return (isPromotableIntegerTypeForABI(Ty) ? ABIArgInfo::getExtend(Ty) in classifyArgumentType()
7059 : ABIArgInfo::getDirect()); in classifyArgumentType()
7184 ABIArgInfo classifyReturnType(QualType RetTy) const;
7185 ABIArgInfo classifyArgumentType(QualType ArgTy) const;
7335 ABIArgInfo AI = classifyArgumentType(Ty); in EmitVAArg()
7473 ABIArgInfo SystemZABIInfo::classifyReturnType(QualType RetTy) const { in classifyReturnType()
7475 return ABIArgInfo::getIgnore(); in classifyReturnType()
7477 return ABIArgInfo::getDirect(); in classifyReturnType()
7480 return (isPromotableIntegerTypeForABI(RetTy) ? ABIArgInfo::getExtend(RetTy) in classifyReturnType()
7481 : ABIArgInfo::getDirect()); in classifyReturnType()
7484 ABIArgInfo SystemZABIInfo::classifyArgumentType(QualType Ty) const { in classifyArgumentType()
7491 return ABIArgInfo::getExtend(Ty); in classifyArgumentType()
7500 return ABIArgInfo::getDirect(CGT.ConvertType(SingleElementTy)); in classifyArgumentType()
7524 return ABIArgInfo::getDirect(PassTy); in classifyArgumentType()
7531 return ABIArgInfo::getDirect(nullptr); in classifyArgumentType()
7541 static ABIArgInfo complexArgInfo() { in complexArgInfo()
7542 ABIArgInfo Info = ABIArgInfo::getDirect(); in complexArgInfo()
7550 ABIArgInfo classifyReturnType(QualType RetTy) const { in classifyReturnType()
7557 ABIArgInfo classifyArgumentType(QualType RetTy) const { in classifyArgumentType()
7629 ABIArgInfo classifyReturnType(QualType RetTy) const;
7630 ABIArgInfo classifyArgumentType(QualType RetTy, uint64_t &Offset) const;
7634 ABIArgInfo extendType(QualType Ty) const;
7787 ABIArgInfo
7803 return ABIArgInfo::getIgnore(); in classifyArgumentType()
7813 ABIArgInfo ArgInfo = in classifyArgumentType()
7814 ABIArgInfo::getDirect(HandleAggregates(Ty, TySize), 0, in classifyArgumentType()
7835 return ABIArgInfo::getDirect( in classifyArgumentType()
7881 ABIArgInfo MipsABIInfo::classifyReturnType(QualType RetTy) const { in classifyReturnType()
7885 return ABIArgInfo::getIgnore(); in classifyReturnType()
7890 return ABIArgInfo::getIgnore(); in classifyReturnType()
7895 return ABIArgInfo::getDirect(); in classifyReturnType()
7901 ABIArgInfo ArgInfo = in classifyReturnType()
7902 ABIArgInfo::getDirect(returnAggregateInRegs(RetTy, Size)); in classifyReturnType()
7923 return ABIArgInfo::getExtend(RetTy); in classifyReturnType()
7927 return ABIArgInfo::getSignExtend(RetTy); in classifyReturnType()
7929 return ABIArgInfo::getDirect(); in classifyReturnType()
7933 ABIArgInfo &RetInfo = FI.getReturnInfo(); in computeInfo()
7995 ABIArgInfo MipsABIInfo::extendType(QualType Ty) const { in extendType()
8000 return ABIArgInfo::getSignExtend(Ty); in extendType()
8002 return ABIArgInfo::getExtend(Ty); in extendType()
8135 ABIArgInfo classifyReturnType(QualType RetTy) const;
8136 ABIArgInfo classifyArgumentType(QualType RetTy) const;
8137 ABIArgInfo classifyArgumentType(QualType RetTy, unsigned *RegsLeft) const;
8205 ABIArgInfo HexagonABIInfo::classifyArgumentType(QualType Ty, in classifyArgumentType()
8219 return isPromotableIntegerTypeForABI(Ty) ? ABIArgInfo::getExtend(Ty) in classifyArgumentType()
8220 : ABIArgInfo::getDirect(); in classifyArgumentType()
8228 return ABIArgInfo::getIgnore(); in classifyArgumentType()
8242 return ABIArgInfo::getDirect(llvm::Type::getIntNTy(getVMContext(), Size)); in classifyArgumentType()
8247 ABIArgInfo HexagonABIInfo::classifyReturnType(QualType RetTy) const { in classifyReturnType()
8249 return ABIArgInfo::getIgnore(); in classifyReturnType()
8260 return ABIArgInfo::getDirectInReg(); in classifyReturnType()
8275 return isPromotableIntegerTypeForABI(RetTy) ? ABIArgInfo::getExtend(RetTy) in classifyReturnType()
8276 : ABIArgInfo::getDirect(); in classifyReturnType()
8280 return ABIArgInfo::getIgnore(); in classifyReturnType()
8288 return ABIArgInfo::getDirect(llvm::Type::getIntNTy(getVMContext(), Size)); in classifyReturnType()
8558 ABIArgInfo getIndirectResult(QualType Ty, bool ByVal, CCState &State) const;
8559 ABIArgInfo classifyArgumentType(QualType RetTy, CCState &State) const;
8580 ABIArgInfo LanaiABIInfo::getIndirectResult(QualType Ty, bool ByVal, in getIndirectResult()
8593 return ABIArgInfo::getIndirect(CharUnits::fromQuantity(4), /*ByVal=*/true, in getIndirectResult()
8598 ABIArgInfo LanaiABIInfo::classifyArgumentType(QualType Ty, in classifyArgumentType()
8618 return ABIArgInfo::getIgnore(); in classifyArgumentType()
8627 return ABIArgInfo::getDirectInReg(Result); in classifyArgumentType()
8647 return ABIArgInfo::getDirectInReg(); in classifyArgumentType()
8648 return ABIArgInfo::getExtend(Ty); in classifyArgumentType()
8651 return ABIArgInfo::getDirectInReg(); in classifyArgumentType()
8652 return ABIArgInfo::getDirect(); in classifyArgumentType()
8693 ABIArgInfo classifyReturnType(QualType RetTy) const;
8694 ABIArgInfo classifyKernelArgumentType(QualType Ty) const;
8695 ABIArgInfo classifyArgumentType(QualType Ty, unsigned &NumRegsLeft) const;
8768 ABIArgInfo AMDGPUABIInfo::classifyReturnType(QualType RetTy) const { in classifyReturnType()
8775 return ABIArgInfo::getIgnore(); in classifyReturnType()
8779 return ABIArgInfo::getDirect(CGT.ConvertType(QualType(SeltTy, 0))); in classifyReturnType()
8790 return ABIArgInfo::getDirect(llvm::Type::getInt16Ty(getVMContext())); in classifyReturnType()
8793 return ABIArgInfo::getDirect(llvm::Type::getInt32Ty(getVMContext())); in classifyReturnType()
8797 return ABIArgInfo::getDirect(llvm::ArrayType::get(I32Ty, 2)); in classifyReturnType()
8801 return ABIArgInfo::getDirect(); in classifyReturnType()
8811 ABIArgInfo AMDGPUABIInfo::classifyKernelArgumentType(QualType Ty) const { in classifyKernelArgumentType()
8835 return ABIArgInfo::getIndirectAliased( in classifyKernelArgumentType()
8844 return ABIArgInfo::getDirect(LTy, 0, nullptr, false); in classifyKernelArgumentType()
8847 ABIArgInfo AMDGPUABIInfo::classifyArgumentType(QualType Ty, in classifyArgumentType()
8861 return ABIArgInfo::getIgnore(); in classifyArgumentType()
8867 return ABIArgInfo::getDirect(CGT.ConvertType(QualType(SeltTy, 0))); in classifyArgumentType()
8882 return ABIArgInfo::getDirect(llvm::Type::getInt16Ty(getVMContext())); in classifyArgumentType()
8885 return ABIArgInfo::getDirect(llvm::Type::getInt32Ty(getVMContext())); in classifyArgumentType()
8889 return ABIArgInfo::getDirect(llvm::ArrayType::get(I32Ty, 2)); in classifyArgumentType()
8896 return ABIArgInfo::getDirect(); in classifyArgumentType()
8902 ABIArgInfo ArgInfo = DefaultABIInfo::classifyArgumentType(Ty); in classifyArgumentType()
9149 ABIArgInfo classifyReturnType(QualType RetTy) const;
9155 ABIArgInfo
9158 return ABIArgInfo::getDirect(); in classifyReturnType()
9212 ABIArgInfo classifyType(QualType RetTy, unsigned SizeLimit) const;
9325 ABIArgInfo
9328 return ABIArgInfo::getIgnore(); in classifyType()
9343 return ABIArgInfo::getExtend(Ty); in classifyType()
9347 return ABIArgInfo::getExtend(Ty); in classifyType()
9351 return ABIArgInfo::getDirect(); in classifyType()
9362 return ABIArgInfo::getDirect(); in classifyType()
9372 return ABIArgInfo::getDirectInReg(CoerceTy); in classifyType()
9374 return ABIArgInfo::getDirect(CoerceTy); in classifyType()
9379 ABIArgInfo AI = classifyType(Ty, 16 * 8); in EmitVAArg()
9395 case ABIArgInfo::Expand: in EmitVAArg()
9396 case ABIArgInfo::CoerceAndExpand: in EmitVAArg()
9397 case ABIArgInfo::InAlloca: in EmitVAArg()
9400 case ABIArgInfo::Extend: { in EmitVAArg()
9407 case ABIArgInfo::Direct: { in EmitVAArg()
9414 case ABIArgInfo::Indirect: in EmitVAArg()
9415 case ABIArgInfo::IndirectAliased: in EmitVAArg()
9422 case ABIArgInfo::Ignore: in EmitVAArg()
9499 void updateState(const ABIArgInfo &Info, QualType Ty, CCState &State) const { in updateState()
9527 ABIArgInfo getIndirectByRef(QualType Ty, bool HasFreeRegs) const;
9528 ABIArgInfo getIndirectByValue(QualType Ty) const;
9529 ABIArgInfo classifyArgumentType(QualType Ty, uint8_t FreeRegs) const;
9530 ABIArgInfo classifyReturnType(QualType RetTy) const;
9540 ABIArgInfo ARCABIInfo::getIndirectByRef(QualType Ty, bool HasFreeRegs) const { in getIndirectByRef()
9545 ABIArgInfo ARCABIInfo::getIndirectByValue(QualType Ty) const { in getIndirectByValue()
9549 return ABIArgInfo::getIndirect(CharUnits::fromQuantity(4), /*ByVal=*/true, in getIndirectByValue()
9560 ABIArgInfo ARCABIInfo::classifyArgumentType(QualType Ty, in classifyArgumentType()
9586 return ABIArgInfo::getIgnore(); in classifyArgumentType()
9595 ABIArgInfo::getDirectInReg(Result) : in classifyArgumentType()
9596 ABIArgInfo::getDirect(Result, 0, nullptr, false); in classifyArgumentType()
9604 ? (FreeRegs >= SizeInRegs ? ABIArgInfo::getExtendInReg(Ty) in classifyArgumentType()
9605 : ABIArgInfo::getExtend(Ty)) in classifyArgumentType()
9606 : (FreeRegs >= SizeInRegs ? ABIArgInfo::getDirectInReg() in classifyArgumentType()
9607 : ABIArgInfo::getDirect()); in classifyArgumentType()
9610 ABIArgInfo ARCABIInfo::classifyReturnType(QualType RetTy) const { in classifyReturnType()
9612 return ABIArgInfo::getDirectInReg(); in classifyReturnType()
9755 ABIArgInfo AI = classifyArgumentType(Ty); in EmitVAArg()
9765 case ABIArgInfo::Expand: in EmitVAArg()
9766 case ABIArgInfo::CoerceAndExpand: in EmitVAArg()
9767 case ABIArgInfo::InAlloca: in EmitVAArg()
9769 case ABIArgInfo::Ignore: in EmitVAArg()
9773 case ABIArgInfo::Extend: in EmitVAArg()
9774 case ABIArgInfo::Direct: in EmitVAArg()
9780 case ABIArgInfo::Indirect: in EmitVAArg()
9781 case ABIArgInfo::IndirectAliased: in EmitVAArg()
10322 ABIArgInfo classifyArgumentType(QualType Ty, bool IsFixed, int &ArgGPRsLeft,
10324 ABIArgInfo classifyReturnType(QualType RetTy) const;
10329 ABIArgInfo extendType(QualType Ty) const;
10335 ABIArgInfo coerceAndExpandFPCCEligibleStruct(llvm::Type *Field1Ty,
10352 bool IsRetIndirect = FI.getReturnInfo().getKind() == ABIArgInfo::Indirect; in computeInfo()
10528 ABIArgInfo RISCVABIInfo::coerceAndExpandFPCCEligibleStruct( in coerceAndExpandFPCCEligibleStruct()
10541 return ABIArgInfo::getCoerceAndExpand( in coerceAndExpandFPCCEligibleStruct()
10572 return ABIArgInfo::getCoerceAndExpand(CoerceToType, UnpaddedCoerceToType); in coerceAndExpandFPCCEligibleStruct()
10575 ABIArgInfo RISCVABIInfo::classifyArgumentType(QualType Ty, bool IsFixed, in classifyArgumentType()
10592 return ABIArgInfo::getIgnore(); in classifyArgumentType()
10600 return ABIArgInfo::getDirect(); in classifyArgumentType()
10609 return ABIArgInfo::getDirect(); in classifyArgumentType()
10670 return ABIArgInfo::getDirect(); in classifyArgumentType()
10681 return ABIArgInfo::getDirect( in classifyArgumentType()
10684 return ABIArgInfo::getDirect( in classifyArgumentType()
10687 return ABIArgInfo::getDirect(llvm::ArrayType::get( in classifyArgumentType()
10694 ABIArgInfo RISCVABIInfo::classifyReturnType(QualType RetTy) const { in classifyReturnType()
10696 return ABIArgInfo::getIgnore(); in classifyReturnType()
10727 ABIArgInfo RISCVABIInfo::extendType(QualType Ty) const { in extendType()
10731 return ABIArgInfo::getSignExtend(Ty); in extendType()
10732 return ABIArgInfo::getExtend(Ty); in extendType()
10774 ABIArgInfo classifyReturnType(QualType RetTy) const;
10775 ABIArgInfo classifyArgumentType(QualType RetTy) const;
10780 ABIArgInfo VEABIInfo::classifyReturnType(QualType Ty) const { in classifyReturnType()
10782 return ABIArgInfo::getDirect(); in classifyReturnType()
10785 return ABIArgInfo::getExtend(Ty); in classifyReturnType()
10789 ABIArgInfo VEABIInfo::classifyArgumentType(QualType Ty) const { in classifyArgumentType()
10791 return ABIArgInfo::getDirect(); in classifyArgumentType()
10794 return ABIArgInfo::getExtend(Ty); in classifyArgumentType()