[SVE][CodeGen] Relax all true isel requirement for predicated operations that have no side effects.
We have isel patterns to allow predicated operations to emit unpredicated instructions when the predicate is all true. However, the predicated operations named #_PRED have no requirement for the result of the inactive lanes and so when those operations have no side effects, floating point exceptions for example, we can also safely emit unpredicated instructions. Doing this allows better register allocation, instruction scheduling and also enables more usage of instructions that take immediate operands. NOTE: This patch does not convert all possible instances but instead focuses on the cases that are testable once D141937 lands. Depends on D141937 Differential Revision: https://reviews.llvm.org/D141938
Loading
Please sign in to comment