This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [RFA] Transparent alias suport part 10: Fix base+offset alias analysis oracle WRT aliases


Hello!

> Re-testing shows ICE in Ada build.  In general the symtabnodes are produced transparently
> on demand, so I do not see big problem in predicate using get_create, but perhaps we could
> think of changing this decision and manually adding symbols into symbol table at a time
> they are added to the IL.  The concept of cgraph as on-side datastructure useful for
> inliner I started with over a decade ago is a bit aged.  Something for next stage1
>
> This is version of patch I comitted.
>
> Thanks,
> Honza
>
>
> PR ipa/61886
> PR middle-end/25140
> * tree-ssa-alias.c (ptr_deref_may_alias_decl_p): Use compare_base_decls
> (nonoverlapping_component_refs_of_decl_p): Update sanity check.
> (decl_refs_may_alias_p): Use compare_base_decls.
> * alias.c: Include cgraph.h
> (rtx_equal_for_memref_p): Use rtx_equal_for_memref_p.
> (compare_base_decls): New function.
> (base_alias_check): Likewise.
> (memrefs_conflict_p): Likewise.
> (nonoverlapping_memrefs_p): Likewise.
> * alias.h (compare_base_decls): Declare.
>
> * gcc.c-torture/execute/alias-2.c: New testcase.

This patch introduced pr68999 [1] on alphaev68-linux-gnu. As shown in
the PR, patched gcc doesn't consider AND addresses as alias of their
neighbourhood.

[1] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68999

Uros.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]