On Tue, Jul 29, 2025 at 6:31 AM Richard Sandiford <richard.sandif...@arm.com> wrote: > > gcc.target/aarch64/saturating_arithmetic_{1,2}.c expect w0 and w1 to > be duplicated into vectors. The tests expected the duplication of w1 > to happen first, but the other order would be fine too. A later > simplify-rtx.cc patch happens to change the order. > > Tested on aarch64-linux-gnu. OK to install?
Ok. > > Richard > > > gcc/testsuite/ > * gcc.target/aarch64/saturating_arithmetic_1.c: Allow w0 and w1 > to be duplicated in either order. > * gcc.target/aarch64/saturating_arithmetic_2.c: Likewise. > --- > .../gcc.target/aarch64/saturating_arithmetic_1.c | 12 ++++++------ > .../gcc.target/aarch64/saturating_arithmetic_2.c | 8 ++++---- > 2 files changed, 10 insertions(+), 10 deletions(-) > > diff --git a/gcc/testsuite/gcc.target/aarch64/saturating_arithmetic_1.c > b/gcc/testsuite/gcc.target/aarch64/saturating_arithmetic_1.c > index acd2e11f41d..8fc1569845b 100644 > --- a/gcc/testsuite/gcc.target/aarch64/saturating_arithmetic_1.c > +++ b/gcc/testsuite/gcc.target/aarch64/saturating_arithmetic_1.c > @@ -4,24 +4,24 @@ > > /* > ** uadd: > -** dup v([0-9]+).8b, w1 > -** dup v([0-9]+).8b, w0 > +** dup v([0-9]+).8b, w[01] > +** dup v([0-9]+).8b, w[01] > ** uqadd b([0-9]+), (?:b\2, b\1|b\1, b\2) > ** umov w0, v\3.b\[0\] > ** ret > */ > /* > ** uadd2: > -** dup v([0-9]+).8b, w1 > -** dup v([0-9]+).8b, w0 > +** dup v([0-9]+).8b, w[01] > +** dup v([0-9]+).8b, w[01] > ** uqadd b([0-9]+), (?:b\2, b\1|b\1, b\2) > ** umov w0, v\3.b\[0\] > ** ret > */ > /* > ** usub: { xfail *-*-* } > -** dup v([0-9]+).8b, w1 > -** dup v([0-9]+).8b, w0 > +** dup v([0-9]+).8b, w[01] > +** dup v([0-9]+).8b, w[01] > ** uqsub b([0-9]+), b\1, b\2 > ** umov w0, v\3.b\[0\] > ** ret > diff --git a/gcc/testsuite/gcc.target/aarch64/saturating_arithmetic_2.c > b/gcc/testsuite/gcc.target/aarch64/saturating_arithmetic_2.c > index 86c88f8447c..dd0fefac639 100644 > --- a/gcc/testsuite/gcc.target/aarch64/saturating_arithmetic_2.c > +++ b/gcc/testsuite/gcc.target/aarch64/saturating_arithmetic_2.c > @@ -4,16 +4,16 @@ > > /* > ** uadd: > -** dup v([0-9]+).4h, w1 > -** dup v([0-9]+).4h, w0 > +** dup v([0-9]+).4h, w[01] > +** dup v([0-9]+).4h, w[01] > ** uqadd h([0-9]+), (?:h\2, h\1|h\1, h\2) > ** umov w0, v\3.h\[0\] > ** ret > */ > /* > ** uadd2: > -** dup v([0-9]+).4h, w1 > -** dup v([0-9]+).4h, w0 > +** dup v([0-9]+).4h, w[01] > +** dup v([0-9]+).4h, w[01] > ** uqadd h([0-9]+), (?:h\2, h\1|h\1, h\2) > ** umov w0, v\3.h\[0\] > ** ret > -- > 2.43.0 >