> Hi,
> 
> On 02/04/2014 06:43 AM, Jan Hubicka wrote:
> >Hi,
> >this patch solves the actual ICE in PR59831 by using ipa-devirt instead of
> >gimple_extract_devirt_binfo_from_cst as discussed in the first post.
> >
> >Honza
> >
> >     PR ipa/59831
> >     * ipa-cp.c (ipa_get_indirect_edge_target_1): Use ipa-devirt
> >     to figure out targets of polymorphic calls with known decl.
> >     * ipa-prop.c (try_make_edge_direct_virtual_call): Likewise.
> >     * ipa-utils.h (get_polymorphic_call_info_from_invariant): Declare.
> >     * ipa-devirt.c (get_polymorphic_call_info_for_decl): Break out from ...
> >     (get_polymorphic_call_info): ... here.
> >     (get_polymorphic_call_info_from_invariant): New function.
> >
> >     * g++.dg/ipa/devirt-22.C: New testcase.
> Today I'm seeing regressions in the libstdc++-v3 testsuite in the
> form of ICEs exactly in ipa_get_indirect_edge_target_1:

Ah, sorry, I had the can_refer_to_current_unit_p patch in my tree too and at 
last
minute I decided to split those two changes.  I will add check to
ipa_get_indirect_edge_target_1 to expect target to be NULLnow and als
commit the change now approved by Richard.

Honza
> 
> FAIL: 27_io/basic_stringbuf/sputbackc/char/9425.cc (test for excess errors)
> WARNING: 27_io/basic_stringbuf/sputbackc/char/9425.cc compilation
> failed to produce executable
> FAIL: 27_io/basic_stringbuf/sputbackc/wchar_t/9425.cc (test for
> excess errors)
> WARNING: 27_io/basic_stringbuf/sputbackc/wchar_t/9425.cc compilation
> failed to produce executable
> FAIL: 27_io/basic_stringbuf/str/char/2.cc (test for excess errors)
> WARNING: 27_io/basic_stringbuf/str/char/2.cc compilation failed to
> produce executable
> FAIL: 27_io/basic_stringbuf/str/wchar_t/2.cc (test for excess errors)
> WARNING: 27_io/basic_stringbuf/str/wchar_t/2.cc compilation failed
> to produce executable
> 
> Can you please have a look?
> 
> Thanks,
> Paolo.

Reply via email to