[PATCH] D20522: [misched] Extend scheduler to handle unsupported features
Matthias Braun via llvm-commits
llvm-commits at lists.llvm.org
Thu Jun 16 15:12:51 PDT 2016
MatzeB added a comment.
This is a nice addition.
As John Brawn already said the additions to TargetSchedule.td need to be better documented (describe the behaviour and ideally also show a short example). Why wasn't this added as a `list<Predicate> UnsupportedPredicates;` field to SchedMachineModel? Defining unrelated UnsupportedFeatures entities with a string seems odd.
================
Comment at: lib/CodeGen/TargetSchedule.cpp:215
@@ -214,3 +214,3 @@
errs() << "DefIdx " << DefIdx << " exceeds machine model writes for "
- << *DefMI << " (Try with MCSchedModel.CompleteModel set to false)";
+ << *DefMI << " (Try with MCSchedModel.CompleteModel set to false)\n";
llvm_unreachable("incomplete machine model");
----------------
Just commit this unrelated trivial change independently of this patch/review.
================
Comment at: utils/TableGen/CodeGenSchedule.cpp:842-844
@@ +841,5 @@
+ LessRecord());
+ for (RecIter II = UnsupportedFeaturesDefs.begin(),
+ IE = UnsupportedFeaturesDefs.end();
+ II != IE; ++II) {
+ if (!(*II)->getValueInit("SchedModel")->isComplete())
----------------
You can use a range based for here.
Repository:
rL LLVM
http://reviews.llvm.org/D20522
More information about the llvm-commits
mailing list