Hi, This trivial patch series is the secondary product from the previous investigation to see how many define_insn_and_split cases where split_condition isn't applied on top of condition for define_insn part and doesn't contain it, when there were some discussions on whether we should warn for empty split condition or join both conditions implicitly etc. (See the threads[1][2]).
For some of investigated define_insn_and_splits, the corresponding split_condition is suspected not robust, especially the split condition has only reload_complete. Lacking of good understanding on the related port and the context of the code, I could be wrong. But I think it may be a good idea to raise them and get them either fixed or clarified. It would be also good as preparation for the possible conditions joining in future. For some ports with the proposed fixes applied, the split conditions in all define_insn_and_splits will either have the explicit leading "&&" or fully contain the condition for define_insn part. In other words, the implicit conditions joining would be one nop for this kind of port, we don't need any other checks/fixes for it. [1] https://gcc.gnu.org/pipermail/gcc-patches/2021-June/571647.html [2] https://gcc.gnu.org/pipermail/gcc-patches/2021-June/572120.html BR, Kewen ----- Kewen Lin (15): frv: Fix non-robust split condition in define_insn_and_split m32c: Fix non-robust split condition in define_insn_and_split rx: Fix non-robust split condition in define_insn_and_split s390: Fix non-robust split condition in define_insn_and_split v850: Fix non-robust split condition in define_insn_and_split visium: Fix non-robust split condition in define_insn_and_split xtensa: Fix non-robust split condition in define_insn_and_split alpha: Fix non-robust split condition in define_insn_and_split arm: Fix non-robust split condition in define_insn_and_split bfin: Fix non-robust split condition in define_insn_and_split csky: Fix non-robust split condition in define_insn_and_split i386: Fix non-robust split condition in define_insn_and_split ia64: Fix non-robust split condition in define_insn_and_split mips: Fix non-robust split condition in define_insn_and_split sh: Fix non-robust split condition in define_insn_and_split gcc/config/alpha/alpha.md | 4 +-- gcc/config/arm/arm.md | 2 +- gcc/config/bfin/bfin.md | 4 +-- gcc/config/csky/csky.md | 28 ++++++++++----------- gcc/config/frv/frv.md | 10 ++++---- gcc/config/i386/i386.md | 20 +++++++-------- gcc/config/ia64/vect.md | 4 +-- gcc/config/m32c/cond.md | 4 +-- gcc/config/mips/mips.md | 4 +-- gcc/config/rx/rx.md | 2 +- gcc/config/s390/s390.md | 2 +- gcc/config/s390/vector.md | 4 +-- gcc/config/sh/sh.md | 8 +++--- gcc/config/v850/v850.md | 8 +++--- gcc/config/visium/visium.md | 50 ++++++++++++++++++------------------- gcc/config/xtensa/xtensa.md | 4 +-- 16 files changed, 79 insertions(+), 79 deletions(-) -- 2.27.0