diff options
Diffstat (limited to 'gcc/testsuite/gcc.target/i386/auto-init-padding-9.c')
-rw-r--r-- | gcc/testsuite/gcc.target/i386/auto-init-padding-9.c | 25 |
1 files changed, 20 insertions, 5 deletions
diff --git a/gcc/testsuite/gcc.target/i386/auto-init-padding-9.c b/gcc/testsuite/gcc.target/i386/auto-init-padding-9.c index a87b68b..102217c 100644 --- a/gcc/testsuite/gcc.target/i386/auto-init-padding-9.c +++ b/gcc/testsuite/gcc.target/i386/auto-init-padding-9.c @@ -2,6 +2,25 @@ padding. */ /* { dg-do compile } */ /* { dg-options "-ftrivial-auto-var-init=zero -march=x86-64" } */ +/* Keep labels and directives ('.cfi_startproc', '.cfi_endproc'). */ +/* { dg-final { check-function-bodies "**" "" "" { target lp64 } {^\t?\.} } } */ + +/* +**foo: +**... +** pxor %xmm0, %xmm0 +**... +**.L[0-9]+: +** movl %esi, %ecx +** movaps %xmm0, \(%rdx,%rcx\) +** movaps %xmm0, 16\(%rdx,%rcx\) +** movaps %xmm0, 32\(%rdx,%rcx\) +** movaps %xmm0, 48\(%rdx,%rcx\) +** addl \$64, %esi +** cmpl %edi, %esi +** jb .L[0-9]+ +**... +*/ struct test_trailing_hole { int one; @@ -18,8 +37,4 @@ int foo () return var[2].four; } -/* { dg-final { scan-assembler "movl\t\\\$0," } } */ -/* { dg-final { scan-assembler "movl\t\\\$20," { target { ! ia32 } } } } */ -/* { dg-final { scan-assembler "rep stosq" { target { ! ia32 } } } } */ -/* { dg-final { scan-assembler "movl\t\\\$40," { target ia32} } } */ -/* { dg-final { scan-assembler "rep stosl" { target ia32 } } } */ +/* { dg-final { scan-assembler-not "rep stos" } } */ |