https://github.com/ziqingluo-90 commented:

>The closure runs after the pointer-flow DFS has converged and does not feed
its own output back in, so a flow edge out of a newly discovered EPL is still
missed. FamilyClosureDoesNotRerunDFS pins that gap.

I think the alternative is to weave the override-relation into the graph. Your 
call that it is level-preserving is correct. Hence, the pointer-level expansion 
I did in the DFS blocks you from doing so. The good news is that the blocker 
will be gone (see #218209) and the DFS will be simple again.

After #218209, an edge `p -> q` in the graph simply means that if the EPL`p` is 
unsafe, so is `q`. You could encode the override-relation 'x and y are in the 
same family' into two graph edges `x -> y` and `y -> x`.




https://github.com/llvm/llvm-project/pull/213319
_______________________________________________
llvm-branch-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

Reply via email to