Lines Matching refs:Flags
37 addFlagsUsingAttrFn(ISD::ArgFlagsTy &Flags, in addFlagsUsingAttrFn() argument
41 Flags.setSExt(); in addFlagsUsingAttrFn()
43 Flags.setZExt(); in addFlagsUsingAttrFn()
45 Flags.setInReg(); in addFlagsUsingAttrFn()
47 Flags.setSRet(); in addFlagsUsingAttrFn()
49 Flags.setNest(); in addFlagsUsingAttrFn()
51 Flags.setByVal(); in addFlagsUsingAttrFn()
53 Flags.setByRef(); in addFlagsUsingAttrFn()
55 Flags.setPreallocated(); in addFlagsUsingAttrFn()
57 Flags.setInAlloca(); in addFlagsUsingAttrFn()
59 Flags.setReturned(); in addFlagsUsingAttrFn()
61 Flags.setSwiftSelf(); in addFlagsUsingAttrFn()
63 Flags.setSwiftAsync(); in addFlagsUsingAttrFn()
65 Flags.setSwiftError(); in addFlagsUsingAttrFn()
70 ISD::ArgFlagsTy Flags; in getAttributesForArgIdx() local
71 addFlagsUsingAttrFn(Flags, [&Call, &ArgIdx](Attribute::AttrKind Attr) { in getAttributesForArgIdx()
74 return Flags; in getAttributesForArgIdx()
79 ISD::ArgFlagsTy Flags; in getAttributesForReturn() local
80 addFlagsUsingAttrFn(Flags, [&Call](Attribute::AttrKind Attr) { in getAttributesForReturn()
83 return Flags; in getAttributesForReturn()
86 void CallLowering::addArgFlagsFromAttributes(ISD::ArgFlagsTy &Flags, in addArgFlagsFromAttributes() argument
89 addFlagsUsingAttrFn(Flags, [&Attrs, &OpIdx](Attribute::AttrKind Attr) { in addArgFlagsFromAttributes()
142 if (OrigArg.Flags[0].isSRet() && isa<Instruction>(&Arg)) in lowerCall()
223 auto &Flags = Arg.Flags[0]; in setArgFlags() local
225 addArgFlagsFromAttributes(Flags, Attrs, OpIdx); in setArgFlags()
229 Flags.setPointer(); in setArgFlags()
230 Flags.setPointerAddrSpace(PtrTy->getPointerAddressSpace()); in setArgFlags()
234 if (Flags.isByVal() || Flags.isInAlloca() || Flags.isPreallocated() || in setArgFlags()
235 Flags.isByRef()) { in setArgFlags()
250 if (Flags.isByRef()) in setArgFlags()
251 Flags.setByRefSize(MemSize); in setArgFlags()
253 Flags.setByValSize(MemSize); in setArgFlags()
268 Flags.setMemAlign(MemAlign); in setArgFlags()
269 Flags.setOrigAlign(DL.getABITypeAlign(Arg.Ty)); in setArgFlags()
273 if (Flags.isSwiftSelf()) in setArgFlags()
274 Flags.setReturned(false); in setArgFlags()
304 OrigArg.OrigArgIndex, OrigArg.Flags[0], in splitToValueTypes()
317 OrigArg.Flags[0], OrigArg.IsFixed); in splitToValueTypes()
319 SplitArgs.back().Flags[0].setInConsecutiveRegs(); in splitToValueTypes()
322 SplitArgs.back().Flags[0].setInConsecutiveRegsLast(); in splitToValueTypes()
375 const ISD::ArgFlagsTy Flags) { in buildCopyFromRegs() argument
402 if (Flags.isSExt()) { in buildCopyFromRegs()
405 } else if (Flags.isZExt()) { in buildCopyFromRegs()
666 static unsigned extendOpFromFlags(llvm::ISD::ArgFlagsTy Flags) { in extendOpFromFlags() argument
667 if (Flags.isSExt()) in extendOpFromFlags()
669 if (Flags.isZExt()) in extendOpFromFlags()
694 Args[i].Flags[0], CCInfo)) in determineAssignments()
710 ISD::ArgFlagsTy OrigFlags = Args[i].Flags[0]; in determineAssignments()
711 Args[i].Flags.clear(); in determineAssignments()
714 ISD::ArgFlagsTy Flags = OrigFlags; in determineAssignments() local
716 Flags.setSplit(); in determineAssignments()
718 Flags.setOrigAlign(Align(1)); in determineAssignments()
720 Flags.setSplitEnd(); in determineAssignments()
723 Args[i].Flags.push_back(Flags); in determineAssignments()
725 Args[i].Flags[Part], CCInfo)) { in determineAssignments()
795 const unsigned NumParts = Args[i].Flags.size(); in handleAssignments()
827 ValTy, extendOpFromFlags(Args[i].Flags[0])); in handleAssignments()
840 const ISD::ArgFlagsTy Flags = Args[i].Flags[Part]; in handleAssignments() local
875 if (VA.isMemLoc() && !Flags.isByVal()) { in handleAssignments()
881 LLT MemTy = Handler.getStackValueStoreType(DL, VA, Flags); in handleAssignments()
888 VA.getLocMemOffset(), MPO, Flags); in handleAssignments()
899 } else if (VA.isMemLoc() && Flags.isByVal()) { in handleAssignments()
906 Flags.getByValSize(), VA.getLocMemOffset(), MPO, Flags); in handleAssignments()
912 uint64_t MemSize = Flags.getByValSize(); in handleAssignments()
917 Handler.getStackAddress(MemSize, Offset, DstMPO, Flags); in handleAssignments()
927 Align DstAlign = std::max(Flags.getNonZeroByValAlign(), in handleAssignments()
930 Align SrcAlign = std::max(Flags.getNonZeroByValAlign(), in handleAssignments()
979 LocTy, Args[i].Flags[0]); in handleAssignments()
1069 DemoteArg.Flags[0].setSRet(); in insertSRetIncomingArgument()
1088 DemoteArg.Flags[0].setSRet(); in insertSRetOutgoingArgument()
1100 if (Fn(I, VT, VT, CCValAssign::Full, Outs[I].Flags[0], CCInfo)) in checkReturn()
1111 ISD::ArgFlagsTy Flags = ISD::ArgFlagsTy(); in getReturnInfo() local
1115 addArgFlagsFromAttributes(Flags, Attrs, AttributeList::ReturnIndex); in getReturnInfo()
1124 Outs.emplace_back(PartTy, Flags); in getReturnInfo()
1247 const DataLayout &DL, const CCValAssign &VA, ISD::ArgFlagsTy Flags) const { in getStackValueStoreType()
1254 if (Flags.isPointer()) { in getStackValueStoreType()
1255 LLT PtrTy = LLT::pointer(Flags.getPointerAddrSpace(), in getStackValueStoreType()
1265 unsigned AddrSpace = Flags.getPointerAddrSpace(); in getStackValueStoreType()