[PATCH] D80684: [LiveDebugValues] Speed up removeEntryValue, NFC
    Vedant Kumar via Phabricator via llvm-commits 
    llvm-commits at lists.llvm.org
       
    Wed May 27 18:34:48 PDT 2020
    
    
  
vsk created this revision.
vsk added reviewers: nikic, aprantl, jmorse, djtodoro.
Herald added subscribers: dexonsmith, hiraditya.
Herald added a project: LLVM.
Instead of iterating over all VarLoc IDs in removeEntryValue(), just
iterate over the ones for EntryValueCopyBackupKind VarLocs.
This appears to give an ~8.5x wall time speed-up for LiveDebugValues when
compiling sqlite3.c with a Release clang.
Before:
  2.5402 ( 18.8%)   0.0050 (  0.4%)   2.5452 ( 17.3%)   2.5452 ( 17.3%)
    Live DEBUG_VALUE analysis
After:
  0.2364 (  2.1%)   0.0034 (  0.3%)   0.2399 (  2.0%)   0.2398 (  2.0%)
    Live DEBUG_VALUE analysis
Repository:
  rG LLVM Github Monorepo
https://reviews.llvm.org/D80684
Files:
  llvm/include/llvm/ADT/CoalescingBitVector.h
  llvm/lib/CodeGen/LiveDebugValues.cpp
  llvm/unittests/ADT/CoalescingBitVectorTest.cpp
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D80684.266715.patch
Type: text/x-patch
Size: 6206 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200528/6d71d4da/attachment.bin>
    
    
More information about the llvm-commits
mailing list