diff options
-rw-r--r-- | gcc/ChangeLog | 8 | ||||
-rw-r--r-- | gcc/tree-ssa-alias.c | 7 |
2 files changed, 14 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index ede6eea..e40f40e 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,11 @@ +2011-03-03 Richard Guenther <rguenther@suse.de> + + PR middle-end/47283 + * tree-ssa-alias.c (ptr_deref_may_alias_decl_p): Make code + match comment. + (refs_may_alias_p_1): For release branches return true if + we are confused by our input. + 2011-03-03 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> * config/s390/s390.c (s390_function_value): Rename to ... diff --git a/gcc/tree-ssa-alias.c b/gcc/tree-ssa-alias.c index 68321d2..bd8953b 100644 --- a/gcc/tree-ssa-alias.c +++ b/gcc/tree-ssa-alias.c @@ -178,7 +178,7 @@ ptr_deref_may_alias_decl_p (tree ptr, tree decl) || (TREE_CODE (decl) != VAR_DECL && TREE_CODE (decl) != PARM_DECL && TREE_CODE (decl) != RESULT_DECL)) - return false; + return true; /* Disregard pointer offsetting. */ if (TREE_CODE (ptr) == POINTER_PLUS_EXPR) @@ -1080,7 +1080,12 @@ refs_may_alias_p_1 (ao_ref *ref1, ao_ref *ref2, bool tbaa_p) ao_ref_alias_set (ref2), -1, tbaa_p); + /* We really do not want to end up here, but returning true is safe. */ +#ifdef ENABLE_CHECKING gcc_unreachable (); +#else + return true; +#endif } bool |