summaryrefslogtreecommitdiffstats
path: root/llvm/utils/TableGen/CodeGenSchedule.h
diff options
context:
space:
mode:
authorSimon Dardis <simon.dardis@imgtec.com>2016-06-24 08:43:27 +0000
committerSimon Dardis <simon.dardis@imgtec.com>2016-06-24 08:43:27 +0000
commit5f95c9af8d284c04476b03d1f77490e3cdd19e1a (patch)
tree5bc233036c40b58f579483b9a62d21dafb849aca /llvm/utils/TableGen/CodeGenSchedule.h
parent86de486d3129f8d3bc05e3241c06f374252ac776 (diff)
downloadbcm5719-llvm-5f95c9af8d284c04476b03d1f77490e3cdd19e1a.tar.gz
bcm5719-llvm-5f95c9af8d284c04476b03d1f77490e3cdd19e1a.zip
Revert "Revert "[misched] Extend scheduler to handle unsupported features""
This reverts commit r273565. This was an over-eager revert. llvm-svn: 273658
Diffstat (limited to 'llvm/utils/TableGen/CodeGenSchedule.h')
-rw-r--r--llvm/utils/TableGen/CodeGenSchedule.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/llvm/utils/TableGen/CodeGenSchedule.h b/llvm/utils/TableGen/CodeGenSchedule.h
index 7a236ad0dd8..755ffd25b0c 100644
--- a/llvm/utils/TableGen/CodeGenSchedule.h
+++ b/llvm/utils/TableGen/CodeGenSchedule.h
@@ -189,6 +189,10 @@ struct CodeGenProcModel {
// This list is empty if no ItinRW refers to this Processor.
RecVec ItinRWDefs;
+ // List of unsupported feature.
+ // This list is empty if the Processor has no UnsupportedFeatures.
+ RecVec UnsupportedFeaturesDefs;
+
// All read/write resources associated with this processor.
RecVec WriteResDefs;
RecVec ReadAdvanceDefs;
@@ -211,6 +215,8 @@ struct CodeGenProcModel {
unsigned getProcResourceIdx(Record *PRDef) const;
+ bool isUnsupported(const CodeGenInstruction &Inst) const;
+
#ifndef NDEBUG
void dump() const;
#endif
@@ -402,6 +408,8 @@ private:
void collectProcItinRW();
+ void collectProcUnsupportedFeatures();
+
void inferSchedClasses();
void checkCompleteness();
OpenPOWER on IntegriCloud