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

--- Comment #8 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
(In reply to Andrew Pinski from comment #7)
> I don't see any difference between 14 and 15 with your reduced testcase at
> `-Ofast -fno-early-inlining -mcpu=neoverse-v1+nosve ` .

ok, the behavior of the vectorizer is interesting here.

If I add:
asm("":::);

right after the call to GetCacheViewAuthenticPixels (with r15-5023), the
difference that seems to matter is the order of the phis for the LCSSA phi:

```
  # g_r1_lsm.82_90 = PHI <g_r1_lsm.82_30(11)>
  # PT = nonlocal escaped null 
  # MorphologyPrimitive_p_lsm.81_123 = PHI
<MorphologyPrimitive_p_lsm.81_36(11)>
  # g_r2_lsm.83_122 = PHI <g_r2_lsm.83_43(11)>
  # g_v_lsm.84_121 = PHI <g_v_lsm.84_42(11)>
```
vs:
```
  # g_v_lsm.84_90 = PHI <g_v_lsm.84_15(11)>
  # g_r1_lsm.82_70 = PHI <g_r1_lsm.82_30(11)>
  # g_r2_lsm.83_122 = PHI <g_r2_lsm.83_42(11)>
  # PT = nonlocal escaped null 
  # MorphologyPrimitive_p_lsm.81_121 = PHI
<MorphologyPrimitive_p_lsm.81_36(11)>
```

r15-5024 causes a similar phi order difference. For somereason processing in
the  PHIs in a different order causes difference in the vectorization.

Reply via email to