<div dir="ltr">Hello there!<div><br></div><div>I am a Ph.D. student and I would like to contribute to LLVM+GSoC by improving the Data Dependence Analysis infrastructure. Specifically, I would like to continue the work that Preston Brigss did [1, 2] on data dependence analysis up to a point to make it reliable [3,4,5] and usable for the other parts of the LLVM [6, 7, ...].</div><div><br></div><div>I envision a work plan consisting of at least two major parts: </div><div><br></div><div>1. Drop the use of GEP's in favor of SCEV; Rely on the delinearization framework to attack multidimensional accesses; Create new test cases;<br></div><div><br></div><div>2. Implement an interface to let users execute queries on a program dependence graph (e.g., check for control/data dependence between instructions, obtain strong connected components, dependence matrices, etc.);</div><div><br></div><div>If you found that a project along these lines is of the community interest and fits as a GSoC project please let me know so that I can write a detailed proposal/work plan.</div><div><br></div><div>Overall my intent is to make the DA infrastructure "conservatively reliable". That is, make it usable so we don't need to replicate the dependence analyze infrastructure in other passes. I believe that both industry and academia would benefit from this project since many loop transformations rely on dependence analyze.</div><div><br></div><div><br></div><div>Thank you,</div><div>- John</div><div><br></div><div>1. <a href="https://sites.google.com/site/parallelizationforllvm/">https://sites.google.com/site/parallelizationforllvm/</a><br></div><div>2. <a href="http://llvm.org/docs/doxygen/html/DependenceAnalysis_8cpp_source.html">http://llvm.org/docs/doxygen/html/DependenceAnalysis_8cpp_source.html</a></div><div>3. <a href="http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20130701/179665.html">http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20130701/179665.html</a></div><div>4. <a href="http://lists.cs.uiuc.edu/pipermail/llvmdev/2012-May/049448.html">http://lists.cs.uiuc.edu/pipermail/llvmdev/2012-May/049448.html</a></div><div>5. <a href="http://lists.cs.uiuc.edu/pipermail/llvmdev/2012-November/055131.html">http://lists.cs.uiuc.edu/pipermail/llvmdev/2012-November/055131.html</a></div><div>6. <a href="http://lists.cs.uiuc.edu/pipermail/llvmdev/2015-January/080730.html">http://lists.cs.uiuc.edu/pipermail/llvmdev/2015-January/080730.html</a><br></div><div>7. <a href="http://lists.cs.uiuc.edu/pipermail/llvmdev/2015-January/080462.html">http://lists.cs.uiuc.edu/pipermail/llvmdev/2015-January/080462.html</a><br></div></div>