[PATCH] D76467: [LiveDebugValues] Speed up collectIDsForRegs, NFC

Vedant Kumar via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Mar 19 17:00:23 PDT 2020


vsk created this revision.
vsk added reviewers: aprantl, jmorse, aemerson.
vsk added a project: debug-info.
Herald added a subscriber: hiraditya.

Use the advanceToLowerBound operation available on CoalescingBitVector
iterators to speed up collection of variables which reside within some
set of registers.

The speedup comes from avoiding repeated top-down traversals in
IntervalMap::find. The linear scan forward from one register interval to
the next is unlikely to be as expensive as a full IntervalMap search
starting from the root.

This reduces time spent in LiveDebugValues when compiling sqlite3 by
200ms (about 0.1% - 0.2% of the total User Time).

Depends on D76466 <https://reviews.llvm.org/D76466>.

rdar://60046261


https://reviews.llvm.org/D76467

Files:
  llvm/lib/CodeGen/LiveDebugValues.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D76467.251508.patch
Type: text/x-patch
Size: 5016 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200320/fc7167ce/attachment.bin>


More information about the llvm-commits mailing list