diff options
author | Hans-Peter Nilsson <hp@axis.com> | 2010-05-20 06:44:45 +0000 |
---|---|---|
committer | Hans-Peter Nilsson <hp@gcc.gnu.org> | 2010-05-20 06:44:45 +0000 |
commit | f36eb2af965e51335ea095c45df13f0181bd21f3 (patch) | |
tree | de8e85dfb1c65681daabf780d11e6dc6b3e41d24 /gcc | |
parent | 951771dc6becb8dc1b0e6b691489aeb8f3aa08a7 (diff) | |
download | gcc-f36eb2af965e51335ea095c45df13f0181bd21f3.zip gcc-f36eb2af965e51335ea095c45df13f0181bd21f3.tar.gz gcc-f36eb2af965e51335ea095c45df13f0181bd21f3.tar.bz2 |
re PR target/44202 (Missing compare after add)
PR target/44202
* gcc.c-torture/execute/pr44202-1.c: New test.
From-SVN: r159611
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/testsuite/gcc.c-torture/execute/pr44202-1.c | 30 |
2 files changed, 35 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index a3658db..92eb3cf 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2010-05-20 Hans-Peter Nilsson <hp@axis.com> + + PR target/44202 + * gcc.c-torture/execute/pr44202-1.c: New test. + 2010-05-19 Jerry DeLisle <jvdelisle@gcc.gnu.org> PR fortran/43851 diff --git a/gcc/testsuite/gcc.c-torture/execute/pr44202-1.c b/gcc/testsuite/gcc.c-torture/execute/pr44202-1.c new file mode 100644 index 0000000..37e84f2 --- /dev/null +++ b/gcc/testsuite/gcc.c-torture/execute/pr44202-1.c @@ -0,0 +1,30 @@ +extern __attribute__ ((__noreturn__)) void exit(int); +extern __attribute__ ((__noreturn__)) void abort(void); +__attribute__ ((__noinline__)) +int +add512(int a, int *b) +{ + int c = a + 512; + if (c != 0) + *b = a; + return c; +} + +__attribute__ ((__noinline__)) +int +add513(int a, int *b) +{ + int c = a + 513; + if (c == 0) + *b = a; + return c; +} + +int main(void) +{ + int b0 = -1; + int b1 = -1; + if (add512(-512, &b0) != 0 || b0 != -1 || add513(-513, &b1) != 0 || b1 != -513) + abort (); + exit (0); +} |