public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug middle-end/102977] New: [GCC12 regression] vectorizer failed to generate complex fma.
@ 2021-10-28  1:34 crazylht at gmail dot com
  2021-10-28  4:44 ` [Bug middle-end/102977] [GCC12 regression] vectorizer failed to generate complex fma with SVE pinskia at gcc dot gnu.org
                   ` (11 more replies)
  0 siblings, 12 replies; 13+ messages in thread
From: crazylht at gmail dot com @ 2021-10-28  1:34 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102977

            Bug ID: 102977
           Summary: [GCC12 regression] vectorizer failed to generate
                    complex fma.
           Product: gcc
           Version: 12.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: middle-end
          Assignee: unassigned at gcc dot gnu.org
          Reporter: crazylht at gmail dot com
  Target Milestone: ---
            Target: aarch64-linux-gnu

#include<complex.h>

#include<complex.h>

void
foo (_Complex _Float16* __restrict a, _Complex _Float16* b, _Complex _Float16
*c)
{
    for (int i =0 ; i != 8; i++)
      a[i] += b[i] * c[i];
}


gcc11.2 generate 

foo:
        mov     x3, 16
        ptrue   p1.b, all
        whilelo p0.h, xzr, x3
        ld1h    z2.h, p0/z, [x1]
        ld1h    z1.h, p0/z, [x2]
        ld1h    z0.h, p0/z, [x0]
        fcmla   z0.h, p1/m, z1.h, z2.h, #0
        fcmla   z0.h, p1/m, z1.h, z2.h, #90
        st1h    z0.h, p0, [x0]
        cntb    x4
        cnth    x5
        add     x0, x0, x4
        add     x1, x1, x4
        add     x2, x2, x4
        whilelo p0.h, x5, x3
        b.none  .L1
        ld1h    z2.h, p0/z, [x1]
        ld1h    z1.h, p0/z, [x2]
        ld1h    z0.h, p0/z, [x0]
        fcmla   z0.h, p1/m, z1.h, z2.h, #0
        fcmla   z0.h, p1/m, z1.h, z2.h, #90
        st1h    z0.h, p0, [x0]
.L1:
        ret


current trunk

foo:
        ptrue   p1.h, vl8
        ptrue   p0.b, all
        ld2h    {z2.h - z3.h}, p1/z, [x1]
        ld2h    {z0.h - z1.h}, p1/z, [x2]
        ld2h    {z16.h - z17.h}, p1/z, [x0]
        fmul    z6.h, z0.h, z3.h
        movprfx z7, z16
        fmla    z7.h, p0/m, z0.h, z2.h
        fmla    z6.h, p0/m, z1.h, z2.h
        movprfx z4, z7
        fmls    z4.h, p0/m, z1.h, z3.h
        fadd    z5.h, z6.h, z17.h
        st2h    {z4.h - z5.h}, p1, [x0]
        ret


options: -Ofast -march=armv8.3-a+sve+fp16
refer to https://godbolt.org/z/4PPKnWvc1

^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Bug middle-end/102977] [GCC12 regression] vectorizer failed to generate complex fma with SVE
  2021-10-28  1:34 [Bug middle-end/102977] New: [GCC12 regression] vectorizer failed to generate complex fma crazylht at gmail dot com
