[Bug tree-optimization/98464] [11 Regression] ICE: tree check: expected class 'type', have 'exceptional' (error_mark) in tree_nop_conversion_p, at tree.c:12825 by r11-4637

linkw at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Mon Jan 4 13:22:13 GMT 2021


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98464

--- Comment #8 from Kewen Lin <linkw at gcc dot gnu.org> ---
(In reply to Richard Biener from comment #5)
> But this
> 
>         sprime = eliminate_avail (gimple_bb (SSA_NAME_DEF_STMT (use)), use);
> 
> should make it more conservative (compared to the more desirable use of
> gimple_bb (stmt) aka 'b').
> 
> The issue is really that dominated_by_p_w_unex is not "transitive" with
> respect to an intermediate immediate dominator chain.
> 
> We can make that more consistent at least by doing sth like your patch but
> only in vn_valueize_wrapper.  

OK, just noticed that wrapper is only for simplify_replace_tree. Thanks for
fixing.  But I still don't get why it's buggy for rpo_vn_valueize.


More information about the Gcc-bugs mailing list