Optimizations using profile information

Hi,
Which optimization passes use profile information? http://llvm.org/docs/Passes.html seems to suggest only block placement uses it, is that correct?

Emma.

Using grep in the codebase to look for BlockFrequencyInfo and BranchProbabilityInfo yield a bunch of middle passes like JumpThreading, LoopUnswitch, LoopVectorize, InductiveRangeCheckElimination. There are more in the CodeGen. And I know that we also try to use it to drive ThinLTO importing.

Hi,
Which optimization passes use profile information?
http://llvm.org/docs/Passes.html seems to suggest only block placement
uses it, is that correct?

Using grep in the codebase to look for BlockFrequencyInfo
and BranchProbabilityInfo yield a bunch of middle passes like
JumpThreading, LoopUnswitch, LoopVectorize, InductiveRangeCheckElimination.
There are more in the CodeGen. And I know that we also try to use it to
drive ThinLTO importing.

ThinLTO doesn't care much about profile date right now, but it should in 2

months.

Piotr