http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59176
Jan Hubicka <hubicka at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED Assignee|hubicka at gcc dot gnu.org |mjambor at suse dot cz --- Comment #8 from Jan Hubicka <hubicka at gcc dot gnu.org> --- This seems to be bug in ipa-cp, it redirect edge from thunk to clone of the function thunk is associated with. Old value = (cgraph_node *) 0x7ffff6c5fb88 New value = (cgraph_node *) 0x7ffff6c5f668 cgraph_set_edge_callee (e=0x7ffff6c76d68, n=0x7ffff6c5f668) at ../../gcc/cgraph.c:1081 (gdb) p dump_cgraph_node (stderr, (cgraph_node *)0x7ffff6c5fb88) _ZN1BD1Ev/5 (B::~B()) @0x7ffff6c5fb88 Type: function definition analyzed alias cpp_implicit_alias Visibility: external public weak comdat_group:_ZN1BD5Ev one_only Address is taken. Aux: @0x1d026e0 References: _ZN1BD2Ev/4 (alias) Referring: _ZTV1B/13 (addr) Availability: available First run: 0 Function flags: Called by: _ZN1BD0Ev/6 (1.00 per call) (can throw external) Calls: $24 = void (gdb) p dump_cgraph_node (stderr, (cgraph_node *)0x7ffff6c5f668) _ZN1BD2Ev.constprop.0/35 (<built-in>) @0x7ffff6c5f668 Type: function definition analyzed Visibility: external public weak comdat_group:_ZN1BD5Ev one_only References: Referring: Availability: local First run: 0 Function flags: local Called by: _ZN1C5m_fn3Ev/8 _ZN1C5m_fn3Ev/8 (1.00 per call) (can throw external) _ZN1C5m_fn1Ev/7 _ZN1C5m_fn1Ev/7 (1.00 per call) (can throw external) Calls: I believe it is bug somewhere in logic skipping thunks. Martin, this is probably yours.