]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
Add 'c-c++-common/initpri1{,-lto,-split}-static.c' as internal linkage variants
authorThomas Schwinge <tschwinge@baylibre.com>
Wed, 24 Apr 2024 09:51:54 +0000 (11:51 +0200)
committerThomas Schwinge <tschwinge@baylibre.com>
Wed, 5 Jun 2024 07:02:56 +0000 (09:02 +0200)
gcc/testsuite/
* c-c++-common/initpri1_part_c1.c: Consider 'CDTOR_LINKAGE'.
* c-c++-common/initpri1_part_c2.c: Likewise.
* c-c++-common/initpri1_part_c3.c: Likewise.
* c-c++-common/initpri1_part_cd4.c: Likewise.
* c-c++-common/initpri1_part_d1.c: Likewise.
* c-c++-common/initpri1_part_d2.c: Likewise.
* c-c++-common/initpri1_part_d3.c: Likewise.
* c-c++-common/initpri1.c: Specify it.
* c-c++-common/initpri1-lto.c: Likewise.
* c-c++-common/initpri1-split.c: Likewise.
* c-c++-common/initpri1-static.c: New.
* c-c++-common/initpri1-lto-static.c: Likewise.
* c-c++-common/initpri1-split-static.c: Likewise.

13 files changed:
gcc/testsuite/c-c++-common/initpri1-lto-static.c [new file with mode: 0644]
gcc/testsuite/c-c++-common/initpri1-lto.c
gcc/testsuite/c-c++-common/initpri1-split-static.c [new file with mode: 0644]
gcc/testsuite/c-c++-common/initpri1-split.c
gcc/testsuite/c-c++-common/initpri1-static.c [new file with mode: 0644]
gcc/testsuite/c-c++-common/initpri1.c
gcc/testsuite/c-c++-common/initpri1_part_c1.c
gcc/testsuite/c-c++-common/initpri1_part_c2.c
gcc/testsuite/c-c++-common/initpri1_part_c3.c
gcc/testsuite/c-c++-common/initpri1_part_cd4.c
gcc/testsuite/c-c++-common/initpri1_part_d1.c
gcc/testsuite/c-c++-common/initpri1_part_d2.c
gcc/testsuite/c-c++-common/initpri1_part_d3.c

diff --git a/gcc/testsuite/c-c++-common/initpri1-lto-static.c b/gcc/testsuite/c-c++-common/initpri1-lto-static.c
new file mode 100644 (file)
index 0000000..6393f7e
--- /dev/null
@@ -0,0 +1,7 @@
+/* { dg-do run { target init_priority } } */
+/* { dg-require-effective-target lto } */
+/* { dg-options "-flto -O3" } */
+/* Via the magic string "-std=*++" indicate that testing one (the default) C++ standard is sufficient.  */
+/* { dg-additional-options -DCDTOR_LINKAGE=static } */
+
+#include "initpri1.c"
index 433ef356c7e8e51a855d4e18148c8c7e6b8193e8..7fb4bf1aa82a53fc257fdd144fff8ca9584e230d 100644 (file)
@@ -2,5 +2,6 @@
 /* { dg-require-effective-target lto } */
 /* { dg-options "-flto -O3" } */
 /* Via the magic string "-std=*++" indicate that testing one (the default) C++ standard is sufficient.  */
+/* { dg-additional-options -DCDTOR_LINKAGE= } */
 
 #include "initpri1.c"
diff --git a/gcc/testsuite/c-c++-common/initpri1-split-static.c b/gcc/testsuite/c-c++-common/initpri1-split-static.c
new file mode 100644 (file)
index 0000000..02d8b16
--- /dev/null
@@ -0,0 +1,4 @@
+/* { dg-do run { target init_priority } } */
+/* Via the magic string "-std=*++" indicate that testing one (the default) C++ standard is sufficient.  */
+/* { dg-additional-sources {initpri1_part_c1.c initpri1_part_c2.c initpri1_part_c3.c initpri1_part_d1.c initpri1_part_d2.c initpri1_part_d3.c initpri1_part_cd4.c initpri1_part_main.c} } */
+/* { dg-additional-options -DCDTOR_LINKAGE=static } */
index 11755ee9f6a83a1a608f4309182519a6223222f6..f1482c7e0c114d1419021d218005e15de2bfeefb 100644 (file)
@@ -1,3 +1,4 @@
 /* { dg-do run { target init_priority } } */
 /* Via the magic string "-std=*++" indicate that testing one (the default) C++ standard is sufficient.  */
 /* { dg-additional-sources {initpri1_part_c1.c initpri1_part_c2.c initpri1_part_c3.c initpri1_part_d1.c initpri1_part_d2.c initpri1_part_d3.c initpri1_part_cd4.c initpri1_part_main.c} } */
