AttributeSetImpl: Summarize existing function attributes in a bitset.
authorMatthias Braun <matze@braunis.de>
Fri, 29 Jan 2016 22:25:19 +0000 (22:25 +0000)
committerMatthias Braun <matze@braunis.de>
Fri, 29 Jan 2016 22:25:19 +0000 (22:25 +0000)
commit3328281538d473a5d5614afe8de1842216257d5d
treef8b136e6ce276666c020523a7daf17aa1ac55df6
parent31eeb76f5e3b73f2eb5364ee840789c74723eb1b
AttributeSetImpl: Summarize existing function attributes in a bitset.

The majority of attribute queries checks for the existence of an enum
attribute in the FunctionIndex slot. We only have 48 of those and can
therefore summarize them in an uint64_t bitset which measurably improves
compile time.

Differential Revision: http://reviews.llvm.org/D16618

llvm-svn: 259252
llvm/include/llvm/IR/Attributes.h
llvm/include/llvm/IR/Function.h
llvm/lib/IR/AttributeImpl.h
llvm/lib/IR/Attributes.cpp