[PATCH] D38200: [GISel]: Process new insts to legalize in the order they were created

Amara Emerson via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Oct 10 09:47:40 PDT 2017


aemerson added a comment.

In https://reviews.llvm.org/D38200#893343, @qcolombet wrote:

> > I'm a bit confused by the above. Should we allow legalization to look at other instructions, or should we not?
>
> I believe we shouldn't allow to look at other instructions. I am guessing we need to do that to perform combines at legalization time and I think we shouldn't go in that direction. I would rather have the combines be a separate pass. I.e., we are not taking the same approach as SelectionDAG here.
>
> Aditya, is this really needed to perform legalization?


Agree, it seems strange for legalisation to need to do this, given that defs could be conceivably hoisted outside of the user's block.

If top-down processing is really necessary, i.e. legalisation really does need to inspect multiple instructions, then the current block iteration strategy will need changing anyway: we're currently doing a linear walk of the blocks when an RPO walk will be needed to ensure defs are processed first.


Repository:
  rL LLVM

https://reviews.llvm.org/D38200





More information about the llvm-commits mailing list