[llvm-branch-commits] [llvm] [BOLT][BAT] Support multi-way split functions (PR #87123)

Maksim Panchenko via llvm-branch-commits llvm-branch-commits at lists.llvm.org
Mon Apr 1 16:01:58 PDT 2024


================
@@ -197,8 +197,10 @@ void BoltAddressTranslation::writeMaps(std::map<uint64_t, MapTy> &Maps,
             ? SecondaryEntryPointsMap[Address].size()
             : 0;
     if (Cold) {
-      size_t HotIndex =
-          std::distance(ColdPartSource.begin(), ColdPartSource.find(Address));
+      // `Maps` is keyed by output addresses.
+      auto HotEntryIt = Maps.find(ColdPartSource[Address]);
+      assert(HotEntryIt != Maps.end());
----------------
maksfb wrote:

Does this happen when BAT maps are incomplete? Since BAT is part of the input, should this be an error instead?

https://github.com/llvm/llvm-project/pull/87123


More information about the llvm-branch-commits mailing list