Hi Martin
On Tue, Apr 30, 2019 at 10:00:07AM -0600, Jeff Law wrote:
> > 2019-04-23 Martin Liska <[email protected]>
> >
> > PR target/88809
> > * config/i386/i386.c (ix86_expand_strlen): Use strlen call.
> > With -minline-all-stringops use inline expansion using 4B loop.
> > * doc/invoke.texi: Document the change of
> > -minline-all-stringops.
> >
> > gcc/testsuite/ChangeLog:
> >
> > 2019-04-23 Martin Liska <[email protected]>
> >
> > PR target/88809
> > * gcc.target/i386/pr88809.c: New test.
> > * gcc.target/i386/pr88809-2.c: New test.
> OK for the trunk.
The tests fail on darwin
FAIL: gcc.target/i386/pr88809-2.c scan-assembler call[ \\t]strlen
FAIL: gcc.target/i386/pr88809.c scan-assembler call[ \\t]strlen
This is fixed with the following patch
--- ../_clean/gcc/testsuite/gcc.target/i386/pr88809.c 2019-05-02
10:16:16.000000000 +0200
+++ gcc/testsuite/gcc.target/i386/pr88809.c 2019-05-03 10:11:37.000000000
+0200
@@ -6,4 +6,4 @@ unsigned int foo (const char *ptr)
return __builtin_strlen (ptr);
}
-/* { dg-final { scan-assembler "call\[ \t\]strlen" } } */
+/* { dg-final { scan-assembler "call\[ \t\]_?strlen" } } */
--- ../_clean/gcc/testsuite/gcc.target/i386/pr88809-2.c 2019-05-02
10:16:16.000000000 +0200
+++ gcc/testsuite/gcc.target/i386/pr88809-2.c 2019-05-03 11:00:28.000000000
+0200
@@ -6,4 +6,4 @@ unsigned int foo (const char *ptr)
return __builtin_strlen (ptr);
}
-/* { dg-final { scan-assembler "call\[ \t\]strlen" } } */
+/* { dg-final { scan-assembler "(jmp|call)\[ \t\]_?strlen" } } */
(the ‘call’ is replaced with a ‘amp’ when using -m32).
TIA
Dominique