aboutsummaryrefslogtreecommitdiff
path: root/gcc/cgraphunit.c
diff options
context:
space:
mode:
authorJan Hubicka <jh@suse.cz>2010-09-18 23:25:29 +0200
committerJan Hubicka <hubicka@gcc.gnu.org>2010-09-18 21:25:29 +0000
commit1389294cc3eb1e74f9c9418487a451f9f8660b52 (patch)
treee751694fc67828e19064bc55f35a8e2b55757c5e /gcc/cgraphunit.c
parent6eb208a69cd0b7d93c3f22f4298062ccdc2f7c83 (diff)
downloadgcc-1389294cc3eb1e74f9c9418487a451f9f8660b52.zip
gcc-1389294cc3eb1e74f9c9418487a451f9f8660b52.tar.gz
gcc-1389294cc3eb1e74f9c9418487a451f9f8660b52.tar.bz2
re PR tree-optimization/45605 (Missed devirtualization)
PR tree-optimization/45605 * cgraphunit.c (cgraph_analyze_functions): Allocate bitmap obstack. * gimple-fold.c (static_object_in_other_unit_p): New function. (canonicalize_constructor_val): Use it. (get_symbol_constant_value): Be reaqdy for canonicalize_constructor_val returning NULL. (gimple_fold_obj_type_ref_known_binfo): Use static_object_in_other_unit_p. From-SVN: r164402
Diffstat (limited to 'gcc/cgraphunit.c')
-rw-r--r--gcc/cgraphunit.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/cgraphunit.c b/gcc/cgraphunit.c
index 024a3bc..f296fe0 100644
--- a/gcc/cgraphunit.c
+++ b/gcc/cgraphunit.c
@@ -861,6 +861,7 @@ cgraph_analyze_functions (void)
static struct varpool_node *first_analyzed_var;
struct cgraph_node *node, *next;
+ bitmap_obstack_initialize (NULL);
process_function_and_variable_attributes (first_processed,
first_analyzed_var);
first_processed = cgraph_nodes;
@@ -971,6 +972,7 @@ cgraph_analyze_functions (void)
fprintf (cgraph_dump_file, "\n\nReclaimed ");
dump_cgraph (cgraph_dump_file);
}
+ bitmap_obstack_release (NULL);
first_analyzed = cgraph_nodes;
ggc_collect ();
}