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

--- Comment #2 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
I tried to reduce it to:
```

struct s1 {
  struct {
  char t[10000];
  } t;
  unsigned long tt;
};

struct s2
{
  char t[3];
};

int f()
{
  s2 *t;
   {
     struct s1 a = {};
      a.t.t[0] = 120;
      a.t.t[1] = 120;
      a.t.t[2] = 120;
      a.tt = 3;
      t =  new s2;
      __builtin_memcpy(t, &a.t.t, 3);
   }
  delete t;
  return 3;
}
```

But the above gets optimized out. There must be some more in the IR than I
don't know.

Reply via email to