[PATCH] D90591: [ARM] Introduce t2DoLoopStartTP
Dave Green via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Nov 6 02:09:48 PST 2020
dmgreen added a comment.
> we could currently achieve this patch with probably 10x less code at the IR level.
10x sounds like a lot. I think that the code would still need a t2DoLoopStartTP instruction, so those change would all have to stay. The findLoopComponents is used in other patches - that is what they are built upon and seems generally useful so that would have to stay, along with the "loop" boilerplate changes for that pass. That just leaves ConvertTailPredLoop. If we did it pre-isel then we would need an extra intrinsic for the space of time between where we convert it and ISel, plus the lowering in ISel. It would still need to recognize the instruction and do some checks for things like VCTP's being the same, find the incoming phi value for the loop, then create the new instruction like is done here. This also moves the instruction to the end of the block which we would need to either find a new place for or it would lead to worse performance.
I don't think I see a lot of difference in it, and would prefer not to add a new intrinsic if we can avoid it.
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D90591/new/
https://reviews.llvm.org/D90591
More information about the llvm-commits
mailing list