diff options
author | Jakub Jelinek <jakub@redhat.com> | 2011-06-06 19:14:31 +0200 |
---|---|---|
committer | Jakub Jelinek <jakub@gcc.gnu.org> | 2011-06-06 19:14:31 +0200 |
commit | 04902d4cb5ca18954cf2c32c4f776e53162a0e8f (patch) | |
tree | 209a80ca91b563c4e720d8e78b6d72e02d2b82e7 /gcc/dwarf2out.c | |
parent | a9d245448f2529fe9a4aba63d9cd97059a17a121 (diff) | |
download | gcc-04902d4cb5ca18954cf2c32c4f776e53162a0e8f.zip gcc-04902d4cb5ca18954cf2c32c4f776e53162a0e8f.tar.gz gcc-04902d4cb5ca18954cf2c32c4f776e53162a0e8f.tar.bz2 |
re PR c++/49264 (Internal compiler error: segmentation fault)
PR c++/49264
* gimple-fold.c (fold_stmt_1): Don't try to fold *& on the lhs
if stmt folded into nothing.
* tree-inline.c (fold_marked_statements): If a builtin at the
end of a bb folded into nothing, just update cgraph edges
and move to next bb.
* cgraph.c (cgraph_update_edges_for_call_stmt_node): Allow new_stmt
to be NULL. Don't compute count and frequency if new_call is NULL.
* g++.dg/opt/pr49264.C: New test.
From-SVN: r174712
Diffstat (limited to 'gcc/dwarf2out.c')
-rw-r--r-- | gcc/dwarf2out.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c index b3cf4a6..0fa7f91 100644 --- a/gcc/dwarf2out.c +++ b/gcc/dwarf2out.c @@ -14904,6 +14904,8 @@ mem_loc_descriptor (rtx rtl, enum machine_mode mode, goto do_shift; do_shift: + if (GET_MODE_CLASS (mode) != MODE_INT) + break; op0 = mem_loc_descriptor (XEXP (rtl, 0), mode, mem_mode, VAR_INIT_STATUS_INITIALIZED); { |