diff options
author | Jennifer Schmitz <jschmitz@nvidia.com> | 2024-09-05 08:10:02 -0700 |
---|---|---|
committer | Jennifer Schmitz <jschmitz@nvidia.com> | 2024-09-18 13:07:25 +0200 |
commit | 6f3b6a451771cd54c98768e7db3c5d58aab2b6aa (patch) | |
tree | cd1a625d5c2f37c08b4fe570c43e100eb07f5153 /libiberty/fdmatch.c | |
parent | 5bfb91c14f98f6750281217f737b3d95c4e73584 (diff) | |
download | gcc-trunk.zip gcc-trunk.tar.gz gcc-trunk.tar.bz2 |
In the pattern X - (X / Y) * Y to X % Y, this patch guards the
simplification for vector types by a check for:
1) Support of the mod optab for vectors OR
2) Application before vector lowering for non-VL vectors.
This is to prevent reverting vectorization of modulo to div/mult/sub
if the target does not support vector mod optab.
The patch was bootstrapped and tested with no regression on
aarch64-linux-gnu and x86_64-linux-gnu.
OK for mainline?
Signed-off-by: Jennifer Schmitz <jschmitz@nvidia.com>
gcc/
PR tree-optimization/116569
* match.pd: Guard simplification to trunc_mod with check for
mod optab support.
gcc/testsuite/
PR tree-optimization/116569
* gcc.dg/torture/pr116569.c: New test.
Diffstat (limited to 'libiberty/fdmatch.c')
0 files changed, 0 insertions, 0 deletions