<html><head><meta http-equiv="Content-Type" content="text/html charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">Hi Eddie,<div class=""><br class=""><div><blockquote type="cite" class=""><div class="">On Sep 19, 2016, at 6:10 PM, Eddie Santos via swift-dev &lt;<a href="mailto:swift-dev@swift.org" class="">swift-dev@swift.org</a>&gt; wrote:</div><br class="Apple-interchange-newline"><div class=""><div dir="ltr" class="">Hi all,<div class=""><br class=""></div><div class="">Are there any moderately do-able optimizations that can be done in the Swift compiler that have not been done yet?</div><div class=""><br class=""></div><div class="">I am a masters student at the University of Alberta in Dr. J. Nelson Amaral's compiler optimization course, and I am searching for a project that can be reasonably completed in two months' time. Contributing to Swift's compiler seems like a great choice! </div></div></div></blockquote><div><br class=""></div><div>Cool! Welcome!</div><br class=""><blockquote type="cite" class=""><div class=""><div dir="ltr" class=""><div class="">I am also open to making improvements to LLVM in general, though the point of this project is to get my feet wet in static analysis -- I'm not an expert yet.</div><div class=""><div class=""><br class="gmail-Apple-interchange-newline">I'm interested in anything character encodings, strings and unicode, but that limits my options in terms of *compiler optimizations*. I can also look into profile-guided optimizations in LLVM [Profile], but I wanna know who's got dibs before I start off on my own.</div><div class=""><br class=""></div></div></div></div></blockquote><div><br class=""></div><div>There are two things which I have in mind:</div><div><br class=""></div><div>1) You could look at optimizing character literals. Try to compile the following code and you’ll see what I mean.</div><div><br class=""></div><div><div>func foo() -&gt; Character {</div><div>&nbsp; return Character("x")</div><div>}</div><div><br class=""></div></div><div>2) Vedant has started working on PGO for swift. When the basic infrastructure is in place you could work on using PGO data in various SIL optimizations.</div><div><br class=""></div><div><br class=""></div><div>Erik</div><div><br class=""></div><div><br class=""></div><br class=""><blockquote type="cite" class=""><div class=""><div dir="ltr" class=""><div class=""><div class="">Your input is welcome.</div><div class=""><br class=""></div><div class="">[Profile]: <a href="http://llvm.org/OpenProjects.html#profileguided" class="">http://llvm.org/OpenProjects.html#profileguided</a></div></div><div class=""><br class=""></div><div class="">Regards,</div><div class="">Eddie</div><div class=""><div class="gmail_signature"><div dir="ltr" class=""><div dir="ltr" class=""><div dir="ltr" class="">--<div class="">Eddie Antonio Santos</div><div class="">M.Sc. Student and Teaching Assistant</div><div class="">Department of Computing Science</div><div class="">University of Alberta</div><div class=""><a href="mailto:easantos@ualberta.ca" target="_blank" class="">easantos@ualberta.ca</a></div><div class=""><a href="http://eddieantonio.ca/" target="_blank" class="">http://eddieantonio.ca/</a></div></div></div></div></div></div>
</div>
_______________________________________________<br class="">swift-dev mailing list<br class=""><a href="mailto:swift-dev@swift.org" class="">swift-dev@swift.org</a><br class="">https://lists.swift.org/mailman/listinfo/swift-dev<br class=""></div></blockquote></div><br class=""></div></body></html>