From: Iain Sandoe Date: Thu, 16 Apr 2020 20:13:51 +0000 (+0100) Subject: testsuite: Update pr94426-2 test to handle more targets [PR94426] X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=b084efe3fcdfcf88e1703800b9b99347e89beefb;p=gcc.git testsuite: Update pr94426-2 test to handle more targets [PR94426] The function (_Z4InitIN3VARIZ1qvEUlvE_EUlvE_EEbT_) that initializes VAR has changed siganture. It was was weak / comdat [Linux] or weak / global [Darwin] and now is text section local. So: test that the symbol exists, is spelled the way intended by the ABI mangling and is not weak (or global on Darwin). gcc/testsuite/ChangeLog: 2020-04-16 Iain Sandoe PR c++/94426 * g++.dg/cpp0x/lambda/pr94426-2.C: Adjust scan-asms to test for the change on more platforms. --- diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index ad4b7e29ec7..d862567ce4f 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2020-04-16 Iain Sandoe + + * g++.dg/cpp0x/lambda/pr94426-2.C: Adjust scan-asms to test + for the change on more platforms. + 2020-04-16 Martin Jambor PR ipa/93621 diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/pr94426-2.C b/gcc/testsuite/g++.dg/cpp0x/lambda/pr94426-2.C index 3db864c604b..9a1c718a284 100644 --- a/gcc/testsuite/g++.dg/cpp0x/lambda/pr94426-2.C +++ b/gcc/testsuite/g++.dg/cpp0x/lambda/pr94426-2.C @@ -16,5 +16,11 @@ void q () } // The instantiation of VAR becomes local -// { dg-final { scan-assembler {.local _Z3VARIZ1qvEUlvE_E} { target { i?86-*-* x86_64-*-* } } } } -// { dg-final { scan-assembler {.comm _Z3VARIZ1qvEUlvE_E,1,1} { target { i?86-*-* x86_64-*-* } } } } +// { dg-final { scan-assembler {.local _Z3VARIZ1qvEUlvE_E} { target { { i?86-*-* x86_64-*-* } && { ! *-*-darwin* } } } } } +// { dg-final { scan-assembler {.comm _Z3VARIZ1qvEUlvE_E,1,1} { target { { i?86-*-* x86_64-*-* } && { ! *-*-darwin* } } } } } + +// The instantiation of VAR becomes local +// { dg-final { scan-assembler-not {.globl[ \t]+_?_Z4InitIN3VARIZ1qvEUlvE_EUlvE_EEbT_} { target *-*-darwin* } } } +// { dg-final { scan-assembler-not {.weak(_definition)?[ \t]+_?_Z4InitIN3VARIZ1qvEUlvE_EUlvE_EEbT_} { target { i?86-*-* x86_64-*-* *-*-darwin* } } } } +// Make sure it is defined with the mangling we expect. +// { dg-final { scan-assembler {_?_Z4InitIN3VARIZ1qvEUlvE_EUlvE_EEbT_:} { target { i?86-*-* x86_64-*-* *-*-darwin* } } } }