[LLVMdev] alias set collapse and LICM

Sanjoy Das sanjoy at playingwithpointers.com
Mon Apr 27 15:44:18 PDT 2015


> Can you explain why the alias sets are collapsed into one here?

If I'm reading the code correctly, it is because the readonly call
aliases all of %a, %b and %c.  Since two pointers can be in two
different alias sets only if they do not alias, %a has to be in the
same alias set as the read only call and so does %b and %c.
Therefore, all of them have to be in the same alias set.

>  Can that collapsing simply be avoided for read-only calls without creating a second alias set?

I have not yet come up with a simple scheme to solve that problem
within AliasSetTracker.  Obviously, that does not mean that there
isn't one.

-- Sanjoy



More information about the llvm-dev mailing list