@ 2021-10-28  4:44 ` pinskia at gcc dot gnu.org
  2021-10-28  4:45 ` pinskia at gcc dot gnu.org
                   ` (10 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: pinskia at gcc dot gnu.org @ 2021-10-28  4:44 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102977

Andrew Pinski <pinskia at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         Resolution|---                         |INVALID
             Status|UNCONFIRMED                 |RESOLVED

--- Comment #1 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
Huh.
The trunk code is vectorized all the way:
        ptrue   p1.h, vl8 ; set p1.h to 8 wide
        ptrue   p0.b, all ; set p0.b to all ones
        ld2h    {z2.h - z3.h}, p1/z, [x1] ; load the 8x2 vector into z2/z3
        ld2h    {z0.h - z1.h}, p1/z, [x2] ; load the 8x2 vector into z0/z1
        ld2h    {z16.h - z17.h}, p1/z, [x0] ; load the 8x2 vector into z16/17
        fmul    z6.h, z0.h, z3.h ; z6 = z0 * z3
        movprfx z7, z16          ; z7 = z16
        fmla    z7.h, p0/m, z0.h, z2.h ; z7+=z0*z2
        fmla    z6.h, p0/m, z1.h, z2.h ; z6 += z1*z2
        movprfx z4, z7                 ; z4 = z7
        fmls    z4.h, p0/m, z1.h, z3.h ; z4 -= z1*z3
        fadd    z5.h, z6.h, z17.h      ; z5 = z6 + z17
        st2h    {z4.h - z5.h}, p1, [x0] ; store the 8x2 vector into x0


note the way ld2 works is the first element goes into the first vector, second
element goes into the second vector, the 3rd element goes into the first
vector, the 4th element goes into the second vector.

So this is optimized all the way. Knowing the lower limit of the size of the
vectors will be 128 byte (or 64 half floats) so 8 half floats will always fit
into one vector just fine.
So this is vectorized all the way such that it is unrolled even.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Bug middle-end/102977] [GCC12 regression] vectorizer failed to generate complex fma with SVE
  2021-10-28  1:34 [Bug middle-end/102977] New: [GCC12 regression] vectorizer failed to generate complex fma crazylht at gmail dot com
  2021-10-28  4:44 ` [Bug middle-end/102977] [GCC12 regression] vectorizer failed to generate complex fma with SVE pinskia at gcc dot gnu.org
@ 2021-10-28  4:45 ` pinskia at gcc dot gnu.org
  2021-10-28  4:47 ` pinskia at gcc dot gnu.org
                   ` (9 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: pinskia at gcc dot gnu.org @ 2021-10-28  4:45 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102977

--- Comment #2 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
Note st2 does the opposite of ld2 while doing the storing of the vector.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Bug middle-end/102977] [GCC12 regression] vectorizer failed to generate complex fma with SVE
  2021-10-28  1:34 [Bug middle-end/102977] New: [GCC12 regression] vectorizer failed to generate complex fma crazylht at gmail dot com
  2021-10-28  4:44 ` [Bug middle-end/102977] [GCC12 regression] vectorizer failed to generate complex fma with SVE pinskia at gcc dot gnu.org
  2021-10-28  4:45 ` pinskia at gcc dot gnu.org
@ 2021-10-28  4:47 ` pinskia at gcc dot gnu.org
  2021-10-28  4:52 ` [Bug middle-end/102977] [12 Regression] vectorizer failed to use armv8.3-a complex fma pinskia at gcc dot gnu.org
                   ` (8 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: pinskia at gcc dot gnu.org @ 2021-10-28  4:47 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102977

Andrew Pinski <pinskia at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|RESOLVED                    |UNCONFIRMED
         Resolution|INVALID                     |---

--- Comment #3 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
Oh you mean fcmla.
Never mind.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Bug middle-end/102977] [12 Regression] vectorizer failed to use armv8.3-a complex fma
  2021-10-28  1:34 [Bug middle-end/102977] New: [GCC12 regression] vectorizer failed to generate complex fma crazylht at gmail dot com
                   ` (2 preceding siblings ...)
  2021-10-28  4:47 ` pinskia at gcc dot gnu.org
