[testsuite] FIx PR58321.

Message ID F09D24B7-ED4B-4E67-82D6-07535E28F324@sandoe.co.uk
State New
Headers show
Series
  • [testsuite] FIx PR58321.
Related show

Commit Message

Iain Sandoe May 20, 2019, 12:31 p.m.
Darwin doesn't emit a .file directive by default
and one of the scan-asm hits for ELF targets comes from
this directive. Adjust for Darwin and explain.

Tested on x86_64-darwin16, x86_64-linux-gnu
Applied to mainline.
Iain

2019-05-20  Iain Sandoe  <iain@sandoe.co.uk>

        PR testsuite/58321
        * gcc.target/i386/memcpy-strategy-3.c: Adjust count for Darwin and
        add a comment as to the reason for the difference.
        * gcc.target/i386/memset-strategy-1.c: Likewise.

Patch

diff --git a/gcc/testsuite/gcc.target/i386/memcpy-strategy-3.c b/gcc/testsuite/gcc.target/i386/memcpy-strategy-3.c
index ddd1ef7..11687e8 100644
--- a/gcc/testsuite/gcc.target/i386/memcpy-strategy-3.c
+++ b/gcc/testsuite/gcc.target/i386/memcpy-strategy-3.c
@@ -1,6 +1,9 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O2 -march=atom -mmemcpy-strategy=vector_loop:2000:align,libcall:-1:align" } */
-/* { dg-final { scan-assembler-times "memcpy" 2  } } */
+/* On ELF platforms, one hit comes from the .file directive.  */
+/* { dg-final { scan-assembler-times "memcpy" 2 { target { ! *-*-darwin* } } } } */
+/* But not on Darwin, which doesn't have a .file directive by default.  */
+/* { dg-final { scan-assembler-times "_memcpy" 1  { target *-*-darwin* } } } */
 
 char a[2048];
 char b[2048];
diff --git a/gcc/testsuite/gcc.target/i386/memset-strategy-1.c b/gcc/testsuite/gcc.target/i386/memset-strategy-1.c
index d1b97c5..b4b8e2c 100644
--- a/gcc/testsuite/gcc.target/i386/memset-strategy-1.c
+++ b/gcc/testsuite/gcc.target/i386/memset-strategy-1.c
@@ -1,10 +1,12 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O2 -march=atom -mmemset-strategy=libcall:-1:align" } */
-/* { dg-final { scan-assembler-times "memset" 2  } } */
+/* On ELF platforms, one hit comes from the .file directive.  */
+/* { dg-final { scan-assembler-times "memset" 2 { target { ! *-*-darwin* } } } } */
+/* But not on Darwin, which doesn't have a .file directive by default.  */
+/* { dg-final { scan-assembler-times "_memset" 1 { target *-*-darwin* } } } */
 
 char a[2048];
 void t (void)
 {
   __builtin_memset (a, 1, 2048);
 }
-