RE: [PATCH 5/5][Arm] New pattern for CSEL, CSET and CSETM instructions

2020-09-17 Thread Omar Tahir
Hi Kyrill, > It's been a while, but I believe you had the following comment about > implementing CSEL: > >> (define_insn_and_split "*thumb2_movsicc_insn" >>[(set (match_operand:SI 0 "s_register_operand" "=l,l,r,r,r,r,r,r,r,r,r,r") >> (if_then_else:SI >> @@ -449,17 +473,14 @@ >>

RE: [PATCH 5/5][Arm] New pattern for CSEL, CSET and CSETM instructions

2020-09-16 Thread Omar Tahir
Hi Kyrill, It's been a while, but I believe you had the following comment about implementing CSEL: > (define_insn_and_split "*thumb2_movsicc_insn" >[(set (match_operand:SI 0 "s_register_operand" "=l,l,r,r,r,r,r,r,r,r,r,r") > (if_then_else:SI > @@ -449,17 +473,14 @@ > it\\t%d3

RE: [PATCH 5/5][Arm] New pattern for CSEL, CSET and CSETM instructions

2020-08-07 Thread Kyrylo Tkachov
Hi Omar, From: Omar Tahir Sent: 04 August 2020 17:16 To: Kyrylo Tkachov ; ni...@redhat.com; Ramana Radhakrishnan ; Richard Earnshaw ; gcc-patches@gcc.gnu.org Subject: [PATCH 5/5][Arm] New pattern for CSEL, CSET and CSETM instructions This patch adds a new pattern, *cmovsi_insn, for

[PATCH 5/5][Arm] New pattern for CSEL, CSET and CSETM instructions

2020-08-04 Thread Omar Tahir
This patch adds a new pattern, *cmovsi_insn, for generating CSEL, CSET and CSETM instructions. It also generates CSINV and CSINC instructions in specific cases where one of the operands is constant. To facilitate this, one new predicate and two new constraints are added, and *compare_scc is restri