From: Bill Wendling Date: Wed, 19 Dec 2012 09:15:11 +0000 (+0000) Subject: Inline hasFunctionOnlyAttrs into its only use. X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=6424a783add6f00e5a8e5ddbe0289dfe3e271c8b;p=oota-llvm.git Inline hasFunctionOnlyAttrs into its only use. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@170518 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/include/llvm/Attributes.h b/include/llvm/Attributes.h index dff48190235..a6297e0f7f7 100644 --- a/include/llvm/Attributes.h +++ b/include/llvm/Attributes.h @@ -117,30 +117,6 @@ public: /// alignment value. unsigned getStackAlignment() const; - /// \brief Attribute that may be applied to the function itself. These cannot - /// be used on return values or function parameters. - bool hasFunctionOnlyAttrs() const { - return hasAttribute(Attribute::NoReturn) || - hasAttribute(Attribute::NoUnwind) || - hasAttribute(Attribute::ReadNone) || - hasAttribute(Attribute::ReadOnly) || - hasAttribute(Attribute::NoInline) || - hasAttribute(Attribute::AlwaysInline) || - hasAttribute(Attribute::OptimizeForSize) || - hasAttribute(Attribute::StackProtect) || - hasAttribute(Attribute::StackProtectReq) || - hasAttribute(Attribute::NoRedZone) || - hasAttribute(Attribute::NoImplicitFloat) || - hasAttribute(Attribute::Naked) || - hasAttribute(Attribute::InlineHint) || - hasAttribute(Attribute::StackAlignment) || - hasAttribute(Attribute::UWTable) || - hasAttribute(Attribute::NonLazyBind) || - hasAttribute(Attribute::ReturnsTwice) || - hasAttribute(Attribute::AddressSafety) || - hasAttribute(Attribute::MinSize); - } - bool operator==(const Attribute &A) const { return Attrs == A.Attrs; } diff --git a/lib/VMCore/Verifier.cpp b/lib/VMCore/Verifier.cpp index 17301872ea9..aec44355fa5 100644 --- a/lib/VMCore/Verifier.cpp +++ b/lib/VMCore/Verifier.cpp @@ -529,7 +529,25 @@ void Verifier::VerifyParameterAttrs(Attribute Attrs, Type *Ty, if (!Attrs.hasAttributes()) return; - Assert1(!Attrs.hasFunctionOnlyAttrs(), + Assert1(!Attrs.hasAttribute(Attribute::NoReturn) && + !Attrs.hasAttribute(Attribute::NoUnwind) && + !Attrs.hasAttribute(Attribute::ReadNone) && + !Attrs.hasAttribute(Attribute::ReadOnly) && + !Attrs.hasAttribute(Attribute::NoInline) && + !Attrs.hasAttribute(Attribute::AlwaysInline) && + !Attrs.hasAttribute(Attribute::OptimizeForSize) && + !Attrs.hasAttribute(Attribute::StackProtect) && + !Attrs.hasAttribute(Attribute::StackProtectReq) && + !Attrs.hasAttribute(Attribute::NoRedZone) && + !Attrs.hasAttribute(Attribute::NoImplicitFloat) && + !Attrs.hasAttribute(Attribute::Naked) && + !Attrs.hasAttribute(Attribute::InlineHint) && + !Attrs.hasAttribute(Attribute::StackAlignment) && + !Attrs.hasAttribute(Attribute::UWTable) && + !Attrs.hasAttribute(Attribute::NonLazyBind) && + !Attrs.hasAttribute(Attribute::ReturnsTwice) && + !Attrs.hasAttribute(Attribute::AddressSafety) && + !Attrs.hasAttribute(Attribute::MinSize), "Some attributes in '" + Attrs.getAsString() + "' only apply to functions!", V);