diff options
Diffstat (limited to 'gcc/ipa-cp.c')
-rw-r--r-- | gcc/ipa-cp.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/gcc/ipa-cp.c b/gcc/ipa-cp.c index fe010ff..10cc595 100644 --- a/gcc/ipa-cp.c +++ b/gcc/ipa-cp.c @@ -1270,6 +1270,7 @@ initialize_node_lattices (struct cgraph_node *node) plats->ctxlat.set_to_bottom (); set_agg_lats_to_bottom (plats); plats->bits_lattice.set_to_bottom (); + plats->m_value_range.m_vr = value_range (); plats->m_value_range.set_to_bottom (); } else @@ -3898,8 +3899,10 @@ ipcp_propagate_stage (class ipa_topo_info *topo) { class ipa_node_params *info = IPA_NODE_REF (node); determine_versionability (node, info); - info->lattices = XCNEWVEC (class ipcp_param_lattices, - ipa_get_param_count (info)); + + unsigned nlattices = ipa_get_param_count (info); + void *chunk = XCNEWVEC (class ipcp_param_lattices, nlattices); + info->lattices = new (chunk) ipcp_param_lattices[nlattices]; initialize_node_lattices (node); } ipa_size_summary *s = ipa_size_summaries->get (node); |