This refactoring
- Moves the threshold computation methods to InlineCost.cpp.
- Removes state related to Threshold from the base Inliner class and moves it to SimpleInliner since threshold is only relevant for ICA which is used by SimpleInliner.
- Cleans up getInlineThreshold a little bit.
NFC intended. The motivation for this refactor is to allow getInlineThreshold to be called from inside CallAnalyzer when peering through indirect calls instead of using a constant value.
Given that we don't really have a SizeOptLevel in LLVM, but -Os, -Oz settings, we should document here what SizeOptLevel means.