<div dir="ltr"><div style="font-family:arial,sans-serif;font-size:13px">Hello LLVMDev,</div><div style="font-family:arial,sans-serif;font-size:13px"><br></div><div style="font-family:arial,sans-serif;font-size:13px">I'm George, an intern for Google who will be working on LLVM. Currently, I'm starting to implement a set-based Alias Analysis algorithm for LLVM, which looks like it may be more accurate than Steensgard's, and can be constructed in approximately nlog(n) time and linear space (n = number of memory locations; queries happen in constant time). It will most likely be implemented as a function pass, and if all goes well, I hope to have it committed.</div>
<div style="font-family:arial,sans-serif;font-size:13px"><br></div><div style="font-family:arial,sans-serif;font-size:13px">If you would like more information about the algorithm, see link [1] below. If you're interested in rationale behind algorithm selection, a few of the implementation details, and a summary of how it works, see [2] below. As an aside, chandlerc has warned me that LLVM isn't quite perfect about notifying all function passes that transforms have been applied to a function. This is known, and will be taken into account as best as possible. :)</div>
<div style="font-family:arial,sans-serif;font-size:13px"><br></div><div style="font-family:arial,sans-serif;font-size:13px">If you have any questions, suggestions, comments, etc. about this, then feel free to ping me,</div>
<div style="font-family:arial,sans-serif;font-size:13px">George</div><div><br></div><div><span style="font-family:arial,sans-serif;font-size:13px">[1] - </span><a href="http://www.cse.cuhk.edu.hk/lyu/_media/paper/pldi2013.pdf?id=home&cache=cache" target="_blank" style="font-family:arial,sans-serif;font-size:13px">http://www.cse.cuhk.edu.hk/lyu/_media/paper/pldi2013.pdf?id=home&cache=cache</a><br>
</div><div>[2] - <a href="https://docs.google.com/a/google.com/document/d/1lgKGuVoMVXBnqqT6fGNtgvx4P0I8fJbMPqeuGL9GoNU/pub">https://docs.google.com/a/google.com/document/d/1lgKGuVoMVXBnqqT6fGNtgvx4P0I8fJbMPqeuGL9GoNU/pub </a></div>
</div>