public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug tree-optimization/97098] New: vect_bb_slp_mark_live_stmts() loops forever on test case using -O3
@ 2020-09-17 21:39 bergner at gcc dot gnu.org
  2020-09-17 21:47 ` [Bug tree-optimization/97098] " bergner at gcc dot gnu.org
                   ` (4 more replies)
  0 siblings, 5 replies; 6+ messages in thread
From: bergner at gcc dot gnu.org @ 2020-09-17 21:39 UTC (permalink / raw)
  To: gcc-bugs

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

            Bug ID: 97098
           Summary: vect_bb_slp_mark_live_stmts() loops forever on test
                    case using -O3
           Product: gcc
           Version: 11.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: tree-optimization
          Assignee: unassigned at gcc dot gnu.org
          Reporter: bergner at gcc dot gnu.org
  Target Milestone: ---

Created attachment 49237
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=49237&action=edit
preprocessed test case

GCC trunk hangs on the attached test case (from OpenMP) when compiling with -O3
(powerpc64le-linux).  Compiling with -O2 is fine.

Using the debugger and breaking into the compile multiple times, the compiler
always has the following backtrace:

(gdb) c
Continuing.
^C
Program received signal SIGINT, Interrupt.
0x0000000011813e54 in link_use_stmts_after (head=0x7ffff5c40448,
imm=0x7fffffff5c20)
    at /home/bergner/gcc/gcc-fsf-mainline-mma/gcc/ssa-iterators.h:908
908               FOR_EACH_SSA_USE_OPERAND (use_p, head_stmt, op_iter, flag)
(gdb) bt
#0  0x0000000011813e54 in link_use_stmts_after (head=0x7ffff5c40448,
imm=0x7fffffff5c20)
    at /home/bergner/gcc/gcc-fsf-mainline-mma/gcc/ssa-iterators.h:908
#1  0x000000001181413c in next_imm_use_stmt (imm=0x7fffffff5c20) at
/home/bergner/gcc/gcc-fsf-mainline-mma/gcc/ssa-iterators.h:961
#2  0x00000000118223a4 in vect_bb_slp_mark_live_stmts (bb_vinfo=0x133aae60,
node=0x136955f0, instance=0x133a1830, cost_vec=0x133a1858, 
    svisited=...) at
/home/bergner/gcc/gcc-fsf-mainline-mma/gcc/tree-vect-slp.c:3107
#3  0x0000000011822464 in vect_bb_slp_mark_live_stmts (bb_vinfo=0x133aae60,
node=0x13695660, instance=0x133a1830, cost_vec=0x133a1858, 
    svisited=...) at
/home/bergner/gcc/gcc-fsf-mainline-mma/gcc/tree-vect-slp.c:3128
#4  0x0000000011822464 in vect_bb_slp_mark_live_stmts (bb_vinfo=0x133aae60,
node=0x136956d0, instance=0x133a1830, cost_vec=0x133a1858, 
    svisited=...) at
/home/bergner/gcc/gcc-fsf-mainline-mma/gcc/tree-vect-slp.c:3128
#5  0x0000000011822464 in vect_bb_slp_mark_live_stmts (bb_vinfo=0x133aae60,
node=0x13695740, instance=0x133a1830, cost_vec=0x133a1858, 
    svisited=...) at
/home/bergner/gcc/gcc-fsf-mainline-mma/gcc/tree-vect-slp.c:3128
#6  0x0000000011822464 in vect_bb_slp_mark_live_stmts (bb_vinfo=0x133aae60,
node=0x13695820, instance=0x133a1830, cost_vec=0x133a1858, 
    svisited=...) at
/home/bergner/gcc/gcc-fsf-mainline-mma/gcc/tree-vect-slp.c:3128
#7  0x0000000011822464 in vect_bb_slp_mark_live_stmts (bb_vinfo=0x133aae60,
node=0x13695890, instance=0x133a1830, cost_vec=0x133a1858, 
    svisited=...) at
/home/bergner/gcc/gcc-fsf-mainline-mma/gcc/tree-vect-slp.c:3128
#8  0x0000000011822464 in vect_bb_slp_mark_live_stmts (bb_vinfo=0x133aae60,
node=0x1369a1f0, instance=0x133a1830, cost_vec=0x133a1858, 
    svisited=...) at
/home/bergner/gcc/gcc-fsf-mainline-mma/gcc/tree-vect-slp.c:3128
#9  0x0000000011822464 in vect_bb_slp_mark_live_stmts (bb_vinfo=0x133aae60,
node=0x1369a2d0, instance=0x133a1830, cost_vec=0x133a1858, 
    svisited=...) at
/home/bergner/gcc/gcc-fsf-mainline-mma/gcc/tree-vect-slp.c:3128
#10 0x0000000011822464 in vect_bb_slp_mark_live_stmts (bb_vinfo=0x133aae60,
node=0x1369a340, instance=0x133a1830, cost_vec=0x133a1858, 
    svisited=...) at
/home/bergner/gcc/gcc-fsf-mainline-mma/gcc/tree-vect-slp.c:3128
...

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

* [Bug tree-optimization/97098] vect_bb_slp_mark_live_stmts() loops forever on test case using -O3
  2020-09-17 21:39 [Bug tree-optimization/97098] New: vect_bb_slp_mark_live_stmts() loops forever on test case using -O3 bergner at gcc dot gnu.org
