<div dir="ltr"><div dir="ltr"><div><div><span style="color:rgb(0,0,0)">Hello everyone,<br></span></div><div><span style="color:rgb(0,0,0)"><br>I am 
Aradhya Biswas, currently in senior year of my undergraduate studies in 
the field of Computer Science and Engineering at Indian Institute of 
Technology Hyderabad (IITH). <br><br></span></div><span style="color:rgb(0,0,0)">I was first introduced to LLVM about a year ago in the course "Principles of Compiler Design" (<a href="http://www.iith.ac.in/%7Eramakrishna/Compilers-Aug14/" target="_blank">http://www.iith.ac.in/~ramakrishna/Compilers-Aug14/</a>) at IITH. Since the introduction, I have used  LLVM for a multitude of my course assignments and mini-projects. </span><div><span style="color:rgb(0,0,0)"><br></span></div><span style="color:rgb(0,0,0)">While
 studying the compiler optimization theory, LLVM always served as best 
tool for experimenting. But recently when I came across the concept of 
Partial Redundancy Elimination, I could not find any exclusive 
implementation of it in the present LLVM framework. On digging a little 
deeper, I could find that the implementation of GVN subsumes the load 
PRE and a specific case (namely, the diamond case) of scalar PRE in the 
present LLVM framework. <br><br><span>I had two question in this regards :<br></span></span></div><ol><li><span style="color:rgb(0,0,0)">Where can I find the theory related to load PRE implemented <a href="http://llvm.org/docs/doxygen/html/GVN_8cpp_source.html" target="_blank">here</a> (line no. 01517) ?</span></li><li><span style="color:rgb(0,0,0)">Are there any other implementation of PRE in the present LLVM framework ? </span></li></ol><div><span style="color:rgb(0,0,0)">Thanks,</span></div><span style="color:rgb(0,0,0)">Aradhya Biswas<br>Final Year Undergraduate Student,<br>Department of Computer Science and Engineering,<br>Indian Institute of Technology Hyderabad</span></div></div>