Remove the AttrBuilder form of the Attribute::get creators.
The AttrBuilder is for building a collection of attributes. The Attribute object
holds only one attribute. So it's not really useful for the Attribute object to
have a creator which takes an AttrBuilder.
This has two fallouts:
1. The AttrBuilder no longer holds its internal attributes in a bit-mask form.
2. The attributes are now ordered alphabetically (hence why the tests have changed).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174110 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/IR/AttributeImpl.h b/lib/IR/AttributeImpl.h
index 442860d..e952578 100644
--- a/lib/IR/AttributeImpl.h
+++ b/lib/IR/AttributeImpl.h
@@ -40,6 +40,8 @@
public:
AttributeImpl(LLVMContext &C, Constant *Kind)
: Context(C), Kind(Kind) {}
+ AttributeImpl(LLVMContext &C, Constant *Kind, ArrayRef<Constant*> Vals)
+ : Context(C), Kind(Kind), Vals(Vals.begin(), Vals.end()) {}
explicit AttributeImpl(LLVMContext &C, Attribute::AttrKind data);
AttributeImpl(LLVMContext &C, Attribute::AttrKind data,
ArrayRef<Constant*> values);