The intent was to fix the PR122769 but it seemed too much changes to
plop into one patch for a generic pass. Hence this piecemeal approach
with initial 3 patches being NFC and doing incremental changes before
landinf the actual change needed.

Please review !

Thx,
-Vineet

Vineet Gupta (5):
  ifcvt: cond zero arith: opencode helper
    noce_bbs_ok_for_cond_zero_arith [NFC]
  ifcvt: cond zero arith: factor out common emit_czero emit calls [NFC]
  ifcvt: cond zero arith: re-expand output pattern ...[NFC]
  ifcvt: cond zero arith: elide short forward branch for signed GE 0
    comparison [PR122769]
  ifcvt: cond zero arith: handle subreg for shift count

 gcc/ifcvt.cc                                  | 212 ++++++------------
 gcc/testsuite/gcc.target/riscv/pr1222769.c    |  17 ++
 .../gcc.target/riscv/zicond_ifcvt_opt.c       |   2 +-
 3 files changed, 91 insertions(+), 140 deletions(-)
 create mode 100644 gcc/testsuite/gcc.target/riscv/pr1222769.c

-- 
2.43.0

Reply via email to