aboutsummaryrefslogtreecommitdiff
path: root/llvm/tools/llvm-objdump/llvm-objdump.cpp
diff options
context:
space:
mode:
authorShatianWang <38512325+ShatianWang@users.noreply.github.com>2025-02-28 11:06:52 -0500
committerGitHub <noreply@github.com>2025-02-28 11:06:52 -0500
commit7e33bebe7c8c1258248567670209e6756a6cf77a (patch)
tree2ca1cad34837c23d88cb061d947207fb80cb5edb /llvm/tools/llvm-objdump/llvm-objdump.cpp
parentb2525dc66379f2c9942ed3cff6101b035003532c (diff)
downloadllvm-7e33bebe7c8c1258248567670209e6756a6cf77a.zip
llvm-7e33bebe7c8c1258248567670209e6756a6cf77a.tar.gz
llvm-7e33bebe7c8c1258248567670209e6756a6cf77a.tar.bz2
[BOLT] Report flow conservation scores (#127954)
Add two additional profile quality stats for CG (call graph) and CFG (control flow graph) flow conservations besides the CFG discontinuity stats introduced in #109683. The two new stats quantify how different "in-flow" is from "out-flow" in the following cases where they should be equal. The smaller the reported stats, the better the flow conservations are. CG flow conservation: for each function that is not a program entry, the number of times the function is called according to CG ("in-flow") should be equal to the number of times the transition from an entry basic block of the function to another basic block within the function is recorded ("out-flow"). CFG flow conservation: for each basic block that is not a function entry or exit, the number of times the transition into this basic block from another basic block within the function is recorded ("in-flow") should be equal to the number of times the transition from this basic block to another basic block within the function is recorded ("out-flow"). Use `-v=1` for more detailed bucketed stats, and use `-v=2` to dump functions / basic blocks with bad flow conservations.
Diffstat (limited to 'llvm/tools/llvm-objdump/llvm-objdump.cpp')
0 files changed, 0 insertions, 0 deletions