diff options
Diffstat (limited to 'gcc')
| -rw-r--r-- | gcc/ChangeLog | 5 | ||||
| -rw-r--r-- | gcc/cgraph.c | 4 |
2 files changed, 7 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index ebec042..591ca4b 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,10 @@ 2006-04-26 Jakub Jelinek <jakub@redhat.com> + PR c/26171 + * cgraph.c (cgraph_varpool_finalize_decl): Don't call + cgraph_varpool_assemble_pending_decls if -fopenmp, unless + cgraph_global_info_ready. + PR middle-end/26913 * tree-cfg.c (find_outermost_region_in_block): Handle RESX_EXPR. diff --git a/gcc/cgraph.c b/gcc/cgraph.c index 6a8ac08..301de31 100644 --- a/gcc/cgraph.c +++ b/gcc/cgraph.c @@ -886,7 +886,7 @@ cgraph_varpool_finalize_decl (tree decl) if this function has already run. */ if (node->finalized) { - if (cgraph_global_info_ready || !flag_unit_at_a_time) + if (cgraph_global_info_ready || (!flag_unit_at_a_time && !flag_openmp)) cgraph_varpool_assemble_pending_decls (); return; } @@ -901,7 +901,7 @@ cgraph_varpool_finalize_decl (tree decl) there. */ else if (TREE_PUBLIC (decl) && !DECL_COMDAT (decl) && !DECL_EXTERNAL (decl)) cgraph_varpool_mark_needed_node (node); - if (cgraph_global_info_ready || !flag_unit_at_a_time) + if (cgraph_global_info_ready || (!flag_unit_at_a_time && !flag_openmp)) cgraph_varpool_assemble_pending_decls (); } |
