[Bug tree-optimization/98928] [11 regression] ICE when build 638.imagick_s since r11-5969-g3ed472af6bc9f83b

2021-02-03 Thread tnfchris at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98928

Tamar Christina  changed:

   What|Removed |Added

 Resolution|--- |FIXED
 Status|ASSIGNED|RESOLVED

--- Comment #8 from Tamar Christina  ---
Fixed in trunk

[Bug tree-optimization/98928] [11 regression] ICE when build 638.imagick_s since r11-5969-g3ed472af6bc9f83b

2021-02-03 Thread cvs-commit at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98928

--- Comment #7 from CVS Commits  ---
The master branch has been updated by Tamar Christina :

https://gcc.gnu.org/g:5e606ed90a1bed878071b6b5a3ef9b97b3d99838

commit r11-7049-g5e606ed90a1bed878071b6b5a3ef9b97b3d99838
Author: Tamar Christina 
Date:   Wed Feb 3 08:06:11 2021 +

slp: Split out patterns away from using SLP_ONLY into their own flag

Previously the SLP pattern matcher was using STMT_VINFO_SLP_VECT_ONLY as a
way
to dissolve the SLP only patterns during SLP cancellation.  However it
seems
like the semantics for STMT_VINFO_SLP_VECT_ONLY are slightly different than
what
I expected.

Namely that the non-SLP path can still use a statement marked
STMT_VINFO_SLP_VECT_ONLY.  One such example is masked loads which are used
both
in the SLP and non-SLP path.

To fix this I now introduce a new flag STMT_VINFO_SLP_VECT_ONLY_PATTERN
which is
used only by the pattern matcher.

gcc/ChangeLog:

PR tree-optimization/98928
* tree-vect-loop.c (vect_analyze_loop_2): Change
STMT_VINFO_SLP_VECT_ONLY to STMT_VINFO_SLP_VECT_ONLY_PATTERN.
* tree-vect-slp-patterns.c (complex_pattern::build): Likewise.
* tree-vectorizer.h (STMT_VINFO_SLP_VECT_ONLY_PATTERN): New.
(class _stmt_vec_info): Add slp_vect_pattern_only_p.

gcc/testsuite/ChangeLog:

PR tree-optimization/98928
* gcc.target/i386/pr98928.c: New test.

[Bug tree-optimization/98928] [11 regression] ICE when build 638.imagick_s since r11-5969-g3ed472af6bc9f83b

2021-02-02 Thread tnfchris at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98928

Tamar Christina  changed:

   What|Removed |Added

   Assignee|rguenth at gcc dot gnu.org |tnfchris at gcc dot 
gnu.org

--- Comment #6 from Tamar Christina  ---
testing patch.

[Bug tree-optimization/98928] [11 regression] ICE when build 638.imagick_s since r11-5969-g3ed472af6bc9f83b

2021-02-02 Thread tnfchris at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98928

--- Comment #5 from Tamar Christina  ---
Hmm looks like the SLP unwinding code is accidentally cancelling a pattern it
shouldn't have. Checking why...

[Bug tree-optimization/98928] [11 regression] ICE when build 638.imagick_s since r11-5969-g3ed472af6bc9f83b

2021-02-02 Thread marxin at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98928

Martin Liška  changed:

   What|Removed |Added

 CC||tnfchris at gcc dot gnu.org
 Blocks||26163
  Known to work||10.2.0
  Known to fail||11.0
   Priority|P3  |P1
Summary|[11 regression] ICE when|[11 regression] ICE when
   |build 638.imagick_s |build 638.imagick_s since
   ||r11-5969-g3ed472af6bc9f83b

--- Comment #4 from Martin Liška  ---
Started with r11-5969-g3ed472af6bc9f83b.


Referenced Bugs:

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=26163
[Bug 26163] [meta-bug] missed optimization in SPEC (2k17, 2k and 2k6 and 95)