This is an archive of the discontinued LLVM Phabricator instance.

[ARM] Cortex-M7 schedule
ClosedPublic

Authored by dpenry on Nov 12 2020, 7:59 AM.

Details

Summary

This patch adds the SchedMachineModel for Cortex-M7. It
also adds test cases for the scheduling information.

Details of the pipeline and descriptions are in comments
in file ARMScheduleM7.td included in this patch.

Diff Detail

Event Timeline

dpenry created this revision.Nov 12 2020, 7:59 AM
dpenry requested review of this revision.Nov 12 2020, 7:59 AM
dmgreen accepted this revision.Nov 12 2020, 8:28 AM

Ah Brilliant. Thanks for putting this up. We have been using this internally for some time to excellent effect.

(For future reference, as it doesn't matter a lot here because it mostly new files, but uploading with lots of context (git diff -U99999) can help make the patches more readable, otherwise phabricator just show "Context not available")

I read through it again now and still could not spot anything particularly wrong. LGTM!

This revision is now accepted and ready to land.Nov 12 2020, 8:28 AM

I know this has been tuned, and the structure looks good (I'm not checking any numbers here), so looks like a good addition to me! I will let Dave, who has looked more into it, LGTM this.

llvm/lib/Target/ARM/ARMScheduleM7.td
197

nit: some punctuation is missing in these comments, also in some other comments below.

llvm/test/tools/llvm-mca/ARM/m7-int.s
1298

nit: we probably don't need these here I guess.

This revision was landed with ongoing or failed builds.Nov 16 2020, 2:16 AM
Closed by commit rG48b43c9d4f03: [ARM] Cortex-M7 schedule (authored by dpenry, committed by dmgreen). · Explain Why
This revision was automatically updated to reflect the committed changes.