/* PR libstdc++/88101 */

typedef int T __attribute__((aligned (16384)));
struct S { char a; short b; long double c; T d; T e; long long f; };

__attribute__((noipa)) void
foo (struct S *s)
{
  s->a = -1; s->b = -1; s->c = -18.52L; s->d = -1; s->e = -1; s->f = -1;
}

int
main ()
{
  struct S s1, s2;
  __builtin_memset (&s1, 0, sizeof (s1));
  __builtin_memset (&s2, -1, sizeof (s2));
  foo (&s1);
  foo (&s2);
  __builtin_clear_padding (&s2);
  if (__builtin_memcmp (&s1, &s2, sizeof (s1)))
    __builtin_abort ();
  return 0;
}
