1 /* { dg-do compile } */
2 /* { dg-options "-mstrict-align -O3 -fcommon" } */
3
4 struct test_struct_s
5 {
6 long a;
7 long b;
8 long c;
9 long d;
10 unsigned long e;
11 };
12
13
14 char _a;
15 struct test_struct_s xarray[128];
16
17 void
18 _start (void)
19 {
20 struct test_struct_s *new_entry;
21
22 new_entry = &xarray[0];
23 new_entry->a = 1;
24 new_entry->b = 2;
25 new_entry->c = 3;
26 new_entry->d = 4;
27 new_entry->e = 5;
28
29 return;
30 }
31
32 /* { dg-final { scan-assembler-times "mov\tx" 5 {target lp64} } } */
33 /* { dg-final { scan-assembler-not "add\tx0, x0, :" {target lp64} } } */