OSDN Git Service

AttributeSetNode: Summarize existing attributes in a bitset.
authorMatthias Braun <matze@braunis.de>
Fri, 29 Jan 2016 22:25:13 +0000 (22:25 +0000)
committerMatthias Braun <matze@braunis.de>
Fri, 29 Jan 2016 22:25:13 +0000 (22:25 +0000)
commita5c14e44924b512d02191d6726a5a736655c206b
treed8e7d4c3f442c94f0fe76b150f0965aed63b1a82
parent1626c62205ac0b05e59595395ccb7800d9cdb1d2
AttributeSetNode: Summarize existing attributes in a bitset.

The majority of queries just checks for the existince of an enum
attribute.  We only have 48 of those and can summaryiz them in an
uint64_t bitfield so we can avoid searching the list. This improves
"opt" compile time by 1-4% in my measurements.

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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@259251 91177308-0d34-0410-b5e6-96231b3b80d8
lib/IR/AttributeImpl.h
lib/IR/Attributes.cpp