diff options
author | matz <matz@138bc75d-0d04-0410-961f-82ee72b054a4> | 2008-02-21 12:38:35 +0000 |
---|---|---|
committer | matz <matz@138bc75d-0d04-0410-961f-82ee72b054a4> | 2008-02-21 12:38:35 +0000 |
commit | 6ef194631a5f261bd800ebf7132adc423be4471f (patch) | |
tree | d88c433168e3918143905f89701e9355355cefbf | |
parent | 3da2a73c6b8ddc0df95d27417fa3f5a47b5a5f82 (diff) | |
download | gcc-6ef194631a5f261bd800ebf7132adc423be4471f.tar.gz |
PR target/35264
* config/i386/i386.c (ix86_expand_branch): Add missing breaks.
* gcc.dg/pr35264.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@132521 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/config/i386/i386.c | 2 | ||||
-rw-r--r-- | gcc/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/pr35264.c | 24 |
4 files changed, 36 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index b7ab324ae9f..c3dfc8acee5 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2008-02-21 Michael Matz <matz@suse.de> + + PR target/35264 + * config/i386/i386.c (ix86_expand_branch): Add missing breaks. + 2008-02-21 Uros Bizjak <ubizjak@gmail.com> * config/i386/i386.md (mov<mode>cc): Macroize expander from movsfcc, diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c index 5dad2fcf515..5a4456d912b 100644 --- a/gcc/config/i386/i386.c +++ b/gcc/config/i386/i386.c @@ -12148,6 +12148,7 @@ ix86_expand_branch (enum rtx_code code, rtx label) ix86_expand_branch (code, label); return; } + break; case LE: case LEU: case GT: case GTU: if (lo[1] == constm1_rtx) { @@ -12156,6 +12157,7 @@ ix86_expand_branch (enum rtx_code code, rtx label) ix86_expand_branch (code, label); return; } + break; default: break; } diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 780efe8dfb1..259bfbe1236 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2008-02-21 Michael Matz <matz@suse.de> + + PR target/35264 + * gcc.dg/pr35264.c: New testcase. + 2008-02-21 Richard Guenther <rguenther@suse.de> * gfortran.dg/reassoc_1.f90: New testcase. diff --git a/gcc/testsuite/gcc.dg/pr35264.c b/gcc/testsuite/gcc.dg/pr35264.c new file mode 100644 index 00000000000..a332efc42ef --- /dev/null +++ b/gcc/testsuite/gcc.dg/pr35264.c @@ -0,0 +1,24 @@ +/* { dg-do run } */ +/* { dg-options "-O1" } */ +extern void abort(void); +long long __attribute__((noinline)) get(void) +{ + return -2; +} +long long __attribute__((noinline)) get(void); +int __attribute__((noinline)) check(void) +{ + long long lcn; + + lcn = get(); + if (lcn >= 0 || lcn == -1) + return 0; + + return -1; +} +int main() +{ + if (check() == 0) + abort(); + return 0; +} |