This patch migrates cost values and arithmetic to work on InstructionCost.
When the interfaces to TargetTransformInfo are changed, any InstructionCost
state will propagate naturally.
See this patch for the introduction of the type: https://reviews.llvm.org/D91174
See this thread for context: http://lists.llvm.org/pipermail/llvm-dev/2020-November/146408.html
Here and below: since we're updating function signatures, it would make sense to update the formatting as clang-tidy suggests:
computeSpeculationCost()
This can be done as an NFC preliminary commit.