Lines Matching defs:RetAI
1487 const ABIArgInfo &RetAI = FI.getReturnInfo();
1489 if (RetAI.getKind() == ABIArgInfo::Indirect) {
1490 SwapThisWithSRet = RetAI.isSRetAfterThis();
2547 const ABIArgInfo &RetAI = FI.getReturnInfo();
2553 if (!RetTy->isVoidType() && RetAI.getKind() != ABIArgInfo::Indirect &&
2554 DetermineNoUndef(RetTy, getTypes(), DL, RetAI))
2558 switch (RetAI.getKind()) {
2560 if (RetAI.isSignExt())
2566 if (RetAI.getInReg())
2569 if (canApplyNoFPClass(RetAI, RetTy, true))
2619 if (RetAI.getInReg())
2621 SRETAttrs.addAlignmentAttr(RetAI.getIndirectAlign().getQuantity());
3802 const ABIArgInfo &RetAI = FI.getReturnInfo();
3804 switch (RetAI.getKind()) {
3809 if (RetAI.getInAllocaSRet()) {
3814 FI.getArgStruct(), ArgStruct, RetAI.getInAllocaFieldIndex());
3823 if (RetAI.isSRetAfterThis())
3855 if (RetAI.getCoerceToType() == ConvertType(RetTy) &&
3856 RetAI.getDirectOffset() == 0) {
3879 Address V = emitAddressAtOffset(*this, ReturnValue, RetAI);
3881 RV = CreateCoercedLoad(V, RetAI.getCoerceToType(), *this);
3916 auto coercionType = RetAI.getCoerceAndExpandType();
3938 llvm::Type *returnType = RetAI.getUnpaddedCoerceAndExpandType();
5025 const ABIArgInfo &RetAI = CallInfo.getReturnInfo();
5080 if (RetAI.isIndirect() || RetAI.isInAlloca() || RetAI.isCoerceAndExpand()) {
5081 if (IsVirtualFunctionPointerThunk && RetAI.isIndirect()) {
5098 } else if (RetAI.isInAlloca()) {
5100 Builder.CreateStructGEP(ArgMemory, RetAI.getInAllocaFieldIndex());
5872 switch (RetAI.getKind()) {
5874 auto coercionType = RetAI.getCoerceAndExpandType();
5878 assert(CI->getType() == RetAI.getUnpaddedCoerceAndExpandType());
5913 if (RetAI.getCoerceToType() == RetIRTy &&
5914 RetAI.getDirectOffset() == 0) {
5967 Address StorePtr = emitAddressAtOffset(*this, DestPtr, RetAI);
5970 llvm::TypeSize::getFixed(DestSize - RetAI.getDirectOffset()),