diff options
Diffstat (limited to 'gcc/tree-ssa-sink.c')
-rw-r--r-- | gcc/tree-ssa-sink.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/gcc/tree-ssa-sink.c b/gcc/tree-ssa-sink.c index ac31781e198..9deec26b11d 100644 --- a/gcc/tree-ssa-sink.c +++ b/gcc/tree-ssa-sink.c @@ -190,8 +190,11 @@ is_hidden_global_store (gimple stmt) return true; } - else if (INDIRECT_REF_P (lhs)) + else if (INDIRECT_REF_P (lhs) + || TREE_CODE (lhs) == MEM_REF) return ptr_deref_may_alias_global_p (TREE_OPERAND (lhs, 0)); + else if (CONSTANT_CLASS_P (lhs)) + return true; else gcc_unreachable (); } |