diff options
author | Falk Hueffner <falk@debian.org> | 2004-08-09 01:17:23 +0200 |
---|---|---|
committer | Falk Hueffner <falk@gcc.gnu.org> | 2004-08-09 01:17:23 +0200 |
commit | 08a02c9e08261f946b72ab944cdbb2556b91c283 (patch) | |
tree | 7385bdf57ffe89bf7268d9ccbd4db0e402a95731 | |
parent | d72372e46ac06b4db61143f91367a777089cc6f6 (diff) | |
download | gcc-08a02c9e08261f946b72ab944cdbb2556b91c283.zip gcc-08a02c9e08261f946b72ab944cdbb2556b91c283.tar.gz gcc-08a02c9e08261f946b72ab944cdbb2556b91c283.tar.bz2 |
re PR tree-optimization/12517 ([tree-ssa] ICE in bsi_insert_on_edge_immediate)
PR tree-optimization/12517
* gcc.c-torture/compile/pr12517.c: New test.
PR tree-optimization/12578
* gcc.c-torture/compile/pr12578.c: New test.
PR tree-optimization/12899
* gcc.c-torture/compile/pr12899.c: New test.
PR rtl-optimization/14692
* gcc.c-torture/compile/pr14692.c: New test.
PR tree-optimization/16461
* gcc.c-torture/compile/pr16461.c: New test.
From-SVN: r85698
-rw-r--r-- | gcc/testsuite/ChangeLog | 17 | ||||
-rw-r--r-- | gcc/testsuite/gcc.c-torture/compile/pr12517.c | 19 | ||||
-rw-r--r-- | gcc/testsuite/gcc.c-torture/compile/pr12578.c | 15 | ||||
-rw-r--r-- | gcc/testsuite/gcc.c-torture/compile/pr12899.c | 11 | ||||
-rw-r--r-- | gcc/testsuite/gcc.c-torture/compile/pr14692.c | 14 | ||||
-rw-r--r-- | gcc/testsuite/gcc.c-torture/compile/pr16461.c | 14 |
6 files changed, 90 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 8caed21..2fde4b2 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,20 @@ +2004-08-09 Falk Hueffner <falk@debian.org> + + PR tree-optimization/12517 + * gcc.c-torture/compile/pr12517.c: New test. + + PR tree-optimization/12578 + * gcc.c-torture/compile/pr12578.c: New test. + + PR tree-optimization/12899 + * gcc.c-torture/compile/pr12899.c: New test. + + PR rtl-optimization/14692 + * gcc.c-torture/compile/pr14692.c: New test. + + PR tree-optimization/16461 + * gcc.c-torture/compile/pr16461.c: New test. + 2004-08-06 Janne Blomqvist <jblomqvi@cc.hut.fi> * gfortran.dg/getenv_1.f90: New test. diff --git a/gcc/testsuite/gcc.c-torture/compile/pr12517.c b/gcc/testsuite/gcc.c-torture/compile/pr12517.c new file mode 100644 index 0000000..af82db8 --- /dev/null +++ b/gcc/testsuite/gcc.c-torture/compile/pr12517.c @@ -0,0 +1,19 @@ +/* PR tree-optimization/12517 */ + +int f(void); +void g(int); +void h(int a, int b, int c) +{ + int i = f(); + + if (b && (i & 4)) + g(i & 8 ? 0 : 1); + if (a) { + do { + if (i & 8) + g(0); + if (i & 4) + g(i ? 0 : 1); + } while (--c); + } +} diff --git a/gcc/testsuite/gcc.c-torture/compile/pr12578.c b/gcc/testsuite/gcc.c-torture/compile/pr12578.c new file mode 100644 index 0000000..69afffe --- /dev/null +++ b/gcc/testsuite/gcc.c-torture/compile/pr12578.c @@ -0,0 +1,15 @@ +/* PR tree-optimization/12517 */ + +void trivial_regexp_p(int *s, int len) +{ + while (--len) { + switch (*s++) { + case '\\': + switch (*s++) { + case '|': + ; + } + } + } +} + diff --git a/gcc/testsuite/gcc.c-torture/compile/pr12899.c b/gcc/testsuite/gcc.c-torture/compile/pr12899.c new file mode 100644 index 0000000..6bd4724 --- /dev/null +++ b/gcc/testsuite/gcc.c-torture/compile/pr12899.c @@ -0,0 +1,11 @@ +/* PR tree-optimization/12899 */ + +void +bb_getopt_ulflags (char *s) +{ + for (;;) + if (s[1]) + do + s++; + while (*s); +} diff --git a/gcc/testsuite/gcc.c-torture/compile/pr14692.c b/gcc/testsuite/gcc.c-torture/compile/pr14692.c new file mode 100644 index 0000000..3f36b3c --- /dev/null +++ b/gcc/testsuite/gcc.c-torture/compile/pr14692.c @@ -0,0 +1,14 @@ +/* PR rtl-optimization/14692 */ + +void assert_failed (void); +void eidecpos_1 (unsigned char *pos, long n) +{ + int i; + for (i = 0; i < n; i++) + { + const unsigned char *dc_ptr1 = pos; + pos--; + if (dc_ptr1 - pos == 1) + assert_failed (); + } +} diff --git a/gcc/testsuite/gcc.c-torture/compile/pr16461.c b/gcc/testsuite/gcc.c-torture/compile/pr16461.c new file mode 100644 index 0000000..b48eee2 --- /dev/null +++ b/gcc/testsuite/gcc.c-torture/compile/pr16461.c @@ -0,0 +1,14 @@ +/* PR tree-optimization/16461 */ + +int DVDinput_read(int); +int DVDReadBlocksPath(int offset, int block_count) { + int ret = 0, ret2 = 0; + for (;;) { + if (offset) + ret = DVDinput_read(block_count); + else + ret2 = DVDinput_read(block_count); + break; + } + return ret + ret2; +} |