Change typeIncompatible to return an AttrBuilder instead of new-ing an AttributeSet.

This makes use of the new API which can remove attributes from a set given a builder.

This is much faster than creating a temporary set and reduces llc time by about 0.3% which was all spent creating temporary attributes sets on the context.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@236668 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Pete Cooper
2015-05-06 23:19:56 +00:00
parent 4716d634a2
commit a7574638e7
6 changed files with 23 additions and 39 deletions

View File

@@ -565,7 +565,7 @@ public:
namespace AttributeFuncs {
/// \brief Which attributes cannot be applied to a type.
AttributeSet typeIncompatible(Type *Ty, uint64_t Index);
AttrBuilder typeIncompatible(const Type *Ty);
} // end AttributeFuncs namespace