diff options
author | Thomas Schwinge <tschwinge@baylibre.com> | 2024-04-24 10:11:02 +0200 |
---|---|---|
committer | Thomas Schwinge <tschwinge@baylibre.com> | 2024-06-05 09:01:21 +0200 |
commit | 38dd7419324490b386bbac06ddc5fafbfe8629d3 (patch) | |
tree | b264d32766f8b8189e7d0b148d8eaa98d52e5536 /gcc | |
parent | 35e453d9e17c299d58d5d2c9f44b4b4eec9867b6 (diff) | |
download | gcc-38dd7419324490b386bbac06ddc5fafbfe8629d3.zip gcc-38dd7419324490b386bbac06ddc5fafbfe8629d3.tar.gz gcc-38dd7419324490b386bbac06ddc5fafbfe8629d3.tar.bz2 |
Clarify that 'gcc.dg/initpri3.c' is a LTO variant of 'gcc.dg/initpri1.c': 'gcc.dg/initpri1-lto.c' [PR46083]
Added in commit 06c9eb5136fe0e778cc3a643131eba2a3dfb77a8 (Subversion r168642)
"re PR lto/46083 (gcc.dg/initpri1.c FAILs with -flto/-fwhopr (attribute constructor/destructor doesn't work))".
PR lto/46083
gcc/testsuite/
* gcc.dg/initpri3.c: Remove.
* gcc.dg/initpri1-lto.c: New.
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/testsuite/gcc.dg/initpri1-lto.c | 5 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/initpri3.c | 64 |
2 files changed, 5 insertions, 64 deletions
diff --git a/gcc/testsuite/gcc.dg/initpri1-lto.c b/gcc/testsuite/gcc.dg/initpri1-lto.c new file mode 100644 index 0000000..98a43c3 --- /dev/null +++ b/gcc/testsuite/gcc.dg/initpri1-lto.c @@ -0,0 +1,5 @@ +/* { dg-do run { target init_priority } } */ +/* { dg-require-effective-target lto } */ +/* { dg-options "-flto -O3" } */ + +#include "initpri1.c" diff --git a/gcc/testsuite/gcc.dg/initpri3.c b/gcc/testsuite/gcc.dg/initpri3.c deleted file mode 100644 index 1633da0..0000000 --- a/gcc/testsuite/gcc.dg/initpri3.c +++ /dev/null @@ -1,64 +0,0 @@ -/* { dg-do run { target init_priority } } */ -/* { dg-require-effective-target lto } */ -/* { dg-options "-flto -O3" } */ - -extern void abort (); - -int i; -int j; - -void c1() __attribute__((constructor (500))); -void c2() __attribute__((constructor (700))); -void c3() __attribute__((constructor (600))); - -void c1() { - if (i++ != 0) - abort (); -} - -void c2() { - if (i++ != 2) - abort (); -} - -void c3() { - if (i++ != 1) - abort (); -} - -void d1() __attribute__((destructor (500))); -void d2() __attribute__((destructor (700))); -void d3() __attribute__((destructor (600))); - -void d1() { - if (--i != 0) - abort (); -} - -void d2() { - if (--i != 2) - abort (); -} - -void d3() { - if (j != 2) - abort (); - if (--i != 1) - abort (); -} - -void cd4() __attribute__((constructor (800), destructor (800))); - -void cd4() { - if (i != 3) - abort (); - ++j; -} - -int main () { - if (i != 3) - return 1; - if (j != 1) - abort (); - return 0; -} |