> + /* Visit PHI stmts and discover any new VRs possible. */
> + gimple_stmt_iterator gsi;
> + for (gphi_iterator gpi = gsi_start_phis (bb);
> + !gsi_end_p (gpi); gsi_next (&gpi))
> + {
> + gphi *phi = gpi.phi ();
> + tree lhs = PHI_RESULT (phi);
> + value_range vr_result = VR_INITIALIZER;
> + if (! has_unvisived_preds
> && stmt_interesting_for_vrp (phi)
> + && stmt_visit_phi_node_in_dom_p (phi))
> + extract_range_from_phi_node (phi, &vr_result, true);
> + else
> + set_value_range_to_varying (&vr_result);
> + update_value_range (lhs, &vr_result);
> + }
>
> due to a bug in IRA you need to make sure to un-set BB_VISITED after
> early-vrp is finished again.
How IRA bugs affects early passes?
Honza