diff options
author | Jakub Jelinek <jakub@redhat.com> | 2007-06-20 08:39:53 +0200 |
---|---|---|
committer | Jakub Jelinek <jakub@gcc.gnu.org> | 2007-06-20 08:39:53 +0200 |
commit | 1d8381f13f63fc3871f88f8765a2cdcb75958180 (patch) | |
tree | e9ec98437bfbfa3c8b4187b82dfdc01a5e705a87 /gcc/builtins.c | |
parent | f497c16c2698e5f2ecd6a33f174982b2f826d48e (diff) | |
download | gcc-1d8381f13f63fc3871f88f8765a2cdcb75958180.zip gcc-1d8381f13f63fc3871f88f8765a2cdcb75958180.tar.gz gcc-1d8381f13f63fc3871f88f8765a2cdcb75958180.tar.bz2 |
re PR middle-end/31959 (ICE in expand_builtin_expect, at builtins.c:5112)
PR middle-end/31959
* builtins.c: Include diagnostic.h.
(expand_builtin_expect): Make gcc_assert more permissive.
* Makefile.in (builtins.o): Depend on $(DIAGNOSTIC_H).
* gcc.dg/pr31959.c: New test.
From-SVN: r125875
Diffstat (limited to 'gcc/builtins.c')
-rw-r--r-- | gcc/builtins.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/gcc/builtins.c b/gcc/builtins.c index 6dff9b8..7dd4470 100644 --- a/gcc/builtins.c +++ b/gcc/builtins.c @@ -50,6 +50,7 @@ Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA #include "tree-mudflap.h" #include "tree-flow.h" #include "value-prof.h" +#include "diagnostic.h" #ifndef PAD_VARARGS_DOWN #define PAD_VARARGS_DOWN BYTES_BIG_ENDIAN @@ -5121,7 +5122,8 @@ expand_builtin_expect (tree exp, rtx target) target = expand_expr (arg, target, VOIDmode, EXPAND_NORMAL); /* When guessing was done, the hints should be already stripped away. */ - gcc_assert (!flag_guess_branch_prob); + gcc_assert (!flag_guess_branch_prob + || optimize == 0 || errorcount || sorrycount); return target; } |