This patch adds the Sched Machine Model for Cortex-R52.
Details of the pipeline and descriptions are in comments
in file ARMScheduleR52.td included in this patch.
Paths
| Differential D26500
[ARM] Add machine scheduler for Cortex-R52 ClosedPublic Authored by javed.absar on Nov 10 2016, 5:53 AM.
Details Summary This patch adds the Sched Machine Model for Cortex-R52. Details of the pipeline and descriptions are in comments
Diff Detail
Event Timelinejaved.absar updated this object. Comment Actions LGTM. Is this model "complete"? Ie. Are all the selectable instructions represented in some way? If so, see if you can enable CompleteModel = 1; in the TD file. Comment Actions Thanks Renato. This revision is now accepted and ready to land.Nov 14 2016, 2:51 PM Comment Actions If the instructions that are not relevant to the R52 have associated predicates, you can use "let UnsupportedFeatures = [..]", part of SchedMachineModel to have the compiler time checks disabled for them when you have CompleteModel = 1. See rL273551. Closed by commit rL286949: [ARM] Add machine scheduler for Cortex-R52 (authored by javed.absar). · Explain WhyNov 15 2016, 3:44 AM This revision was automatically updated to reflect the committed changes. Comment Actions Thanks Simon, for the UnsupportedFeatures suggestion. I will put in a patch later if setting UnsupportedFeatures allows me to set CompleteModel=1. I see that it requires one to specify, nonetheless, the scheduling information for the instructions that are supported but not considered vital to carry scheduling information.
Revision Contents
Diff 77976 llvm/trunk/lib/Target/ARM/ARM.td
llvm/trunk/lib/Target/ARM/ARMSchedule.td
llvm/trunk/lib/Target/ARM/ARMScheduleR52.td
llvm/trunk/test/CodeGen/ARM/cortexr52-misched-basic.ll
|