@ 2021-10-28  4:52 ` pinskia at gcc dot gnu.org
  2021-10-28  4:58 ` [Bug tree-optimization/102977] " pinskia at gcc dot gnu.org
                   ` (7 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: pinskia at gcc dot gnu.org @ 2021-10-28  4:52 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102977

Andrew Pinski <pinskia at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Last reconfirmed|                            |2021-10-28
            Summary|[12 Regression] vectorizer  |[12 Regression] vectorizer
                   |failed to use complex fma   |failed to use armv8.3-a
                   |with SVE                    |complex fma
             Status|UNCONFIRMED                 |NEW
     Ever confirmed|0                           |1

--- Comment #4 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
it is easier to understand what is going wrong with:
#include<complex.h>

void
foo (_Complex float* a, _Complex float* b, _Complex float *c)
{
    for (int i =0 ; i != 4; i++)
      a[i] += b[i] * c[i];
}

Oh you don't need SVE either because it was added for normal SIMD in ARMv8.3-a.

Confirmed.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Bug tree-optimization/102977] [12 Regression] vectorizer failed to use armv8.3-a complex fma
  2021-10-28  1:34 [Bug middle-end/102977] New: [GCC12 regression] vectorizer failed to generate complex fma crazylht at gmail dot com
                   ` (3 preceding siblings ...)
  2021-10-28  4:52 ` [Bug middle-end/102977] [12 Regression] vectorizer failed to use armv8.3-a complex fma pinskia at gcc dot gnu.org
@ 2021-10-28  4:58 ` pinskia at gcc dot gnu.org
  2021-10-28  5:12 ` pinskia at gcc dot gnu.org
                   ` (6 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: pinskia at gcc dot gnu.org @ 2021-10-28  4:58 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102977

Andrew Pinski <pinskia at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
          Component|middle-end                  |tree-optimization
   Target Milestone|---                         |12.0

^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Bug tree-optimization/102977] [12 Regression] vectorizer failed to use armv8.3-a complex fma
  2021-10-28  1:34 [Bug middle-end/102977] New: [GCC12 regression] vectorizer failed to generate complex fma crazylht at gmail dot com
                   ` (4 preceding siblings ...)
  2021-10-28  4:58 ` [Bug tree-optimization/102977] " pinskia at gcc dot gnu.org
