aboutsummaryrefslogtreecommitdiff
path: root/gcc/ipa-inline.h
diff options
context:
space:
mode:
authorYury Gribov <tetra2005@gmail.com>2017-06-29 08:50:21 +0000
committerMaxim Ostapenko <chefmax@gcc.gnu.org>2017-06-29 11:50:21 +0300
commitc8fb20d8bd45a88c2f000be86936b64ba67ef8e5 (patch)
tree89facb31679bcd9da11f2eec6fb97c63236f5429 /gcc/ipa-inline.h
parent1cc6250db088a1d2cee97acf73d917cdd6f48ab1 (diff)
downloadgcc-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-inline.h')
-rw-r--r--gcc/ipa-inline.h10
1 files changed, 9 insertions, 1 deletions
diff --git a/gcc/ipa-inline.h b/gcc/ipa-inline.h
index 54c1ed9..4b9a1c2 100644
--- a/gcc/ipa-inline.h
+++ b/gcc/ipa-inline.h
@@ -28,6 +28,14 @@ struct edge_growth_cache_entry
sreal time, nonspec_time;
int size;
ipa_hints hints;
+
+ edge_growth_cache_entry()
+ : size (0), hints (0) {}
+
+ edge_growth_cache_entry(int64_t time, int64_t nonspec_time,
+ int size, ipa_hints hints)
+ : time (time), nonspec_time (nonspec_time), size (size),
+ hints (hints) {}
};
extern vec<edge_growth_cache_entry> edge_growth_cache;
@@ -116,7 +124,7 @@ reset_edge_growth_cache (struct cgraph_edge *edge)
{
if ((int)edge_growth_cache.length () > edge->uid)
{
- struct edge_growth_cache_entry zero = {0, 0, 0, 0};
+ struct edge_growth_cache_entry zero (0, 0, 0, 0);
edge_growth_cache[edge->uid] = zero;
}
}