[PATCH] D20776: [CFLAA] Teach cfl-aa to understand heap memory allocation

Daniel Berlin via llvm-commits llvm-commits at lists.llvm.org
Mon May 30 16:49:17 PDT 2016


On Mon, May 30, 2016 at 1:04 PM, Jia Chen <grievejia at gmail.com> wrote:

> grievejia added a comment.
>
> In http://reviews.llvm.org/D20776#443810, @george.burgess.iv wrote:
>
> > We treat values that don't exist in StratifiedSets conservatively
> because the IR can be modified after we run CFLAA on it.
>
>
> Hmm, this is strange. To me the one and only right thing to do after IR
> changes is to invalidate the cfl-aa pass and re-run the analysis.


It would actually be much better to incrementally update, but ...

In general it is not safe to persist alias analysis result across IR
> modifications.


Sure it is. It is safe to give conservatively correct answers,  even if you
don't incrementally recompute.


> In your example, what if, instead of adding new GEP to the IR, the
> points-to set of some existing value gets updated? The analysis result
> can't be used anyway.
>

What transformation do you think can occur that would make the points-to
set not conservatively correct, but retain the semantics of the original
program?



>
>
> http://reviews.llvm.org/D20776
>
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160530/f67ea00a/attachment.html>


More information about the llvm-commits mailing list