@ 2021-10-28  5:12 ` pinskia at gcc dot gnu.org
  2021-10-28  6:48 ` crazylht at gmail dot com
                   ` (5 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: pinskia at gcc dot gnu.org @ 2021-10-28  5:12 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102977

Andrew Pinski <pinskia at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |needs-bisection

--- Comment #5 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
The testcases added for this case does not actually test that complex fma was
done.
The testcases were added in r11-6697.  The aarch64 patterns were added with
r11-6734 .

^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Bug tree-optimization/102977] [12 Regression] vectorizer failed to use armv8.3-a complex fma
  2021-10-28  1:34 [Bug middle-end/102977] New: [GCC12 regression] vectorizer failed to generate complex fma crazylht at gmail dot com
                   ` (5 preceding siblings ...)
  2021-10-28  5:12 ` pinskia at gcc dot gnu.org
@ 2021-10-28  6:48 ` crazylht at gmail dot com
  2021-10-28  8:25 ` tnfchris at gcc dot gnu.org
                   ` (4 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: crazylht at gmail dot com @ 2021-10-28  6:48 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102977

--- Comment #6 from Hongtao.liu <crazylht at gmail dot com> ---
(In reply to Andrew Pinski from comment #3)
> Oh you mean fcmla.
> Never mind.

(In reply to Andrew Pinski from comment #4)
> it is easier to understand what is going wrong with:
> #include<complex.h>
> 
> void
> foo (_Complex float* a, _Complex float* b, _Complex float *c)
> {
>     for (int i =0 ; i != 4; i++)
>       a[i] += b[i] * c[i];
> }
> 
> Oh you don't need SVE either because it was added for normal SIMD in
> ARMv8.3-a.
Yes.

For x86 side, AVX512-FP16 have vfcmaddcph/fcmaddcph for _Float16
cmla/conj_cmla, the issue is found when we're working on supporting that.

NOTE: slp pattern match for .COMPLEX_MUL is ok.

#include<complex.h>

void
foo (_Complex float* a, _Complex float* b, _Complex float *c)
{
    for (int i =0 ; i != 4; i++)
      a[i] = b[i] * c[i];
}

^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Bug tree-optimization/102977] [12 Regression] vectorizer failed to use armv8.3-a complex fma
  2021-10-28  1:34 [Bug middle-end/102977] New: [GCC12 regression] vectorizer failed to generate complex fma crazylht at gmail dot com
                   ` (6 preceding siblings ...)
  2021-10-28  6:48 ` crazylht at gmail dot com
@ 2021-10-28  8:25 ` tnfchris at gcc dot gnu.org
  2021-10-28  8:52 ` tnfchris at gcc dot gnu.org
                   ` (3 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: tnfchris at gcc dot gnu.org @ 2021-10-28  8:25 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102977

Tamar Christina <tnfchris at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Assignee|unassigned at gcc dot gnu.org      |tnfchris at gcc dot gnu.org
             Status|NEW                         |ASSIGNED

--- Comment #7 from Tamar Christina <tnfchris at gcc dot gnu.org> ---
Yes the SLP tree layout was changed in GCC 12 so the detection for FMA and FMS
are broken. I have them fixed in my local trunk but am working on a related
patch before I post them.

Mine.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Bug tree-optimization/102977] [12 Regression] vectorizer failed to use armv8.3-a complex fma
  2021-10-28  1:34 [Bug middle-end/102977] New: [GCC12 regression] vectorizer failed to generate complex fma crazylht at gmail dot com
                   ` (7 preceding siblings ...)
  2021-10-28  8:25 ` tnfchris at gcc dot gnu.org
@ 2021-10-28  8:52 ` tnfchris at gcc dot gnu.org
  2021-10-29 11:49 ` cvs-commit at gcc dot gnu.org
                   ` (2 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: tnfchris at gcc dot gnu.org @ 2021-10-28  8:52 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102977

--- Comment #8 from Tamar Christina <tnfchris at gcc dot gnu.org> ---
Actually I'll just push the fix for this out now.

> The testcases added for this case does not actually test that complex fma was done.

yes, the way we were originally testing depended on target support for these
patterns, which made it nearly impossible to write testcases as different arm
options would change the support across AArch64, SVE, MVE, AArch32, SVE2.

This has been changed to output detection regardless of targets so the
testcases can now be properly written.  Should be addressed in the patch I'm
pushing out.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Bug tree-optimization/102977] [12 Regression] vectorizer failed to use armv8.3-a complex fma
  2021-10-28  1:34 [Bug middle-end/102977] New: [GCC12 regression] vectorizer failed to generate complex fma crazylht at gmail dot com
                   ` (8 preceding siblings ...)
  2021-10-28  8:52 ` tnfchris at gcc dot gnu.org
@ 2021-10-29 11:49 ` cvs-commit at gcc dot gnu.org
  2021-10-29 11:49 ` cvs-commit at gcc dot gnu.org
  2021-10-29 11:51 ` tnfchris at gcc dot gnu.org
  11 siblings, 0 replies; 13+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2021-10-29 11:49 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102977

--- Comment #9 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Tamar Christina <tnfchris@gcc.gnu.org>:

https://gcc.gnu.org/g:ed3de62ac949c92ad41ef6de7cc926fbb2a510ce

commit r12-4785-ged3de62ac949c92ad41ef6de7cc926fbb2a510ce
Author: Tamar Christina <tamar.christina@arm.com>
Date:   Fri Oct 29 12:45:41 2021 +0100

    middle-end: Update the Arm complex numbers auto-vec detection to the new
format of the SLP tree.

    The layout of the SLP tree has changed in GCC 12 which
    broke the detection of complex FMA and FMS.

    This patch updates the detection to the new tree shape
    and by necessity merges the complex MUL and FMA detection
    into one.

    This does not yet address the wrong code-gen PR which I
    will fix in a different patch as that needs backporting.

    gcc/ChangeLog:

            PR tree-optimization/102977
            * tree-vect-slp-patterns.c (vect_match_call_p): Remove.
            (vect_detect_pair_op): Add crosslane check.
            (vect_match_call_complex_mla): Remove.
            (class complex_mul_pattern): Update comment.
            (complex_mul_pattern::matches): Update detection.
            (class complex_fma_pattern): Remove.
            (complex_fma_pattern::matches): Remove.
            (complex_fma_pattern::recognize): Remove.
            (complex_fma_pattern::build): Remove.
            (class complex_fms_pattern):  Update comment.
            (complex_fms_pattern::matches): Remove.
            (complex_operations_pattern::recognize): Remove complex_fma_pattern

^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Bug tree-optimization/102977] [12 Regression] vectorizer failed to use armv8.3-a complex fma
  2021-10-28  1:34 [Bug middle-end/102977] New: [GCC12 regression] vectorizer failed to generate complex fma crazylht at gmail dot com
                   ` (9 preceding siblings ...)
  2021-10-29 11:49 ` cvs-commit at gcc dot gnu.org
@ 2021-10-29 11:49 ` cvs-commit at gcc dot gnu.org
  2021-10-29 11:51 ` tnfchris at gcc dot gnu.org
  11 siblings, 0 replies; 13+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2021-10-29 11:49 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102977

--- Comment #10 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Tamar Christina <tnfchris@gcc.gnu.org>:

https://gcc.gnu.org/g:4045d5fa42f2ee7b284977c8f2f0edc300a63e43

commit r12-4786-g4045d5fa42f2ee7b284977c8f2f0edc300a63e43
Author: Tamar Christina <tamar.christina@arm.com>
Date:   Fri Oct 29 12:47:39 2021 +0100

    middle-end: Add target independent tests for Arm complex numbers
vectorization.

    This beefs up the complex numbers vectorization testsuite
    and adds target independent checks next to the target
    dependent ones.

    This allows regressions to the detection code to be found
    when running on any target, not just aarch64.

    gcc/testsuite/ChangeLog:

            PR tree-optimization/102977
            * gcc.dg/vect/complex/bb-slp-complex-add-pattern-int.c: Updated.
            * gcc.dg/vect/complex/bb-slp-complex-add-pattern-long.c: Updated.
            * gcc.dg/vect/complex/bb-slp-complex-add-pattern-short.c: Updated.
            * gcc.dg/vect/complex/bb-slp-complex-add-pattern-unsigned-int.c:
            Updated.
            * gcc.dg/vect/complex/bb-slp-complex-add-pattern-unsigned-long.c:
            Updated.
            * gcc.dg/vect/complex/bb-slp-complex-add-pattern-unsigned-short.c:
            Updated.
            * gcc.dg/vect/complex/fast-math-bb-slp-complex-add-double.c:
            * gcc.dg/vect/complex/fast-math-bb-slp-complex-add-float.c:
Updated.
            * gcc.dg/vect/complex/fast-math-bb-slp-complex-add-half-float.c:
            Updated.
            *
gcc.dg/vect/complex/fast-math-bb-slp-complex-add-pattern-double.c:
            Updated.
            * gcc.dg/vect/complex/fast-math-bb-slp-complex-add-pattern-float.c:
            Updated.
            *
gcc.dg/vect/complex/fast-math-bb-slp-complex-add-pattern-half-float.c:
            Updated.
            * gcc.dg/vect/complex/fast-math-bb-slp-complex-mla-double.c:
            Updated.
            * gcc.dg/vect/complex/fast-math-bb-slp-complex-mla-float.c:
Updated.
            * gcc.dg/vect/complex/fast-math-bb-slp-complex-mla-half-float.c:
            Updated.
            * gcc.dg/vect/complex/fast-math-bb-slp-complex-mls-double.c:
            Updated.
            * gcc.dg/vect/complex/fast-math-bb-slp-complex-mls-float.c:
Updated.
            * gcc.dg/vect/complex/fast-math-bb-slp-complex-mls-half-float.c:
            Updated.
            * gcc.dg/vect/complex/fast-math-bb-slp-complex-mul-double.c:
Updated.
            * gcc.dg/vect/complex/fast-math-bb-slp-complex-mul-float.c:
Updated.
            * gcc.dg/vect/complex/fast-math-bb-slp-complex-mul-half-float.c:
            Updated.
            * gcc.dg/vect/complex/fast-math-complex-add-double.c: Updated.
            * gcc.dg/vect/complex/fast-math-complex-add-float.c: Updated.
            * gcc.dg/vect/complex/fast-math-complex-add-half-float.c: Updated.
            * gcc.dg/vect/complex/fast-math-complex-add-pattern-double.c:
Updated.
            * gcc.dg/vect/complex/fast-math-complex-add-pattern-float.c:
Updated.
            * gcc.dg/vect/complex/fast-math-complex-add-pattern-half-float.c:
            Updated.
            * gcc.dg/vect/complex/fast-math-complex-mla-double.c: Updated.
            * gcc.dg/vect/complex/fast-math-complex-mla-float.c: Updated.
            * gcc.dg/vect/complex/fast-math-complex-mla-half-float.c: Updated.
            * gcc.dg/vect/complex/fast-math-complex-mls-double.c: Updated.
            * gcc.dg/vect/complex/fast-math-complex-mls-float.c: Updated.
            * gcc.dg/vect/complex/fast-math-complex-mls-half-float.c: Updated.
            * gcc.dg/vect/complex/fast-math-complex-mul-double.c: Updated.
            * gcc.dg/vect/complex/fast-math-complex-mul-float.c: Updated.
            * gcc.dg/vect/complex/fast-math-complex-mul-half-float.c: Updated.
            * gcc.dg/vect/complex/vect-complex-add-pattern-byte.c: Updated.
            * gcc.dg/vect/complex/vect-complex-add-pattern-int.c: Updated.
            * gcc.dg/vect/complex/vect-complex-add-pattern-long.c: Updated.
            * gcc.dg/vect/complex/vect-complex-add-pattern-short.c: Updated.
            * gcc.dg/vect/complex/vect-complex-add-pattern-unsigned-byte.c:
            Updated.
            * gcc.dg/vect/complex/vect-complex-add-pattern-unsigned-int.c:
            Updated.
            * gcc.dg/vect/complex/vect-complex-add-pattern-unsigned-long.c:
            Updated.
            * gcc.dg/vect/complex/vect-complex-add-pattern-unsigned-short.c:
            Updated.
            * gcc.dg/vect/complex/bb-slp-complex-add-pattern-byte.c: Removed.
            * gcc.dg/vect/complex/bb-slp-complex-add-pattern-unsigned-byte.c:
            Removed.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Bug tree-optimization/102977] [12 Regression] vectorizer failed to use armv8.3-a complex fma
  2021-10-28  1:34 [Bug middle-end/102977] New: [GCC12 regression] vectorizer failed to generate complex fma crazylht at gmail dot com
                   ` (10 preceding siblings ...)
  2021-10-29 11:49 ` cvs-commit at gcc dot gnu.org
@ 2021-10-29 11:51 ` tnfchris at gcc dot gnu.org
  11 siblings, 0 replies; 13+ messages in thread
From: tnfchris at gcc dot gnu.org @ 2021-10-29 11:51 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102977

Tamar Christina <tnfchris at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         Resolution|---                         |FIXED
             Status|ASSIGNED                    |RESOLVED

--- Comment #11 from Tamar Christina <tnfchris at gcc dot gnu.org> ---
Fixed in current trunk.

^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2021-10-29 11:51 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-10-28  1:34 [Bug middle-end/102977] New: [GCC12 regression] vectorizer failed to generate complex fma crazylht at gmail dot com
2021-10-28  4:44 ` [Bug middle-end/102977] [GCC12 regression] vectorizer failed to generate complex fma with SVE pinskia at gcc dot gnu.org
2021-10-28  4:45 ` pinskia at gcc dot gnu.org
2021-10-28  4:47 ` pinskia at gcc dot gnu.org
2021-10-28  4:52 ` [Bug middle-end/102977] [12 Regression] vectorizer failed to use armv8.3-a complex fma pinskia at gcc dot gnu.org
2021-10-28  4:58 ` [Bug tree-optimization/102977] " pinskia at gcc dot gnu.org
2021-10-28  5:12 ` pinskia at gcc dot gnu.org
2021-10-28  6:48 ` crazylht at gmail dot com
2021-10-28  8:25 ` tnfchris at gcc dot gnu.org
2021-10-28  8:52 ` tnfchris at gcc dot gnu.org
2021-10-29 11:49 ` cvs-commit at gcc dot gnu.org
2021-10-29 11:49 ` cvs-commit at gcc dot gnu.org
2021-10-29 11:51 ` tnfchris at gcc dot gnu.org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).