[PATCH] D116110: Introduce the AttributeMask class
Nikita Popov via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Tue Dec 21 07:46:24 PST 2021
nikic added inline comments.
================
Comment at: llvm/include/llvm/IR/Attributes.h:956
+ assert(Attribute::isEnumAttrKind(Val) &&
+ "Adding integer/type attribute without an argument!");
+ Attrs[Val] = true;
----------------
This assert doesn't make sense to me. AttributeMask doesn't accept arguments.
================
Comment at: llvm/include/llvm/IR/Attributes.h:993
+
+ bool empty() const { return Attrs.none(); }
+ bool hasAttributes() const { return TargetDepAttrs.empty() && Attrs.none(); }
----------------
Should this check TargetDepAttrs as well?
================
Comment at: llvm/include/llvm/IR/Attributes.h:994
+ bool empty() const { return Attrs.none(); }
+ bool hasAttributes() const { return TargetDepAttrs.empty() && Attrs.none(); }
+};
----------------
This looks inverted. Isn't this the implementation of empty()?
================
Comment at: llvm/include/llvm/IR/Attributes.h:1048
+ /// Remove the target-dependent attribute to the builder.
+ AttrBuilder &removeAttribute(Attribute A) {
----------------
to -> from
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D116110/new/
https://reviews.llvm.org/D116110
More information about the cfe-commits
mailing list