Richard Guenther <richard.guent...@gmail.com> skribis: > On Mon, Oct 8, 2012 at 1:42 PM, Ludovic Courtès <l...@gnu.org> wrote: >> Richard Guenther <richard.guent...@gmail.com> skribis: >> >>> On Mon, Oct 8, 2012 at 11:58 AM, Ludovic Courtès <l...@gnu.org> wrote: >>>> Richard Guenther <richard.guent...@gmail.com> skribis: >>>> >>>>> At -O0 no virtual operands are produced. TODO_rebuild_alias only computes >>>>> points-to sets which are in itself not useful. >>>>> >>>>> What do you want to achieve with TODO_rebuild_alias? >>>> >>>> I basically want to use ‘ptr_derefs_may_alias_p’ in this particular pass. >>> >>> That should work. >> >> It actually does, except that ‘ptr_derefs_may_alias_p’ returns true for >> two SSA names in cases like this: >> >> double *p, *q; >> p = malloc (123); >> q = malloc (234); >> >> (Where ‘malloc’ has the ‘malloc’ attribute.) >> >> For some reason, there’s no such false positive when using >> TODO_rebuild_alias. > > Well, "that should work" means it works non-conservatively with > TODO_rebuild_alias, of course.
Right. :-) So how can I get maximum accuracy, while avoid the assertion failure on -O0? Thanks, Ludo’.