@ 2020-09-17 21:47 ` bergner at gcc dot gnu.org
  2020-09-18  6:14 ` rguenth at gcc dot gnu.org
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: bergner at gcc dot gnu.org @ 2020-09-17 21:47 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #1 from Peter Bergner <bergner at gcc dot gnu.org> ---
Added richi to CC since vect_bb_slp_mark_live_stmts() is a new function he
recently added.

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

* [Bug tree-optimization/97098] vect_bb_slp_mark_live_stmts() loops forever on test case using -O3
  2020-09-17 21:39 [Bug tree-optimization/97098] New: vect_bb_slp_mark_live_stmts() loops forever on test case using -O3 bergner at gcc dot gnu.org
  2020-09-17 21:47 ` [Bug tree-optimization/97098] " bergner at gcc dot gnu.org
@ 2020-09-18  6:14 ` rguenth at gcc dot gnu.org
  2020-09-18  6:36 ` rguenth at gcc dot gnu.org
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: rguenth at gcc dot gnu.org @ 2020-09-18  6:14 UTC (permalink / raw)
  To: gcc-bugs

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

Richard Biener <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Last reconfirmed|                            |2020-09-18
           Assignee|unassigned at gcc dot gnu.org      |rguenth at gcc dot gnu.org
     Ever confirmed|0                           |1
             Status|UNCONFIRMED                 |ASSIGNED

--- Comment #2 from Richard Biener <rguenth at gcc dot gnu.org> ---
Mine.

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

* [Bug tree-optimization/97098] vect_bb_slp_mark_live_stmts() loops forever on test case using -O3
  2020-09-17 21:39 [Bug tree-optimization/97098] New: vect_bb_slp_mark_live_stmts() loops forever on test case using -O3 bergner at gcc dot gnu.org
  2020-09-17 21:47 ` [Bug tree-optimization/97098] " bergner at gcc dot gnu.org
  2020-09-18  6:14 ` rguenth at gcc dot gnu.org
@ 2020-09-18  6:36 ` rguenth at gcc dot gnu.org
  2020-09-18  7:22 ` cvs-commit at gcc dot gnu.org
  2020-09-18  7:31 ` rguenth at gcc dot gnu.org
  4 siblings, 0 replies; 6+ messages in thread
From: rguenth at gcc dot gnu.org @ 2020-09-18  6:36 UTC (permalink / raw)
  To: gcc-bugs

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

Richard Biener <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |dimhen at gmail dot com

--- Comment #3 from Richard Biener <rguenth at gcc dot gnu.org> ---
*** Bug 97087 has been marked as a duplicate of this bug. ***

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

* [Bug tree-optimization/97098] vect_bb_slp_mark_live_stmts() loops forever on test case using -O3
  2020-09-17 21:39 [Bug tree-optimization/97098] New: vect_bb_slp_mark_live_stmts() loops forever on test case using -O3 bergner at gcc dot gnu.org
                   ` (2 preceding siblings ...)
  2020-09-18  6:36 ` rguenth at gcc dot gnu.org
@ 2020-09-18  7:22 ` cvs-commit at gcc dot gnu.org
  2020-09-18  7:31 ` rguenth at gcc dot gnu.org
  4 siblings, 0 replies; 6+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2020-09-18  7:22 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #4 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Richard Biener <rguenth@gcc.gnu.org>:

https://gcc.gnu.org/g:080ddd8a81ea39e92542fa7d7e2d7d27ee741710

commit r11-3275-g080ddd8a81ea39e92542fa7d7e2d7d27ee741710
Author: Richard Biener <rguenther@suse.de>
Date:   Fri Sep 18 09:00:12 2020 +0200

    tree-optimization/97098 - fix compile-time hog in SLP live

    This fixes a missed early-out in SLP live stmt marking when
    all scalar stmts were already visited (oops).

    2020-09-18  Richard Biener  <rguenther@suse.de>

            PR tree-optimization/97098
            * tree-vect-slp.c (vect_bb_slp_mark_live_stmts): Do not
            recurse to children when all stmts were already visited.

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

* [Bug tree-optimization/97098] vect_bb_slp_mark_live_stmts() loops forever on test case using -O3
  2020-09-17 21:39 [Bug tree-optimization/97098] New: vect_bb_slp_mark_live_stmts() loops forever on test case using -O3 bergner at gcc dot gnu.org
                   ` (3 preceding siblings ...)
  2020-09-18  7:22 ` cvs-commit at gcc dot gnu.org
@ 2020-09-18  7:31 ` rguenth at gcc dot gnu.org
  4 siblings, 0 replies; 6+ messages in thread
From: rguenth at gcc dot gnu.org @ 2020-09-18  7:31 UTC (permalink / raw)
  To: gcc-bugs

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

Richard Biener <rguenth at gcc dot gnu.org> changed:

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

--- Comment #5 from Richard Biener <rguenth at gcc dot gnu.org> ---
Fixed.

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

end of thread, other threads:[~2020-09-18  7:31 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-09-17 21:39 [Bug tree-optimization/97098] New: vect_bb_slp_mark_live_stmts() loops forever on test case using -O3 bergner at gcc dot gnu.org
2020-09-17 21:47 ` [Bug tree-optimization/97098] " bergner at gcc dot gnu.org
2020-09-18  6:14 ` rguenth at gcc dot gnu.org
2020-09-18  6:36 ` rguenth at gcc dot gnu.org
2020-09-18  7:22 ` cvs-commit at gcc dot gnu.org
2020-09-18  7:31 ` rguenth 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).