summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.dg
diff options
context:
space:
mode:
authorghazi <ghazi@138bc75d-0d04-0410-961f-82ee72b054a4>2004-04-07 00:58:40 +0000
committerghazi <ghazi@138bc75d-0d04-0410-961f-82ee72b054a4>2004-04-07 00:58:40 +0000
commitd59468109505cb9234e48de26a548f3485453735 (patch)
tree28bec7ca8ca84f147744318adec674f475cbac0a /gcc/testsuite/gcc.dg
parent57f429b140ff337f786623d0c36d8ac37fff2644 (diff)
downloadgcc-d59468109505cb9234e48de26a548f3485453735.tar.gz
* gcc.dg/compat/struct-by-value-5a_main.c,
gcc.dg/compat/struct-by-value-5b_main.c: New files. * gcc.dg/compat/struct-by-value-5_main.c: Delete. * gcc.dg/compat/struct-by-value-5a_x.c, gcc.dg/compat/struct-by-value-5b_x.c: New, split out from gcc.dg/compat/struct-by-value-5_x.c. * gcc.dg/compat/struct-by-value-5a_y.c, gcc.dg/compat/struct-by-value-5b_y.c: New, split out from gcc.dg/compat/struct-by-value-5_y.c. * gcc.dg/compat/struct-by-value-6a_main.c, gcc.dg/compat/struct-by-value-6b_main.c: New files. * gcc.dg/compat/struct-by-value-6_main.c: Delete. * gcc.dg/compat/struct-by-value-6a_x.c, gcc.dg/compat/struct-by-value-6b_x.c: New, split out from gcc.dg/compat/struct-by-value-6_x.c. * gcc.dg/compat/struct-by-value-6a_y.c, gcc.dg/compat/struct-by-value-6b_y.c: New, split out from gcc.dg/compat/struct-by-value-6_y.c. * gcc.dg/compat/struct-by-value-7a_main.c, gcc.dg/compat/struct-by-value-7b_main.c: New files. * gcc.dg/compat/struct-by-value-7_main.c: Delete. * gcc.dg/compat/struct-by-value-7a_x.c, gcc.dg/compat/struct-by-value-7b_x.c: New, split out from gcc.dg/compat/struct-by-value-7_x.c. * gcc.dg/compat/struct-by-value-7a_y.c, gcc.dg/compat/struct-by-value-7b_y.c: New, split out from gcc.dg/compat/struct-by-value-7_y.c. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@80472 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/testsuite/gcc.dg')
-rw-r--r--gcc/testsuite/gcc.dg/compat/struct-by-value-5a_main.c (renamed from gcc/testsuite/gcc.dg/compat/struct-by-value-5_main.c)4
-rw-r--r--gcc/testsuite/gcc.dg/compat/struct-by-value-5a_x.c43
-rw-r--r--gcc/testsuite/gcc.dg/compat/struct-by-value-5a_y.c25
-rw-r--r--gcc/testsuite/gcc.dg/compat/struct-by-value-5b_main.c14
-rw-r--r--gcc/testsuite/gcc.dg/compat/struct-by-value-5b_x.c (renamed from gcc/testsuite/gcc.dg/compat/struct-by-value-5_x.c)18
-rw-r--r--gcc/testsuite/gcc.dg/compat/struct-by-value-5b_y.c (renamed from gcc/testsuite/gcc.dg/compat/struct-by-value-5_y.c)8
-rw-r--r--gcc/testsuite/gcc.dg/compat/struct-by-value-6a_main.c (renamed from gcc/testsuite/gcc.dg/compat/struct-by-value-6_main.c)4
-rw-r--r--gcc/testsuite/gcc.dg/compat/struct-by-value-6a_x.c43
-rw-r--r--gcc/testsuite/gcc.dg/compat/struct-by-value-6a_y.c25
-rw-r--r--gcc/testsuite/gcc.dg/compat/struct-by-value-6b_main.c14
-rw-r--r--gcc/testsuite/gcc.dg/compat/struct-by-value-6b_x.c (renamed from gcc/testsuite/gcc.dg/compat/struct-by-value-6_x.c)18
-rw-r--r--gcc/testsuite/gcc.dg/compat/struct-by-value-6b_y.c (renamed from gcc/testsuite/gcc.dg/compat/struct-by-value-6_y.c)8
-rw-r--r--gcc/testsuite/gcc.dg/compat/struct-by-value-7a_main.c (renamed from gcc/testsuite/gcc.dg/compat/struct-by-value-7_main.c)4
-rw-r--r--gcc/testsuite/gcc.dg/compat/struct-by-value-7a_x.c43
-rw-r--r--gcc/testsuite/gcc.dg/compat/struct-by-value-7a_y.c25
-rw-r--r--gcc/testsuite/gcc.dg/compat/struct-by-value-7b_main.c14
-rw-r--r--gcc/testsuite/gcc.dg/compat/struct-by-value-7b_x.c (renamed from gcc/testsuite/gcc.dg/compat/struct-by-value-7_x.c)18
-rw-r--r--gcc/testsuite/gcc.dg/compat/struct-by-value-7b_y.c (renamed from gcc/testsuite/gcc.dg/compat/struct-by-value-7_y.c)8
18 files changed, 255 insertions, 81 deletions
diff --git a/gcc/testsuite/gcc.dg/compat/struct-by-value-5_main.c b/gcc/testsuite/gcc.dg/compat/struct-by-value-5a_main.c
index 32eaafbe23b..d6f9eff2563 100644
--- a/gcc/testsuite/gcc.dg/compat/struct-by-value-5_main.c
+++ b/gcc/testsuite/gcc.dg/compat/struct-by-value-5a_main.c
@@ -2,13 +2,13 @@
variable-length argument lists. All struct members are float
scalars. */
-extern void struct_by_value_5_x (void);
+extern void struct_by_value_5a_x (void);
extern void exit (int);
int fails;
int
main ()
{
- struct_by_value_5_x ();
+ struct_by_value_5a_x ();
exit (0);
}
diff --git a/gcc/testsuite/gcc.dg/compat/struct-by-value-5a_x.c b/gcc/testsuite/gcc.dg/compat/struct-by-value-5a_x.c
new file mode 100644
index 00000000000..90738a7a7e8
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/compat/struct-by-value-5a_x.c
@@ -0,0 +1,43 @@
+#include "compat-common.h"
+
+#include "fp-struct-defs.h"
+#include "fp-struct-check.h"
+#include "fp-struct-test-by-value-x.h"
+
+DEFS(f, float)
+CHECKS(f, float)
+
+TEST(Sf1, float)
+TEST(Sf2, float)
+TEST(Sf3, float)
+TEST(Sf4, float)
+TEST(Sf5, float)
+TEST(Sf6, float)
+TEST(Sf7, float)
+TEST(Sf8, float)
+
+#undef T
+
+void
+struct_by_value_5a_x ()
+{
+DEBUG_INIT
+
+#define T(TYPE, MTYPE) testit##TYPE ();
+
+T(Sf1, float)
+T(Sf2, float)
+T(Sf3, float)
+T(Sf4, float)
+T(Sf5, float)
+T(Sf6, float)
+T(Sf7, float)
+T(Sf8, float)
+
+DEBUG_FINI
+
+if (fails != 0)
+ abort ();
+
+#undef T
+}
diff --git a/gcc/testsuite/gcc.dg/compat/struct-by-value-5a_y.c b/gcc/testsuite/gcc.dg/compat/struct-by-value-5a_y.c
new file mode 100644
index 00000000000..9ac1f913474
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/compat/struct-by-value-5a_y.c
@@ -0,0 +1,25 @@
+#include <stdarg.h>
+
+#include "compat-common.h"
+
+#ifdef SKIP_VA
+const int test_va = 0;
+#else
+const int test_va = 1;
+#endif
+
+#include "fp-struct-defs.h"
+#include "fp-struct-init.h"
+#include "fp-struct-test-by-value-y.h"
+
+DEFS(f,float)
+INITS(f, float)
+
+TEST(Sf1, float)
+TEST(Sf2, float)
+TEST(Sf3, float)
+TEST(Sf4, float)
+TEST(Sf5, float)
+TEST(Sf6, float)
+TEST(Sf7, float)
+TEST(Sf8, float)
diff --git a/gcc/testsuite/gcc.dg/compat/struct-by-value-5b_main.c b/gcc/testsuite/gcc.dg/compat/struct-by-value-5b_main.c
new file mode 100644
index 00000000000..dcb5f27ed09
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/compat/struct-by-value-5b_main.c
@@ -0,0 +1,14 @@
+/* Test structures passed by value, including to a function with a
+ variable-length argument lists. All struct members are float
+ scalars. */
+
+extern void struct_by_value_5b_x (void);
+extern void exit (int);
+int fails;
+
+int
+main ()
+{
+ struct_by_value_5b_x ();
+ exit (0);
+}
diff --git a/gcc/testsuite/gcc.dg/compat/struct-by-value-5_x.c b/gcc/testsuite/gcc.dg/compat/struct-by-value-5b_x.c
index e0cbb5782c2..3c371558728 100644
--- a/gcc/testsuite/gcc.dg/compat/struct-by-value-5_x.c
+++ b/gcc/testsuite/gcc.dg/compat/struct-by-value-5b_x.c
@@ -7,14 +7,6 @@
DEFS(f, float)
CHECKS(f, float)
-TEST(Sf1, float)
-TEST(Sf2, float)
-TEST(Sf3, float)
-TEST(Sf4, float)
-TEST(Sf5, float)
-TEST(Sf6, float)
-TEST(Sf7, float)
-TEST(Sf8, float)
TEST(Sf9, float)
TEST(Sf10, float)
TEST(Sf11, float)
@@ -27,20 +19,12 @@ TEST(Sf16, float)
#undef T
void
-struct_by_value_5_x ()
+struct_by_value_5b_x ()
{
DEBUG_INIT
#define T(TYPE, MTYPE) testit##TYPE ();
-T(Sf1, float)
-T(Sf2, float)
-T(Sf3, float)
-T(Sf4, float)
-T(Sf5, float)
-T(Sf6, float)
-T(Sf7, float)
-T(Sf8, float)
T(Sf9, float)
T(Sf10, float)
T(Sf11, float)
diff --git a/gcc/testsuite/gcc.dg/compat/struct-by-value-5_y.c b/gcc/testsuite/gcc.dg/compat/struct-by-value-5b_y.c
index 224d8409e28..cedc1660709 100644
--- a/gcc/testsuite/gcc.dg/compat/struct-by-value-5_y.c
+++ b/gcc/testsuite/gcc.dg/compat/struct-by-value-5b_y.c
@@ -15,14 +15,6 @@ const int test_va = 1;
DEFS(f,float)
INITS(f, float)
-TEST(Sf1, float)
-TEST(Sf2, float)
-TEST(Sf3, float)
-TEST(Sf4, float)
-TEST(Sf5, float)
-TEST(Sf6, float)
-TEST(Sf7, float)
-TEST(Sf8, float)
TEST(Sf9, float)
TEST(Sf10, float)
TEST(Sf11, float)
diff --git a/gcc/testsuite/gcc.dg/compat/struct-by-value-6_main.c b/gcc/testsuite/gcc.dg/compat/struct-by-value-6a_main.c
index 39dc31f4a6a..609c1d67308 100644
--- a/gcc/testsuite/gcc.dg/compat/struct-by-value-6_main.c
+++ b/gcc/testsuite/gcc.dg/compat/struct-by-value-6a_main.c
@@ -2,13 +2,13 @@
variable-length argument lists. All struct members are double
scalars. */
-extern void struct_by_value_6_x (void);
+extern void struct_by_value_6a_x (void);
extern void exit (int);
int fails;
int
main ()
{
- struct_by_value_6_x ();
+ struct_by_value_6a_x ();
exit (0);
}
diff --git a/gcc/testsuite/gcc.dg/compat/struct-by-value-6a_x.c b/gcc/testsuite/gcc.dg/compat/struct-by-value-6a_x.c
new file mode 100644
index 00000000000..e6852d9c9b7
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/compat/struct-by-value-6a_x.c
@@ -0,0 +1,43 @@
+#include "compat-common.h"
+
+#include "fp-struct-defs.h"
+#include "fp-struct-check.h"
+#include "fp-struct-test-by-value-x.h"
+
+DEFS(d, double)
+CHECKS(d, double)
+
+TEST(Sd1, double)
+TEST(Sd2, double)
+TEST(Sd3, double)
+TEST(Sd4, double)
+TEST(Sd5, double)
+TEST(Sd6, double)
+TEST(Sd7, double)
+TEST(Sd8, double)
+
+#undef T
+
+void
+struct_by_value_6a_x ()
+{
+DEBUG_INIT
+
+#define T(TYPE, MTYPE) testit##TYPE ();
+
+T(Sd1, double)
+T(Sd2, double)
+T(Sd3, double)
+T(Sd4, double)
+T(Sd5, double)
+T(Sd6, double)
+T(Sd7, double)
+T(Sd8, double)
+
+DEBUG_FINI
+
+if (fails != 0)
+ abort ();
+
+#undef T
+}
diff --git a/gcc/testsuite/gcc.dg/compat/struct-by-value-6a_y.c b/gcc/testsuite/gcc.dg/compat/struct-by-value-6a_y.c
new file mode 100644
index 00000000000..8684b53c2f3
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/compat/struct-by-value-6a_y.c
@@ -0,0 +1,25 @@
+#include <stdarg.h>
+
+#include "compat-common.h"
+
+#ifdef SKIP_VA
+const int test_va = 0;
+#else
+const int test_va = 1;
+#endif
+
+#include "fp-struct-defs.h"
+#include "fp-struct-init.h"
+#include "fp-struct-test-by-value-y.h"
+
+DEFS(d, double)
+INITS(d, double)
+
+TEST(Sd1, double)
+TEST(Sd2, double)
+TEST(Sd3, double)
+TEST(Sd4, double)
+TEST(Sd5, double)
+TEST(Sd6, double)
+TEST(Sd7, double)
+TEST(Sd8, double)
diff --git a/gcc/testsuite/gcc.dg/compat/struct-by-value-6b_main.c b/gcc/testsuite/gcc.dg/compat/struct-by-value-6b_main.c
new file mode 100644
index 00000000000..ff17221718f
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/compat/struct-by-value-6b_main.c
@@ -0,0 +1,14 @@
+/* Test structures passed by value, including to a function with a
+ variable-length argument lists. All struct members are double
+ scalars. */
+
+extern void struct_by_value_6b_x (void);
+extern void exit (int);
+int fails;
+
+int
+main ()
+{
+ struct_by_value_6b_x ();
+ exit (0);
+}
diff --git a/gcc/testsuite/gcc.dg/compat/struct-by-value-6_x.c b/gcc/testsuite/gcc.dg/compat/struct-by-value-6b_x.c
index 21989194cf7..5b285c9c5b6 100644
--- a/gcc/testsuite/gcc.dg/compat/struct-by-value-6_x.c
+++ b/gcc/testsuite/gcc.dg/compat/struct-by-value-6b_x.c
@@ -7,14 +7,6 @@
DEFS(d, double)
CHECKS(d, double)
-TEST(Sd1, double)
-TEST(Sd2, double)
-TEST(Sd3, double)
-TEST(Sd4, double)
-TEST(Sd5, double)
-TEST(Sd6, double)
-TEST(Sd7, double)
-TEST(Sd8, double)
TEST(Sd9, double)
TEST(Sd10, double)
TEST(Sd11, double)
@@ -27,20 +19,12 @@ TEST(Sd16, double)
#undef T
void
-struct_by_value_6_x ()
+struct_by_value_6b_x ()
{
DEBUG_INIT
#define T(TYPE, MTYPE) testit##TYPE ();
-T(Sd1, double)
-T(Sd2, double)
-T(Sd3, double)
-T(Sd4, double)
-T(Sd5, double)
-T(Sd6, double)
-T(Sd7, double)
-T(Sd8, double)
T(Sd9, double)
T(Sd10, double)
T(Sd11, double)
diff --git a/gcc/testsuite/gcc.dg/compat/struct-by-value-6_y.c b/gcc/testsuite/gcc.dg/compat/struct-by-value-6b_y.c
index 4a27b67cc02..c568761b241 100644
--- a/gcc/testsuite/gcc.dg/compat/struct-by-value-6_y.c
+++ b/gcc/testsuite/gcc.dg/compat/struct-by-value-6b_y.c
@@ -15,14 +15,6 @@ const int test_va = 1;
DEFS(d, double)
INITS(d, double)
-TEST(Sd1, double)
-TEST(Sd2, double)
-TEST(Sd3, double)
-TEST(Sd4, double)
-TEST(Sd5, double)
-TEST(Sd6, double)
-TEST(Sd7, double)
-TEST(Sd8, double)
TEST(Sd9, double)
TEST(Sd10, double)
TEST(Sd11, double)
diff --git a/gcc/testsuite/gcc.dg/compat/struct-by-value-7_main.c b/gcc/testsuite/gcc.dg/compat/struct-by-value-7a_main.c
index 98caf4286a4..8379dc563c5 100644
--- a/gcc/testsuite/gcc.dg/compat/struct-by-value-7_main.c
+++ b/gcc/testsuite/gcc.dg/compat/struct-by-value-7a_main.c
@@ -2,13 +2,13 @@
variable-length argument lists. All struct members are long double
scalars. */
-extern void struct_by_value_7_x (void);
+extern void struct_by_value_7a_x (void);
extern void exit (int);
int fails;
int
main ()
{
- struct_by_value_7_x ();
+ struct_by_value_7a_x ();
exit (0);
}
diff --git a/gcc/testsuite/gcc.dg/compat/struct-by-value-7a_x.c b/gcc/testsuite/gcc.dg/compat/struct-by-value-7a_x.c
new file mode 100644
index 00000000000..9818c3c2251
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/compat/struct-by-value-7a_x.c
@@ -0,0 +1,43 @@
+#include "compat-common.h"
+
+#include "fp-struct-defs.h"
+#include "fp-struct-check.h"
+#include "fp-struct-test-by-value-x.h"
+
+DEFS(ld, long double)
+CHECKS(ld, long double)
+
+TEST(Sld1, long double)
+TEST(Sld2, long double)
+TEST(Sld3, long double)
+TEST(Sld4, long double)
+TEST(Sld5, long double)
+TEST(Sld6, long double)
+TEST(Sld7, long double)
+TEST(Sld8, long double)
+
+#undef T
+
+void
+struct_by_value_7a_x ()
+{
+DEBUG_INIT
+
+#define T(TYPE, MTYPE) testit##TYPE ();
+
+T(Sld1, long double)
+T(Sld2, long double)
+T(Sld3, long double)
+T(Sld4, long double)
+T(Sld5, long double)
+T(Sld6, long double)
+T(Sld7, long double)
+T(Sld8, long double)
+
+DEBUG_FINI
+
+if (fails != 0)
+ abort ();
+
+#undef T
+}
diff --git a/gcc/testsuite/gcc.dg/compat/struct-by-value-7a_y.c b/gcc/testsuite/gcc.dg/compat/struct-by-value-7a_y.c
new file mode 100644
index 00000000000..cb53df89dac
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/compat/struct-by-value-7a_y.c
@@ -0,0 +1,25 @@
+#include <stdarg.h>
+
+#include "compat-common.h"
+
+#ifdef SKIP_VA
+const int test_va = 0;
+#else
+const int test_va = 1;
+#endif
+
+#include "fp-struct-defs.h"
+#include "fp-struct-init.h"
+#include "fp-struct-test-by-value-y.h"
+
+DEFS(ld, long double)
+INITS(ld, long double)
+
+TEST(Sld1, long double)
+TEST(Sld2, long double)
+TEST(Sld3, long double)
+TEST(Sld4, long double)
+TEST(Sld5, long double)
+TEST(Sld6, long double)
+TEST(Sld7, long double)
+TEST(Sld8, long double)
diff --git a/gcc/testsuite/gcc.dg/compat/struct-by-value-7b_main.c b/gcc/testsuite/gcc.dg/compat/struct-by-value-7b_main.c
new file mode 100644
index 00000000000..5d6908bfc1f
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/compat/struct-by-value-7b_main.c
@@ -0,0 +1,14 @@
+/* Test structures passed by value, including to a function with a
+ variable-length argument lists. All struct members are long double
+ scalars. */
+
+extern void struct_by_value_7b_x (void);
+extern void exit (int);
+int fails;
+
+int
+main ()
+{
+ struct_by_value_7b_x ();
+ exit (0);
+}
diff --git a/gcc/testsuite/gcc.dg/compat/struct-by-value-7_x.c b/gcc/testsuite/gcc.dg/compat/struct-by-value-7b_x.c
index 018db252ae4..508ff616584 100644
--- a/gcc/testsuite/gcc.dg/compat/struct-by-value-7_x.c
+++ b/gcc/testsuite/gcc.dg/compat/struct-by-value-7b_x.c
@@ -7,14 +7,6 @@
DEFS(ld, long double)
CHECKS(ld, long double)
-TEST(Sld1, long double)
-TEST(Sld2, long double)
-TEST(Sld3, long double)
-TEST(Sld4, long double)
-TEST(Sld5, long double)
-TEST(Sld6, long double)
-TEST(Sld7, long double)
-TEST(Sld8, long double)
TEST(Sld9, long double)
TEST(Sld10, long double)
TEST(Sld11, long double)
@@ -27,20 +19,12 @@ TEST(Sld16, long double)
#undef T
void
-struct_by_value_7_x ()
+struct_by_value_7b_x ()
{
DEBUG_INIT
#define T(TYPE, MTYPE) testit##TYPE ();
-T(Sld1, long double)
-T(Sld2, long double)
-T(Sld3, long double)
-T(Sld4, long double)
-T(Sld5, long double)
-T(Sld6, long double)
-T(Sld7, long double)
-T(Sld8, long double)
T(Sld9, long double)
T(Sld10, long double)
T(Sld11, long double)
diff --git a/gcc/testsuite/gcc.dg/compat/struct-by-value-7_y.c b/gcc/testsuite/gcc.dg/compat/struct-by-value-7b_y.c
index 39e46ba8481..cc70a7d2925 100644
--- a/gcc/testsuite/gcc.dg/compat/struct-by-value-7_y.c
+++ b/gcc/testsuite/gcc.dg/compat/struct-by-value-7b_y.c
@@ -15,14 +15,6 @@ const int test_va = 1;
DEFS(ld, long double)
INITS(ld, long double)
-TEST(Sld1, long double)
-TEST(Sld2, long double)
-TEST(Sld3, long double)
-TEST(Sld4, long double)
-TEST(Sld5, long double)
-TEST(Sld6, long double)
-TEST(Sld7, long double)
-TEST(Sld8, long double)
TEST(Sld9, long double)
TEST(Sld10, long double)
TEST(Sld11, long double)