[all-commits] [llvm/llvm-project] 03e94f: [BOLT] Change call count output for ICF
maksfb via All-commits
all-commits at lists.llvm.org
Mon Feb 27 15:21:44 PST 2023
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 03e94f66087ea48a6321738130bdf85e714ad281
https://github.com/llvm/llvm-project/commit/03e94f66087ea48a6321738130bdf85e714ad281
Author: Maksim Panchenko <maks at fb.com>
Date: 2023-02-27 (Mon, 27 Feb 2023)
Changed paths:
M bolt/include/bolt/Core/BinaryFunction.h
M bolt/lib/Core/BinaryContext.cpp
M bolt/lib/Passes/IdenticalCodeFolding.cpp
Log Message:
-----------
[BOLT] Change call count output for ICF
ICF optimization runs multiple passes and the order in which functions
are folded could be dependent on the order they are being processed.
This order is indeterministic as functions are intermediately stored in
std::unordered_map<>. Note that this order is mostly stable, but is not
guaranteed to be and can change e.g. after switching to a different C++
library implementation.
Because the processing (and folding) order is indeterministic, the
previous way of calculating merged function call count could produce
different results.
Change the way we calculate the ICF call count to make it independent of
the function folding/processing order.
Mostly NFC as the output binary should remain the same, the change
affects only the console output.
Reviewed By: yota9
Differential Revision: https://reviews.llvm.org/D144807
More information about the All-commits
mailing list