diff options
| author | Matthias Braun <matze@braunis.de> | 2016-03-01 20:03:21 +0000 |
|---|---|---|
| committer | Matthias Braun <matze@braunis.de> | 2016-03-01 20:03:21 +0000 |
| commit | 17cb57995eb9535c30cdff864b6157a34d1f5143 (patch) | |
| tree | b3f0a74bf54273a3ceba97c71bec0daaa24cdd5f /llvm/lib/Target/ARM | |
| parent | 8e0a734fc5ee45e2dc8926c58b6ed68fd57500ea (diff) | |
| download | bcm5719-llvm-17cb57995eb9535c30cdff864b6157a34d1f5143.tar.gz bcm5719-llvm-17cb57995eb9535c30cdff864b6157a34d1f5143.zip | |
TableGen: Check scheduling models for completeness
TableGen checks at compiletime that for scheduling models with
"CompleteModel = 1" one of the following holds:
- Is marked with the hasNoSchedulingInfo flag
- The instruction is a subclass of Sched
- There are InstRW definitions in the scheduling model
Typical steps necessary to complete a model:
- Ensure all pseudo instructions that are expanded before machine
scheduling (usually everything handled with EmitYYY() functions in
XXXTargetLowering).
- If a CPU does not support some instructions mark the corresponding
resource unsupported: "WriteRes<WriteXXX, []> { let Unsupported = 1; }".
- Add missing scheduling information.
Differential Revision: http://reviews.llvm.org/D17747
llvm-svn: 262384
Diffstat (limited to 'llvm/lib/Target/ARM')
| -rw-r--r-- | llvm/lib/Target/ARM/ARMScheduleA8.td | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/llvm/lib/Target/ARM/ARMScheduleA8.td b/llvm/lib/Target/ARM/ARMScheduleA8.td index 2c6382542ab..154a889b41a 100644 --- a/llvm/lib/Target/ARM/ARMScheduleA8.td +++ b/llvm/lib/Target/ARM/ARMScheduleA8.td @@ -1070,6 +1070,7 @@ def CortexA8Model : SchedMachineModel { // This is overriden by OperandCycles if the // Itineraries are queried instead. let MispredictPenalty = 13; // Based on estimate of pipeline depth. + let CompleteModel = 0; let Itineraries = CortexA8Itineraries; } |

