aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.9/gcc/gimple-fold.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc-4.9/gcc/gimple-fold.c')
-rw-r--r--gcc-4.9/gcc/gimple-fold.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/gcc-4.9/gcc/gimple-fold.c b/gcc-4.9/gcc/gimple-fold.c
index 6402cce2f..57ab8584c 100644
--- a/gcc-4.9/gcc/gimple-fold.c
+++ b/gcc-4.9/gcc/gimple-fold.c
@@ -105,7 +105,9 @@ can_refer_decl_in_current_unit_p (tree decl, tree from_decl)
external var. */
if (!from_decl
|| TREE_CODE (from_decl) != VAR_DECL
- || !DECL_EXTERNAL (from_decl)
+ || (!DECL_EXTERNAL (from_decl)
+ && (vnode = varpool_get_node (from_decl)) != NULL
+ && vnode->definition)
|| (flag_ltrans
&& symtab_get_node (from_decl)->in_other_partition))
return true;