This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug middle-end/46717] Compiler segfault in profile-use mode
- From: "rguenth at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Tue, 30 Nov 2010 12:35:43 +0000
- Subject: [Bug middle-end/46717] Compiler segfault in profile-use mode
- Auto-submitted: auto-generated
- References: <bug-46717-4@http.gcc.gnu.org/bugzilla/>
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46717
Richard Guenther <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |ASSIGNED
AssignedTo|unassigned at gcc dot |rguenth at gcc dot gnu.org
|gnu.org |
--- Comment #10 from Richard Guenther <rguenth at gcc dot gnu.org> 2010-11-30 12:35:28 UTC ---
Coming from indirect-function call profiling for a call that can throw.
<bb 39>:
D.479965_99 = MEM[(struct _List_node_base *)D.414535_48]._M_prev;
D.414537_51 = MEM[(struct linked_streambuf * &)D.479965_99 + 16];
PROF.4112_148 = [obj_type_ref] OBJ_TYPE_REF(D.414534_47;prev_1->14);
PROF.4112_149 = (void *) set_next;
if (PROF.4112_149 == PROF.4112_148)
goto <bb 53>;
else
goto <bb 54>;
;; succ: 55 [100.0%] count:63 (fallthru)
<bb 53>:
boost::iostreams::detail::indirect_streambuf<boost::iostreams::basic_gzip_compressor<>,
std::char_traits<char>, std::allocator<char>,
boost::iostreams::input>::set_next (prev_1, D.414537_51);
goto <bb 55>;
;; succ: 55 [100.0%] (fallthru) 50 (eh)
<bb 54>:
OBJ_TYPE_REF(D.414534_47;prev_1->14) (prev_1, D.414537_51);
<bb 55>:
...
;; basic block 50, loop depth 0, count 0
;; prev block 49, next block 51
;; pred: 30 (eh,exec) 40 (eh,exec) 54 (eh)
;; succ: 51 [69.8%] (true,exec) 52 [30.2%] (false,exec)
# buf$_M_ptr_138 = PHI <D.353926_28(30), buf$_M_ptr_132(40), (54)>
Mine.