aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRichard Henderson <rth@redhat.com>2000-06-29 12:24:40 -0700
committerRichard Henderson <rth@gcc.gnu.org>2000-06-29 12:24:40 -0700
commit051aec2563b6116a4a268cc3607d9afc8b55857e (patch)
tree0ae9897d66dd34ad60347bbeb40757c2d9fd9223 /gcc
parent07d62e54cd9a1a419414298f3ee39128a518dda3 (diff)
downloadgcc-051aec2563b6116a4a268cc3607d9afc8b55857e.zip
gcc-051aec2563b6116a4a268cc3607d9afc8b55857e.tar.gz
gcc-051aec2563b6116a4a268cc3607d9afc8b55857e.tar.bz2
930529-1.x: New file.
* gcc.c-torture/execute/930529-1.x: New file. * gcc.dg/920413-1.c: Adjust expexted warning text. * gcc.dg/980217-1.c: Declare abort. * gcc.dg/cpp/20000628-1a.h: Use a declaration instead of an asm. From-SVN: r34789
Diffstat (limited to 'gcc')
-rw-r--r--gcc/testsuite/ChangeLog7
-rw-r--r--gcc/testsuite/gcc.c-torture/execute/930529-1.x18
-rw-r--r--gcc/testsuite/gcc.dg/920413-1.c2
-rw-r--r--gcc/testsuite/gcc.dg/980217-1.c2
-rw-r--r--gcc/testsuite/gcc.dg/cpp/20000628-1a.h2
5 files changed, 29 insertions, 2 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 635263c..ce9855b 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,10 @@
+2000-06-29 Richard Henderson <rth@redhat.com>
+
+ * gcc.c-torture/execute/930529-1.x: New file.
+ * gcc.dg/920413-1.c: Adjust expexted warning text.
+ * gcc.dg/980217-1.c: Declare abort.
+ * gcc.dg/cpp/20000628-1a.h: Use a declaration instead of an asm.
+
Thu Jun 29 09:42:40 2000 Jeffrey A Law (law@cygnus.com)
* g77.f-torture/compile/20000629-1.f: New test.
diff --git a/gcc/testsuite/gcc.c-torture/execute/930529-1.x b/gcc/testsuite/gcc.c-torture/execute/930529-1.x
new file mode 100644
index 0000000..a44f482
--- /dev/null
+++ b/gcc/testsuite/gcc.c-torture/execute/930529-1.x
@@ -0,0 +1,18 @@
+# The problem on Alpha at -O3 is that when dd is inlined, we have
+# division by a constant, which gets converted to multiplication
+# by a large constant, which gets turned into an induction variable.
+# The problem is that the multiplication was unsigned SImode, and the
+# induction variable is DImode, and we lose the truncation that
+# should have happened.
+
+set torture_eval_before_execute {
+
+ set compiler_conditional_xfail_data {
+ "division by a constant conflicts with strength reduction" \
+ "alpha*-*-*" \
+ { "-O3" } \
+ { "" }
+ }
+}
+
+return 0
diff --git a/gcc/testsuite/gcc.dg/920413-1.c b/gcc/testsuite/gcc.dg/920413-1.c
index db6bd08..db67ede 100644
--- a/gcc/testsuite/gcc.dg/920413-1.c
+++ b/gcc/testsuite/gcc.dg/920413-1.c
@@ -5,6 +5,6 @@ int
x (b)
{
return
- 4294967295U /* { dg-warning "width of integer constant may change" } */
+ 4294967295U /* { dg-warning "width of integer constant" } */
/ (unsigned long) b;
}
diff --git a/gcc/testsuite/gcc.dg/980217-1.c b/gcc/testsuite/gcc.dg/980217-1.c
index 2236e84..6d56d83 100644
--- a/gcc/testsuite/gcc.dg/980217-1.c
+++ b/gcc/testsuite/gcc.dg/980217-1.c
@@ -3,6 +3,8 @@
/* { dg-do run { target alpha*-*-* } } */
/* { dg-options "-mieee -O2" } */
+extern void abort(void);
+
typedef int int32_t __attribute__ ((__mode__ ( __SI__ ))) ;
typedef union
{
diff --git a/gcc/testsuite/gcc.dg/cpp/20000628-1a.h b/gcc/testsuite/gcc.dg/cpp/20000628-1a.h
index 4c5779b..1b6ff80 100644
--- a/gcc/testsuite/gcc.dg/cpp/20000628-1a.h
+++ b/gcc/testsuite/gcc.dg/cpp/20000628-1a.h
@@ -1,2 +1,2 @@
/* Included from 20000628-1.h */
-asm ("");
+extern int x;