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

Martin Jambor <jamborm at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |ASSIGNED
           Assignee|unassigned at gcc dot gnu.org      |jamborm at gcc dot 
gnu.org

--- Comment #2 from Martin Jambor <jamborm at gcc dot gnu.org> ---
Heh, ipcp_store_vr_results checks for flag_ipa_vrp but not for flag_ipa_cp or
optimize, which means that it accesses info which has not been created.  I
suppose it's best to do what ipcp_store_bits_results does:

diff --git a/gcc/ipa-cp.c b/gcc/ipa-cp.c
index 243b064ee2c..a29e96613a3 100644
--- a/gcc/ipa-cp.c
+++ b/gcc/ipa-cp.c
@@ -5661,7 +5661,7 @@ ipcp_store_vr_results (void)
       ipa_node_params *info = IPA_NODE_REF (node);
       bool found_useful_result = false;

-      if (!opt_for_fn (node->decl, flag_ipa_vrp))
+      if (!opt_for_fn (node->decl, flag_ipa_vrp) || !info)
        {
          if (dump_file)
            fprintf (dump_file, "Not considering %s for VR discovery "

Reply via email to