[llvm] [X86] Run X86FastPreTileConfigPass only with FastISel. (PR #70754)

Evgenii Kudriashov via llvm-commits llvm-commits at lists.llvm.org
Mon Oct 30 18:48:38 PDT 2023


e-kud wrote:

This is a revision from the phabricator https://reviews.llvm.org/D157458.
The revision hanged up on a dicussion of whether it is a bug or intended behavior in `GlobalISel` when a register doesn't have a class. I've created an issue for the problem: https://github.com/llvm/llvm-project/issues/66531. Want to bring attention to this issue on the next GlobalISel sync meeting.

It's not `X86` problem. The same can be observed on `AArch64` as well. The only difference is that `X86` is able to reveal this problem. At the same time, `X86FastPreTileConfigPass` was enabled in assumption of `SelectionDAG` and `FastISel` and it crashes with `GlobalISel` if there is a single dead instruction. I want to disable it until it is clear whether `GlobalISel` needs it or not.
Another moment, previous enabling looks suspicious because non-zero opt level doesn't guarantee that `FastISel` is not used.

I intentionally do not fix comments in `getRegClass` as it depends on https://github.com/llvm/llvm-project/issues/66531 resolution. However I can add a comment about the issue somewhere if needed.

/cc @qcolombet @arsenm @aemerson 

https://github.com/llvm/llvm-project/pull/70754


More information about the llvm-commits mailing list