diff options
author | Yury Gribov <tetra2005@gmail.com> | 2017-06-29 08:50:21 +0000 |
---|---|---|
committer | Maxim Ostapenko <chefmax@gcc.gnu.org> | 2017-06-29 11:50:21 +0300 |
commit | c8fb20d8bd45a88c2f000be86936b64ba67ef8e5 (patch) | |
tree | 89facb31679bcd9da11f2eec6fb97c63236f5429 /gcc/ipa-cp.c | |
parent | 1cc6250db088a1d2cee97acf73d917cdd6f48ab1 (diff) | |
download | gcc-c8fb20d8bd45a88c2f000be86936b64ba67ef8e5.zip gcc-c8fb20d8bd45a88c2f000be86936b64ba67ef8e5.tar.gz gcc-c8fb20d8bd45a88c2f000be86936b64ba67ef8e5.tar.bz2 |
re PR ipa/80565 (ICE at -O2 and -O3 in 32-bit mode (not 64-bit) on x86_64-linux-gnu (in edge_badness, at ipa-inline.c:1028))
2017-06-29 Yury Gribov <tetra2005@gmail.com>
PR bootstrap/80565
* ipa-cp.c (allocate_and_init_ipcp_value): Add initialization
code.
* ipa-inline.h
(edge_growth_cache_entry::edge_growth_cache_entry): New
function.
(reset_edge_growth_cache): Update to use constructor.
From-SVN: r249771
Diffstat (limited to 'gcc/ipa-cp.c')
-rw-r--r-- | gcc/ipa-cp.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/gcc/ipa-cp.c b/gcc/ipa-cp.c index c7e3c71..ee0aa9f 100644 --- a/gcc/ipa-cp.c +++ b/gcc/ipa-cp.c @@ -159,6 +159,10 @@ public: /* Time benefit and size cost that specializing the function for this value can bring about in it's callees (transitively). */ int prop_time_benefit, prop_size_cost; + + ipcp_value_base () + : local_time_benefit (0), local_size_cost (0), + prop_time_benefit (0), prop_size_cost (0) {} }; /* Describes one particular value stored in struct ipcp_lattice. */ @@ -188,6 +192,10 @@ public: /* True if this valye is currently on the topo-sort stack. */ bool on_stack; + ipcp_value() + : sources (0), next (0), scc_next (0), topo_next (0), + spec_node (0), dfs (0), low_link (0), on_stack (false) {} + void add_source (cgraph_edge *cs, ipcp_value *src_val, int src_idx, HOST_WIDE_INT offset); }; |