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

            Bug ID: 107449
           Summary: CD-DCE fails to eliminate abnormal incoming edges
           Product: gcc
           Version: 13.0
            Status: UNCONFIRMED
          Keywords: ice-checking, ice-on-valid-code
          Severity: normal
          Priority: P3
         Component: tree-optimization
          Assignee: unassigned at gcc dot gnu.org
          Reporter: rguenth at gcc dot gnu.org
                CC: asolokha at gmx dot com
        Depends on: 107447
  Target Milestone: ---

+++ This bug was initially created as a clone of Bug #107447 +++

int n;

void
bar (int, int);

__attribute__ ((noinline, returns_twice)) int
zero (void)
{
  return 0;
}

void
foo (void)
{
  (void) zero ();

  n = 0;

  for (;;)
    bar (zero (), n);
}

With this testcase GCC fails to eliminate the abnormal edges into the
first zero () call which is elided by CD-DCE.


Referenced Bugs:

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107447
[Bug 107447] [13 Regression] ICE: verify_flow_info failed (error: returns_twice
call is not first in basic block 2)

Reply via email to