Ping

On 27/11/2024 20:27, Akram Ahmad wrote:
Hi all,

This patch series adds support for 2 new cases of unsigned scalar saturating 
arithmetic
(one addition, one subtraction). This results in more valid patterns being 
recognised,
which results in a call to .SAT_ADD or .SAT_SUB where relevant.

v3 of this series now introduces support for dg-require-effective-target for 
both usadd
and ussub optabs as well as individual modes that these optabs may be 
implemented for.
aarch64 support for these optabs is in review, so there are currently no 
targets listed
in these effective-target options.

Regression tests for aarch64 all pass with no failures.

v3 changes:
- add support for new effective-target keywords.
- tests for the two new patterns now use the dg-require-effective-target so 
that they are
   skipped on relevant targets.

v2 changes:
- add new tests for both patterns (these will fail on targets which don't 
implement
   the standard insn names for IFN_SAT_ADD and IFN_SAT_SUB; another patch 
series adds
   support for this in aarch64).
- minor adjustment to the constraints on the match statement for 
usadd_left_part_1.

If this is OK for master, please commit these on my behalf, as I do not have 
the ability
to do so.

Many thanks,

Akram

---

Akram Ahmad (3):
   testsuite: Support dg-require-effective-target for us{add, sub}
   Match: support new case of unsigned scalar SAT_SUB
   Match: make SAT_ADD case 7 commutative

  gcc/match.pd                                  | 12 +++-
  .../gcc.dg/tree-ssa/sat-u-add-match-1-u16.c   | 22 ++++++++
  .../gcc.dg/tree-ssa/sat-u-add-match-1-u32.c   | 22 ++++++++
  .../gcc.dg/tree-ssa/sat-u-add-match-1-u64.c   | 22 ++++++++
  .../gcc.dg/tree-ssa/sat-u-add-match-1-u8.c    | 22 ++++++++
  .../gcc.dg/tree-ssa/sat-u-sub-match-1-u16.c   | 15 +++++
  .../gcc.dg/tree-ssa/sat-u-sub-match-1-u32.c   | 15 +++++
  .../gcc.dg/tree-ssa/sat-u-sub-match-1-u64.c   | 15 +++++
  .../gcc.dg/tree-ssa/sat-u-sub-match-1-u8.c    | 15 +++++
  gcc/testsuite/lib/target-supports.exp         | 56 +++++++++++++++++++
  10 files changed, 214 insertions(+), 2 deletions(-)
  create mode 100644 gcc/testsuite/gcc.dg/tree-ssa/sat-u-add-match-1-u16.c
  create mode 100644 gcc/testsuite/gcc.dg/tree-ssa/sat-u-add-match-1-u32.c
  create mode 100644 gcc/testsuite/gcc.dg/tree-ssa/sat-u-add-match-1-u64.c
  create mode 100644 gcc/testsuite/gcc.dg/tree-ssa/sat-u-add-match-1-u8.c
  create mode 100644 gcc/testsuite/gcc.dg/tree-ssa/sat-u-sub-match-1-u16.c
  create mode 100644 gcc/testsuite/gcc.dg/tree-ssa/sat-u-sub-match-1-u32.c
  create mode 100644 gcc/testsuite/gcc.dg/tree-ssa/sat-u-sub-match-1-u64.c
  create mode 100644 gcc/testsuite/gcc.dg/tree-ssa/sat-u-sub-match-1-u8.c

Reply via email to