This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug tree-optimization/57864] [4.7 Regression] ICE in bitmap_set_replace_value, at tree-ssa-pre.c:862


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57864

--- Comment #4 from Richard Biener <rguenth at gcc dot gnu.org> ---
Caused by

static pre_expr
phi_translate_1 (pre_expr expr, bitmap_set_t set1, bitmap_set_t set2,
                 basic_block pred, basic_block phiblock)
{
...
    case NAME:
      {
...
           if (TREE_CODE (def) == SSA_NAME)
              def = VN_INFO (def)->valnum;

picking up VN inserted expressions.  I re-wrote this as part of

2012-09-24  Richard Guenther  <rguenther@suse.de>

       * tree-ssa-pre.c (bitmap_find_leader, create_expression_by_pieces,
       find_or_generate_expression): Remove dominating stmt argument.
       (find_leader_in_sets, phi_translate_1, bitmap_find_leader,
       create_component_ref_by_pieces_1, create_component_ref_by_pieces,
       do_regular_insertion, do_partial_partial_insertion): Adjust.
       (compute_avail): Do not set uids.

and that fixed it.  I am going to try backporting that change in isolation.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]