Remove the bitwise OR operator from the Attributes class. Replace it with the equivalent from the builder class.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165894 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Bill Wendling
2012-10-14 07:17:34 +00:00
parent 3756e70af6
commit 432e606cf1
2 changed files with 10 additions and 8 deletions
+9 -7
View File
@@ -93,9 +93,6 @@ bool Attributes::isEmptyOrSingleton() const {
return Attrs.isEmptyOrSingleton();
}
Attributes Attributes::operator | (const Attributes &A) const {
return Attributes(Raw() | A.Raw());
}
Attributes Attributes::operator & (const Attributes &A) const {
return Attributes(Raw() & A.Raw());
}
@@ -236,8 +233,12 @@ removeAttribute(Attributes::AttrVal Val) {
return *this;
}
Attributes::Builder &Attributes::Builder::
removeAttributes(const Attributes &A) {
Attributes::Builder &Attributes::Builder::addAttributes(const Attributes &A) {
Bits |= A.Raw();
return *this;
}
Attributes::Builder &Attributes::Builder::removeAttributes(const Attributes &A){
Bits &= ~A.Raw();
return *this;
}
@@ -514,8 +515,9 @@ AttrListPtr AttrListPtr::addAttr(unsigned Idx, Attributes Attrs) const {
"Attempt to change alignment!");
#endif
Attributes NewAttrs = OldAttrs | Attrs;
if (NewAttrs == OldAttrs)
Attributes::Builder NewAttrs =
Attributes::Builder(OldAttrs).addAttributes(Attrs);
if (NewAttrs == Attributes::Builder(OldAttrs))
return *this;
SmallVector<AttributeWithIndex, 8> NewAttrList;