diff options
author | Bill Wendling <isanbard@gmail.com> | 2012-10-10 07:36:45 +0000 |
---|---|---|
committer | Bill Wendling <isanbard@gmail.com> | 2012-10-10 07:36:45 +0000 |
commit | bbcdf4e2a5d57fed745d4c2a549c57c25f1e3aec (patch) | |
tree | c31599313553762967e0365dde25e00fa2f1c7e6 /llvm/lib/CodeGen/Analysis.cpp | |
parent | 57086ce24895f9a53a3d0eafa32117a6edc4194e (diff) | |
download | bcm5719-llvm-bbcdf4e2a5d57fed745d4c2a549c57c25f1e3aec.tar.gz bcm5719-llvm-bbcdf4e2a5d57fed745d4c2a549c57c25f1e3aec.zip |
Remove the final bits of Attributes being declared in the Attribute
namespace. Use the attribute's enum value instead. No functionality change
intended.
llvm-svn: 165610
Diffstat (limited to 'llvm/lib/CodeGen/Analysis.cpp')
-rw-r--r-- | llvm/lib/CodeGen/Analysis.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/llvm/lib/CodeGen/Analysis.cpp b/llvm/lib/CodeGen/Analysis.cpp index d7214e8b58a..09e30eba579 100644 --- a/llvm/lib/CodeGen/Analysis.cpp +++ b/llvm/lib/CodeGen/Analysis.cpp @@ -314,7 +314,8 @@ bool llvm::isInTailCallPosition(ImmutableCallSite CS, Attributes CalleeRetAttr, // the return. Ignore noalias because it doesn't affect the call sequence. const Function *F = ExitBB->getParent(); Attributes CallerRetAttr = F->getAttributes().getRetAttributes(); - if ((CalleeRetAttr ^ CallerRetAttr) & ~Attribute::NoAlias) + if (Attributes::Builder(CalleeRetAttr ^ CallerRetAttr) + .removeAttribute(Attributes::NoAlias).hasAttributes()) return false; // It's not safe to eliminate the sign / zero extension of the return value. @@ -355,7 +356,8 @@ bool llvm::isInTailCallPosition(SelectionDAG &DAG, SDNode *Node, // Conservatively require the attributes of the call to match those of // the return. Ignore noalias because it doesn't affect the call sequence. Attributes CallerRetAttr = F->getAttributes().getRetAttributes(); - if (CallerRetAttr & ~Attribute::NoAlias) + if (Attributes::Builder(CallerRetAttr) + .removeAttribute(Attributes::NoAlias).hasAttributes()) return false; // It's not safe to eliminate the sign / zero extension of the return value. |