On 10/05/18 20:15, Andreas Schwab wrote: > On Sep 14 2018, Bernd Edlinger <bernd.edlin...@hotmail.de> wrote: > >> diff -Npur gcc/testsuite/gnat.dg/string_merge1.adb >> gcc/testsuite/gnat.dg/string_merge1.adb >> --- gcc/testsuite/gnat.dg/string_merge1.adb 1970-01-01 01:00:00.000000000 >> +0100 >> +++ gcc/testsuite/gnat.dg/string_merge1.adb 2018-08-26 16:31:12.650271931 >> +0200 >> @@ -0,0 +1,19 @@ >> +-- { dg-do compile } >> +-- { dg-options "-O1 -fmerge-all-constants" } >> + >> +procedure String_Merge1 is >> + procedure Process (X : String); >> + pragma Import (Ada, Process); >> +begin >> + Process ("ABCD"); >> +end; >> + >> +-- We expect something like: >> + >> +-- .section .rodata.str1.1,"aMS",@progbits,1 >> +-- .LC1: >> +-- .string "ABCD" >> + >> +-- { dg-final { scan-assembler-times "\\.rodata\\.str" 1 } } >> +-- { dg-final { scan-assembler-times "\\.string" 1 } } >> +-- { dg-final { scan-assembler-times "\"ABCD\"" 1 } } > > FAIL: gnat.dg/string_merge1.adb scan-assembler-times \\.string 1 > > $ grep ABCD string_merge1.s > stringz "ABCD" >
Ah, thanks. Turns out there are too much variations, like mentioned stringz, and asciz, and probably lots more here. But for the purpose of testing the optimization it should be sufficient to look for ".rodata.str" in the assembler. So I committed the following as obvious: Index: gnat.dg/string_merge2.adb =================================================================== --- gnat.dg/string_merge2.adb (Revision 264887) +++ gnat.dg/string_merge2.adb (Revision 264888) @@ -15,5 +15,3 @@ -- .string "ABCD" -- { dg-final { scan-assembler-times "\\.rodata\\.str" 1 } } --- { dg-final { scan-assembler-times "\\.string" 1 } } --- { dg-final { scan-assembler-times "\"ABCD\"" 1 } } Index: gnat.dg/string_merge1.adb =================================================================== --- gnat.dg/string_merge1.adb (Revision 264887) +++ gnat.dg/string_merge1.adb (Revision 264888) @@ -15,5 +15,3 @@ -- .string "ABCD" -- { dg-final { scan-assembler-times "\\.rodata\\.str" 1 } } --- { dg-final { scan-assembler-times "\\.string" 1 } } --- { dg-final { scan-assembler-times "\"ABCD\"" 1 } } Index: ChangeLog =================================================================== --- ChangeLog (Revision 264887) +++ ChangeLog (Revision 264888) @@ -1,3 +1,8 @@ +2018-10-05 Bernd Edlinger <bernd.edlin...@hotmail.de> + + * gnat.dg/string_merge1.adb: Fix test expectations. + * gnat.dg/string_merge2.adb: Likewise. + 2018-10-05 David Malcolm <dmalc...@redhat.com> PR c++/56856 Thanks Bernd.