summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--gcc/testsuite/gcc.c-torture/ChangeLog4
-rw-r--r--gcc/testsuite/gcc.c-torture/execute/20000412-6.c22
2 files changed, 26 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.c-torture/ChangeLog b/gcc/testsuite/gcc.c-torture/ChangeLog
index a09f7a93989..38acdbd27ec 100644
--- a/gcc/testsuite/gcc.c-torture/ChangeLog
+++ b/gcc/testsuite/gcc.c-torture/ChangeLog
@@ -1,3 +1,7 @@
+Wed Apr 12 22:54:02 2000 Hans-Peter Nilsson <hp@axis.com>
+
+ * execute/20000412-6.c: New test.
+
Wed Apr 5 22:51:36 2000 Hans-Peter Nilsson <hp@axis.com>
* execute/960327-1.c (f): Add a letter to s[] to avoid stack-frame
diff --git a/gcc/testsuite/gcc.c-torture/execute/20000412-6.c b/gcc/testsuite/gcc.c-torture/execute/20000412-6.c
new file mode 100644
index 00000000000..98e00305197
--- /dev/null
+++ b/gcc/testsuite/gcc.c-torture/execute/20000412-6.c
@@ -0,0 +1,22 @@
+unsigned bug (unsigned short value, unsigned short *buffer,
+ unsigned short *bufend);
+
+unsigned short buf[] = {1, 4, 16, 64, 256};
+int main()
+{
+ if (bug (512, buf, buf + 3) != 491)
+ abort ();
+
+ exit (0);
+}
+
+unsigned
+bug (unsigned short value, unsigned short *buffer, unsigned short *bufend)
+{
+ unsigned short *tmp;
+
+ for (tmp = buffer; tmp < bufend; tmp++)
+ value -= *tmp;
+
+ return value;
+}
OpenPOWER on IntegriCloud