1 /* { dg-do compile } */
2 /* { dg-require-effective-target arm_arm_ok } */
3 /* { dg-require-effective-target arm_ldrd_strd_ok } */
4 /* { dg-options "-marm -mno-unaligned-access -O3" } */
5 
6 struct s {
7   int a, b;
8 } __attribute__((aligned(8)));
9 
10 struct s f0;
11 
f(int a,int b,int c,int d,int e,struct s f)12 void f(int a, int b, int c, int d, int e, struct s f)
13 {
14   f0 = f;
15 }
16 
17 /* { dg-final { scan-assembler-times "ldrd" 0 } } */
18 /* { dg-final { scan-assembler-times "strd" 0 } } */
19 /* { dg-final { scan-assembler-times "stm" 1 } } */
20