[llvm] dce72dc - [FunctionAttrs] Bulk remove attributes. NFC.
Benjamin Kramer via llvm-commits
llvm-commits at lists.llvm.org
Fri Aug 28 03:56:43 PDT 2020
Author: Benjamin Kramer
Date: 2020-08-28T12:56:19+02:00
New Revision: dce72dc87040499208ca2e43b6366750431f9a78
URL: https://github.com/llvm/llvm-project/commit/dce72dc87040499208ca2e43b6366750431f9a78
DIFF: https://github.com/llvm/llvm-project/commit/dce72dc87040499208ca2e43b6366750431f9a78.diff
LOG: [FunctionAttrs] Bulk remove attributes. NFC.
Added:
Modified:
llvm/lib/Transforms/IPO/FunctionAttrs.cpp
Removed:
################################################################################
diff --git a/llvm/lib/Transforms/IPO/FunctionAttrs.cpp b/llvm/lib/Transforms/IPO/FunctionAttrs.cpp
index 5f70f8eaebb6..011e95e9eab1 100644
--- a/llvm/lib/Transforms/IPO/FunctionAttrs.cpp
+++ b/llvm/lib/Transforms/IPO/FunctionAttrs.cpp
@@ -281,16 +281,18 @@ static bool addReadAttrs(const SCCNodeSet &SCCNodes, AARGetterT &&AARGetter) {
MadeChange = true;
// Clear out any existing attributes.
- F->removeFnAttr(Attribute::ReadOnly);
- F->removeFnAttr(Attribute::ReadNone);
- F->removeFnAttr(Attribute::WriteOnly);
+ AttrBuilder AttrsToRemove;
+ AttrsToRemove.addAttribute(Attribute::ReadOnly);
+ AttrsToRemove.addAttribute(Attribute::ReadNone);
+ AttrsToRemove.addAttribute(Attribute::WriteOnly);
if (!WritesMemory && !ReadsMemory) {
// Clear out any "access range attributes" if readnone was deduced.
- F->removeFnAttr(Attribute::ArgMemOnly);
- F->removeFnAttr(Attribute::InaccessibleMemOnly);
- F->removeFnAttr(Attribute::InaccessibleMemOrArgMemOnly);
+ AttrsToRemove.addAttribute(Attribute::ArgMemOnly);
+ AttrsToRemove.addAttribute(Attribute::InaccessibleMemOnly);
+ AttrsToRemove.addAttribute(Attribute::InaccessibleMemOrArgMemOnly);
}
+ F->removeAttributes(AttributeList::FunctionIndex, AttrsToRemove);
// Add in the new attribute.
if (WritesMemory && !ReadsMemory)
More information about the llvm-commits
mailing list