[llvm] [X86] matchAddressRecursively - move ZERO_EXTEND patterns into matchIndexRecursively (PR #85081)

Craig Topper via llvm-commits llvm-commits at lists.llvm.org
Thu Apr 25 11:33:49 PDT 2024


topperc wrote:

To make sure I understand. The fundamental issue seems to be that X86 is deleting nodes while Select_INLINEASM is holding references to them from the selection of an earlier memory operand.

So my immediate thoughs/questions are.
-Can we remove the deletion? If the node is truly dead, it will be pruned when we reach it in the isel selection process. This might affect use counts and affect the behavior of selection while that node is still hanging out in the graph.
-Can we disable the deletion when selecting inline assembly?
-Maybe Select_INLINEASM should be holding the nodes as HandleSDNodes so they will be updated by replaceAllUses.

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


More information about the llvm-commits mailing list