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

            Bug ID: 123417
           Summary: [16 Regression] missing sink vs GCC 15
           Product: gcc
           Version: 16.0
            Status: UNCONFIRMED
          Keywords: missed-optimization
          Severity: normal
          Priority: P3
         Component: tree-optimization
          Assignee: pinskia at gcc dot gnu.org
          Reporter: pinskia at gcc dot gnu.org
  Target Milestone: ---

The testcase from PR 123144 on powerpc64le has a missing sink in it.

When bb 6 is created we get this phi:
  # BS_INC_1_86 = PHI <_87(22), _87(12)>


I think it is done via:
Disambiguating loop 2 with multiple latches
Merged latch edges of loop 2

The forwarder blocks were merged before as:
  # BS_INC_1_45 = PHI <_87(18), 0(4), _87(12)>
  # .MEM_46 = PHI <.MEM_36(18), .MEM_30(4), .MEM_27(12)>

we should notice that _87 is the same across the phi and don't need to create a
new phi for this.

Reply via email to