+/* { dg-additional-options -DCDTOR_LINKAGE= } */
diff --git a/gcc/testsuite/c-c++-common/initpri1-static.c b/gcc/testsuite/c-c++-common/initpri1-static.c
new file mode 100644 (file)
index 0000000..ac101ff
--- /dev/null
@@ -0,0 +1,5 @@
+/* { dg-do run { target init_priority } } */
+/* Via the magic string "-std=*++" indicate that testing one (the default) C++ standard is sufficient.  */
+/* { dg-additional-options -DCDTOR_LINKAGE=static } */
+
+#include "initpri1.c"
index f50137a489b1ff176af4c4bda264706d27ce2991..73579cdd06b83a5e2270d7b2263801eeccfd31b7 100644 (file)
@@ -1,5 +1,6 @@
 /* { dg-do run { target init_priority } } */
 /* Via the magic string "-std=*++" indicate that testing one (the default) C++ standard is sufficient.  */
+/* { dg-additional-options -DCDTOR_LINKAGE= } */
 
 #include "initpri1_part_c1.c"
 
index 0f85a2e6cb1a8bf17ce7624cf8be87925e70d901..da2f4e6c0bcc41f318f0d69e404867a49dc9714d 100644 (file)
@@ -3,8 +3,10 @@
 
 extern int i;
 
+CDTOR_LINKAGE
 void c1() __attribute__((constructor (500)));
 
+CDTOR_LINKAGE
 void c1() {
   if (i++ != 0)
     __builtin_abort ();
index e8c556aab17231d2aeff5fde240dee2c16309944..926608dc0d917538734c37e8d53446162dd3de47 100644 (file)
@@ -3,8 +3,10 @@
 
 extern int i;
 
+CDTOR_LINKAGE
 void c2() __attribute__((constructor (700)));
 
+CDTOR_LINKAGE
 void c2() {
   if (i++ != 2)
     __builtin_abort ();
index 70880882ce3148b7315a9deb43e2fda08830908b..59941ce7428a7127ff173432a7019d934371ba98 100644 (file)
@@ -3,8 +3,10 @@
 
 extern int i;
 
+CDTOR_LINKAGE
 void c3() __attribute__((constructor (600)));
 
+CDTOR_LINKAGE
 void c3() {
   if (i++ != 1)
     __builtin_abort ();
index b67ff90d9fe9d8db35fca4a79d444cc6cb2e2335..c209db3718e29ef300e05dd6667f7b153ccf4fc1 100644 (file)
@@ -4,8 +4,10 @@
 extern int i;
 extern int j;
 
+CDTOR_LINKAGE
 void cd4() __attribute__((constructor (800), destructor (800)));
 
+CDTOR_LINKAGE
 void cd4() {
   if (i != 3)
     __builtin_abort ();
index 099df37e97c5fc9fa0ddebb810691c9c1bf068bc..817603e275b2d9f172546554a65cce8ee9d60a86 100644 (file)
@@ -3,8 +3,10 @@
 
 extern int i;
 
+CDTOR_LINKAGE
 void d1() __attribute__((destructor (500)));
 
+CDTOR_LINKAGE
 void d1() {
   if (--i != 0)
     __builtin_abort ();
index 258cbbc495fdf55da9d3458a376f534190894c55..1dcb7367726390fe6ed1f99e2c343d4f8989d743 100644 (file)
@@ -3,8 +3,10 @@
 
 extern int i;
 
+CDTOR_LINKAGE
 void d2() __attribute__((destructor (700)));
 
+CDTOR_LINKAGE
 void d2() {
   if (--i != 2)
     __builtin_abort ();
index 1242d411b07fe65686bcf500cdd6760968df36e3..ae290fa4594dd01c698cf5192d8f4e4e86a12d86 100644 (file)
@@ -4,8 +4,10 @@
 extern int i;
 extern int j;
 
+CDTOR_LINKAGE
 void d3() __attribute__((destructor (600)));
 
+CDTOR_LINKAGE
 void d3() {
   if (j != 2)
     __builtin_abort ();