[all-commits] [llvm/llvm-project] 5b979f: [BOLT][Passes] use ADT containers for instrumentat...

David CARLIER via All-commits all-commits at lists.llvm.org
Wed Apr 15 15:17:19 PDT 2026


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 5b979f51e38b50d57c370c0c9b27688c032f6570
      https://github.com/llvm/llvm-project/commit/5b979f51e38b50d57c370c0c9b27688c032f6570
  Author: David CARLIER <devnexen at gmail.com>
  Date:   2026-04-15 (Wed, 15 Apr 2026)

  Changed paths:
    M bolt/lib/Passes/Instrumentation.cpp

  Log Message:
  -----------
  [BOLT][Passes] use ADT containers for instrumentation spanning tree. (#192289)

Swap `std::unordered_map<…, std::set<…>>` for
`DenseMap<…, SmallVector<…>>` in `Instrumentation::instrumentFunction`
and switch read paths from `STOutSet[&BB]` to `find()`. This removes
per-set heap allocations, stops inserting empty buckets on every probe,
and replaces linear `is_contained()` scans over a red-black tree with
linear scans over inline `SmallVector` storage (most basic blocks have
at most a couple of spanning-tree out-edges). NFC.



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list