Hello everyone,<div>   I have been interested in compilers, especially in the optimization aspects from</div><div>quite some time now. I don't know if I have a decent background to brag about, but</div><div>all I can say is that I have tried very small things related to building a compiler [0].</div>

<div>However I admit that I am still new to a lot of things.</div><div><br></div><div>Like many others who are interested in compilers, I am interested in the Register</div><div>Allocation problem too. I have been thinking about implementing an interprocedural</div>

<div>register allocator from quite a while now. But I thought instead of trying it out on a</div><div>toy compiler, why not just get my hands dirty in the real world. I was seeing if I</div><div>could implement it on LLVM and incidentally, I noticed that the open projects page</div>

<div>lists interprocedural register allocation as one of the open projects [1].</div><div><br></div><div>However, I was reading the DeveloperPolicy page and the policy for making major</div><div>changes asks the developers to discuss the work here before proceeding. So, I am</div>

<div>writing this mail to kickoff a discussion. I would really like to contribute to LLVM and</div><div>I think this is a good place for me to start. Is there something specific like a paper</div><div>that you guys would want me to read before diving in?</div>

<div><br></div><div>I understand that register allocation itself is a tricky problem and doing an interprocedural</div><div>allocation is extremely hard. But I would like to try, at least try and fail if worst comes</div>

<div>to worst than not doing anything at all. At least by attempting to implement that, I will</div><div>have a better understanding of LLVM code base which may come in handy to contribute</div><div>to other parts of LLVM.</div>

<div><br></div><div><br></div><div>[0] <a href="https://github.com/madhusudancs/PL241-MCS-Compiler">https://github.com/madhusudancs/PL241-MCS-Compiler</a></div><div>[1] <a href="http://llvm.org/OpenProjects.html#codegen">http://llvm.org/OpenProjects.html#codegen</a></div>

<div><div><br></div>-- <br>Thanks and regards,<br>  Madhusudan.C.S<br><br>
</div>