Home | History | Annotate | Download | only in IR

Lines Matching refs:Attrs

330   bool VerifyAttributeCount(AttributeSet Attrs, unsigned Params);
331 void VerifyAttributeTypes(AttributeSet Attrs, unsigned Idx, bool isFunction,
333 void VerifyParameterAttrs(AttributeSet Attrs, unsigned Idx, Type *Ty,
335 void VerifyFunctionAttrs(FunctionType *FT, AttributeSet Attrs,
736 void Verifier::VerifyAttributeTypes(AttributeSet Attrs, unsigned Idx,
739 for (unsigned I = 0, E = Attrs.getNumSlots(); I != E; ++I)
740 if (Attrs.getSlotIndex(I) == Idx) {
747 for (AttributeSet::iterator I = Attrs.begin(Slot), E = Attrs.end(Slot);
800 void Verifier::VerifyParameterAttrs(AttributeSet Attrs, unsigned Idx, Type *Ty,
802 if (!Attrs.hasAttributes(Idx))
805 VerifyAttributeTypes(Attrs, Idx, false, V);
808 Assert1(!Attrs.hasAttribute(Idx, Attribute::ByVal) &&
809 !Attrs.hasAttribute(Idx, Attribute::Nest) &&
810 !Attrs.hasAttribute(Idx, Attribute::StructRet) &&
811 !Attrs.hasAttribute(Idx, Attribute::NoCapture) &&
812 !Attrs.hasAttribute(Idx, Attribute::Returned) &&
813 !Attrs.hasAttribute(Idx, Attribute::InAlloca),
820 AttrCount += Attrs.hasAttribute(Idx, Attribute::ByVal);
821 AttrCount += Attrs.hasAttribute(Idx, Attribute::InAlloca);
822 AttrCount += Attrs.hasAttribute(Idx, Attribute::StructRet) ||
823 Attrs.hasAttribute(Idx, Attribute::InReg);
824 AttrCount += Attrs.hasAttribute(Idx, Attribute::Nest);
828 Assert1(!(Attrs.hasAttribute(Idx, Attribute::InAlloca) &&
829 Attrs.hasAttribute(Idx, Attribute::ReadOnly)), "Attributes "
832 Assert1(!(Attrs.hasAttribute(Idx, Attribute::StructRet) &&
833 Attrs.hasAttribute(Idx, Attribute::Returned)), "Attributes "
836 Assert1(!(Attrs.hasAttribute(Idx, Attribute::ZExt) &&
837 Attrs.hasAttribute(Idx, Attribute::SExt)), "Attributes "
840 Assert1(!(Attrs.hasAttribute(Idx, Attribute::ReadNone) &&
841 Attrs.hasAttribute(Idx, Attribute::ReadOnly)), "Attributes "
844 Assert1(!(Attrs.hasAttribute(Idx, Attribute::NoInline) &&
845 Attrs.hasAttribute(Idx, Attribute::AlwaysInline)), "Attributes "
848 Assert1(!AttrBuilder(Attrs, Idx).
855 Assert1(!Attrs
856 !Attrs.hasAttribute(Idx, Attribute::InAlloca),
861 Assert1(!Attrs.hasAttribute(Idx, Attribute::ByVal),
869 void Verifier::VerifyFunctionAttrs(FunctionType *FT, AttributeSet Attrs,
871 if (Attrs.isEmpty())
878 for (unsigned i = 0, e = Attrs.getNumSlots(); i != e; ++i) {
879 unsigned Idx = Attrs.getSlotIndex(i);
889 VerifyParameterAttrs(Attrs, Idx, Ty, Idx == 0, V);
894 if (Attrs.hasAttribute(Idx, Attribute::Nest)) {
899 if (Attrs.hasAttribute(Idx, Attribute::Returned)) {
907 if (Attrs.hasAttribute(Idx, Attribute::StructRet)) {
914 if (Attrs.hasAttribute(Idx, Attribute::InAlloca)) {
920 if (!Attrs.hasAttributes(AttributeSet::FunctionIndex))
923 VerifyAttributeTypes(Attrs, AttributeSet::FunctionIndex, true, V);
925 Assert1(!(Attrs.hasAttribute(AttributeSet::FunctionIndex,
927 Attrs.hasAttribute(AttributeSet::FunctionIndex,
931 Assert1(!(Attrs.hasAttribute(AttributeSet::FunctionIndex,
933 Attrs.hasAttribute(AttributeSet::FunctionIndex,
937 if (Attrs.hasAttribute(AttributeSet::FunctionIndex,
939 Assert1(Attrs.hasAttribute(AttributeSet::FunctionIndex,
943 Assert1(!Attrs.hasAttribute(AttributeSet::FunctionIndex,
947 Assert1(!Attrs.hasAttribute(AttributeSet::FunctionIndex,
952 if (Attrs.hasAttribute(AttributeSet::FunctionIndex,
1005 bool Verifier::VerifyAttributeCount(AttributeSet Attrs, unsigned Params) {
1006 if (Attrs.getNumSlots() == 0)
1009 unsigned LastSlot = Attrs.getNumSlots() - 1;
1010 unsigned LastIndex = Attrs.getSlotIndex(LastSlot);
1013 && (LastSlot == 0 || Attrs.getSlotIndex(LastSlot - 1) <= Params)))
1041 AttributeSet Attrs = F.getAttributes();
1043 Assert1(VerifyAttributeCount(Attrs, FT->getNumParams()),
1047 VerifyFunctionAttrs(FT, Attrs, &F);
1052 Assert1(!Attrs.hasAttribute(AttributeSet::FunctionIndex,
1549 AttributeSet Attrs = CS.getAttributes();
1551 Assert1(VerifyAttributeCount(Attrs, CS.arg_size()),
1555 VerifyFunctionAttrs(FTy, Attrs, I);
1573 if (Attrs.hasAttribute(Idx, Attribute::Nest))
1575 if (Attrs.hasAttribute(Idx, Attribute::Returned))
1582 VerifyParameterAttrs(Attrs, Idx, Ty, false, I);
1584 if (Attrs.hasAttribute(Idx, Attribute::Nest)) {
1589 if (Attrs.hasAttribute(Idx, Attribute::Returned)) {
1598 Assert1(!Attrs.hasAttribute(Idx, Attribute::StructRet),
1601 if (Attrs.hasAttribute(Idx, Attribute::InAlloca))
1631 static AttrBuilder getParameterABIAttributes(int I, AttributeSet Attrs) {
1637 if (Attrs.hasAttribute(I + 1, AK))
1640 if (Attrs.hasAttribute(I + 1, Attribute::Alignment))
1641 Copy.addAlignmentAttr(Attrs.getParamAlignment(I + 1));