Add a subtarget hook for reporting the misprediction penalty. Use this to provide more precise

cost modeling for if-conversion.  Now if only we had a way to estimate the misprediction probability.

Adjsut CodeGen/ARM/ifcvt10.ll.  The pipeline on Cortex-A8 is long enough that it is still profitable
to predicate an ldm, but the shorter pipeline on Cortex-A9 makes it unprofitable.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114995 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Owen Anderson
2010-09-28 21:57:50 +00:00
parent fd60980eb2
commit 654d5440a4
4 changed files with 19 additions and 3 deletions

View File

@@ -194,6 +194,8 @@ protected:
const std::string & getCPUString() const { return CPUString; }
unsigned getMispredictionPenalty() const;
/// enablePostRAScheduler - True at 'More' optimization.
bool enablePostRAScheduler(CodeGenOpt::Level OptLevel,
TargetSubtarget::AntiDepBreakMode& Mode,