diff options
-rw-r--r-- | include/llvm/Attributes.h | 4 | ||||
-rw-r--r-- | lib/VMCore/Verifier.cpp | 5 |
2 files changed, 2 insertions, 7 deletions
diff --git a/include/llvm/Attributes.h b/include/llvm/Attributes.h index 11c043765c..2a0fbc0ee1 100644 --- a/include/llvm/Attributes.h +++ b/include/llvm/Attributes.h @@ -122,9 +122,6 @@ const AttrConst FunctionOnly = {NoReturn_i | NoUnwind_i | ReadNone_i | Naked_i | InlineHint_i | StackAlignment_i | UWTable_i | NonLazyBind_i | ReturnsTwice_i | AddressSafety_i}; -/// @brief Parameter attributes that do not apply to vararg call arguments. -const AttrConst VarArgsIncompatible = {StructRet_i}; - /// @brief Attributes that are mutually incompatible. const AttrConst MutuallyIncompatible[5] = { {ByVal_i | Nest_i | StructRet_i}, @@ -180,7 +177,6 @@ public: AddressSafety = 27 ///< Address safety checking is on. }; private: - // Currently, we need less than 64 bits. AttributesImpl Attrs; explicit Attributes(AttributesImpl *A); diff --git a/lib/VMCore/Verifier.cpp b/lib/VMCore/Verifier.cpp index b459f7b956..6c60745d60 100644 --- a/lib/VMCore/Verifier.cpp +++ b/lib/VMCore/Verifier.cpp @@ -1170,9 +1170,8 @@ void Verifier::VerifyCallSite(CallSite CS) { VerifyParameterAttrs(Attr, CS.getArgument(Idx-1)->getType(), false, I); - Attributes VArgI = Attr & Attribute::VarArgsIncompatible; - Assert1(!VArgI, "Attribute " + VArgI.getAsString() + - " cannot be used for vararg call arguments!", I); + Assert1(!Attr.hasIncompatibleWithVarArgsAttrs(), + "Attribute 'sret' cannot be used for vararg call arguments!", I); } // Verify that there's no metadata unless it's a direct call to an intrinsic. |