/* This is a copy of pr71727.c with scanning reversed. */ /* { dg-do compile } */ /* { dg-options "-mstrict-align -O3 -mno-strict-align" } */ struct test_struct_s { long a; long b; long c; long d; unsigned long e; }; char _a; struct test_struct_s xarray[128]; void _start (void) { struct test_struct_s *new_entry; new_entry = &xarray[0]; new_entry->a = 1; new_entry->b = 2; new_entry->c = 3; new_entry->d = 4; new_entry->e = 5; return; } /* Should have only 1 mov instead of 5 and should not use stp (store pair). */ /* { dg-final { scan-assembler-times "mov\tx" 1 {target lp64} } } */ /* { dg-final { scan-assembler-not "stp\tx\[0-9\]+, x\[0-9\]+," {target lp64} } } */