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

--- Comment #1 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
I suspect we could optimize this at the gimple level too:
```
  <bb 9> [local count: 4971102460]:
  # __last_57 = PHI <_47(9), _45(7)>
  _47 = __last_57 + 18446744073709551608;
  _50 = MEM[(int *)_47];
  MEM[(int *)_47 + 8B] = _50;
  _51 = MEM[(int *)_47 + 4B];
  MEM[(int *)_47 + 12B] = _51;
  if (v$_M_start_36 != _47)
    goto <bb 9>; [89.00%]
  else
    goto <bb 8>; [11.00%]
```

We should detect this as a memmove.

Reply via email to