/* { dg-do compile } */
/* { dg-options "-O2 -mcpu=thunderx" } */

struct ldp
{
  long long c;
  int a, b;
};


int f(struct ldp *a)
{
  return a->a + a->b;
}


/* We know the alignement of a->a to be 8 byte aligned so it is profitable
   to do ldp. */
/* { dg-final { scan-assembler-times "ldp\tw\[0-9\]+, w\[0-9\]" 1 } } */