| /* { dg-do compile } */ | |
| /* { dg-require-effective-target arm_arm_ok } */ | |
| /* { dg-require-effective-target arm_ldrd_strd_ok } */ | |
| /* { dg-options "-marm -mno-unaligned-access -O3" } */ | |
| struct s { | |
| int a, b; | |
| } __attribute__((aligned(8))); | |
| struct s f0; | |
| void f(int a, int b, int c, int d, int e, struct s f) | |
| { | |
| f0 = f; | |
| } | |
| /* { dg-final { scan-assembler-times "ldrd" 0 } } */ | |
| /* { dg-final { scan-assembler-times "strd" 0 } } */ | |
| /* { dg-final { scan-assembler-times "stm" 1 } } */ |