diff options
author | Reid Kleckner <rnk@google.com> | 2017-04-24 20:38:30 +0000 |
---|---|---|
committer | Reid Kleckner <rnk@google.com> | 2017-04-24 20:38:30 +0000 |
commit | b4a2d18777f9fe5110b572bb25d0d6187be6f0d9 (patch) | |
tree | c59579769e264eefaf44c5d91dbf3f1b1d1e42d6 /llvm/lib/Bitcode/Writer/ValueEnumerator.cpp | |
parent | b2c390e9f5f71ab8f023a5b428334faac0a07741 (diff) | |
download | bcm5719-llvm-b4a2d18777f9fe5110b572bb25d0d6187be6f0d9.tar.gz bcm5719-llvm-b4a2d18777f9fe5110b572bb25d0d6187be6f0d9.zip |
[Bitcode] Refactor attribute group writing to avoid getSlotAttributes
Summary:
That API creates a temporary AttributeList to carry an index and a
single AttributeSet. We need to carry the index in addition to the set,
because that is how attribute groups are currently encoded.
NFC
Reviewers: pcc
Subscribers: llvm-commits
Differential Revision: https://reviews.llvm.org/D32262
llvm-svn: 301245
Diffstat (limited to 'llvm/lib/Bitcode/Writer/ValueEnumerator.cpp')
-rw-r--r-- | llvm/lib/Bitcode/Writer/ValueEnumerator.cpp | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/llvm/lib/Bitcode/Writer/ValueEnumerator.cpp b/llvm/lib/Bitcode/Writer/ValueEnumerator.cpp index 3800d9abd42..c6f80f0a251 100644 --- a/llvm/lib/Bitcode/Writer/ValueEnumerator.cpp +++ b/llvm/lib/Bitcode/Writer/ValueEnumerator.cpp @@ -891,19 +891,19 @@ void ValueEnumerator::EnumerateAttributes(AttributeList PAL) { if (PAL.isEmpty()) return; // null is always 0. // Do a lookup. - unsigned &Entry = AttributeMap[PAL]; + unsigned &Entry = AttributeListMap[PAL]; if (Entry == 0) { // Never saw this before, add it. - Attribute.push_back(PAL); - Entry = Attribute.size(); + AttributeLists.push_back(PAL); + Entry = AttributeLists.size(); } // Do lookups for all attribute groups. for (unsigned i = 0, e = PAL.getNumSlots(); i != e; ++i) { - AttributeList AS = PAL.getSlotAttributes(i); - unsigned &Entry = AttributeGroupMap[AS]; + IndexAndAttrSet Pair = {PAL.getSlotIndex(i), PAL.getSlotSet(i)}; + unsigned &Entry = AttributeGroupMap[Pair]; if (Entry == 0) { - AttributeGroups.push_back(AS); + AttributeGroups.push_back(Pair); Entry = AttributeGroups.size(); } } |