Details
Diff Detail
Event Timeline
| llvm/lib/Target/ARM/ARMScheduleA57.td | ||
|---|---|---|
| 43 | You also need to check that the operand is not the invalid register. As a side note: it might be worthy to add a helper MCSchedPredicate named CheckIsValidRegOperand which is basically a shorthand for | |
| 46 | Same. | |
| 48–50 | Same. By the way: the CheckAll <CheckIsRegOperand, CheckAM3OpSub> sequence is a repeated three times (one per each definition). | |
Nice!
The predicates look good to me.
As always, please wait for the final LGTM from @dmgreen (or other people tthat know how to validate the lat/throughput/resource numbers).
You also need to check that the operand is not the invalid register.
So, something like: CheckNot<CheckInvalidRegOperand<2>>.
As a side note: it might be worthy to add a helper MCSchedPredicate named CheckIsValidRegOperand which is basically a shorthand for
CheckNot<CheckInvalidRegOperand<n>>.