diff options
author | Simon Dardis <simon.dardis@imgtec.com> | 2016-06-24 08:43:27 +0000 |
---|---|---|
committer | Simon Dardis <simon.dardis@imgtec.com> | 2016-06-24 08:43:27 +0000 |
commit | 5f95c9af8d284c04476b03d1f77490e3cdd19e1a (patch) | |
tree | 5bc233036c40b58f579483b9a62d21dafb849aca /llvm/utils/TableGen/CodeGenSchedule.h | |
parent | 86de486d3129f8d3bc05e3241c06f374252ac776 (diff) | |
download | bcm5719-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.h | 8 |
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(); |