<div dir="ltr"><p style="color:rgb(14,16,26);margin-top:0pt;margin-bottom:0pt"><span style="margin-top:0pt;margin-bottom:0pt">Hello LLVM devs!</span></p><p style="color:rgb(14,16,26);margin-top:0pt;margin-bottom:0pt"><br></p><p style="color:rgb(14,16,26);margin-top:0pt;margin-bottom:0pt"><span style="margin-top:0pt;margin-bottom:0pt">This summer, as a participant of GSoC, I fixed some miscompilation problems with freeze instruction and improved existing optimization freeze-aware.</span></p><p style="color:rgb(14,16,26);margin-top:0pt;margin-bottom:0pt"><span style="margin-top:0pt;margin-bottom:0pt">Freeze reduces LLVM's miscompilation issues, but it can cause a performance regression.</span></p><p style="color:rgb(14,16,26);margin-top:0pt;margin-bottom:0pt"><span style="margin-top:0pt;margin-bottom:0pt">Because both correctness and performance are important, I tried to write patches that satisfy both.</span></p><p style="color:rgb(14,16,26);margin-top:0pt;margin-bottom:0pt"><span style="margin-top:0pt;margin-bottom:0pt">You can find more details about what I did during this summer in my final report. (</span><a target="_blank" href="https://github.com/hyeongyukim/GSoC2021/blob/main/report.md" class="editor-rtfLink" style="margin-top:0pt;margin-bottom:0pt;color:rgb(74,110,224)"><span style="margin-top:0pt;margin-bottom:0pt">https://github.com/hyeongyukim/GSoC2021/blob/main/report.md</span></a><span style="margin-top:0pt;margin-bottom:0pt">)</span></p><p style="color:rgb(14,16,26);margin-top:0pt;margin-bottom:0pt"><span style="margin-top:0pt;margin-bottom:0pt">Feel free to ask me anything about my project!</span></p><p style="color:rgb(14,16,26);margin-top:0pt;margin-bottom:0pt"><br></p><p style="color:rgb(14,16,26);margin-top:0pt;margin-bottom:0pt"><span style="margin-top:0pt;margin-bottom:0pt">And... As I wrote in the future work section, my project is not completely finished yet.</span></p><p style="color:rgb(14,16,26);margin-top:0pt;margin-bottom:0pt"><span style="margin-top:0pt;margin-bottom:0pt">One of the initial goals was to fix the LoopUnswitch's miscompilation issue, but it is not fixed due to performance regression.</span></p><p style="color:rgb(14,16,26);margin-top:0pt;margin-bottom:0pt"><span style="margin-top:0pt;margin-bottom:0pt">Therefore, I will keep going to send the patches.</span></p><p style="color:rgb(14,16,26);margin-top:0pt;margin-bottom:0pt"><span style="margin-top:0pt;margin-bottom:0pt">And a few days ago, I sent a patch to turn on noundef analysis to reduce the performance regression, so I'd appreciate it if you could check it.</span></p><p style="color:rgb(14,16,26);margin-top:0pt;margin-bottom:0pt"><br></p><p style="color:rgb(14,16,26);margin-top:0pt;margin-bottom:0pt"><span style="margin-top:0pt;margin-bottom:0pt">Best regards,</span></p><p style="color:rgb(14,16,26);margin-top:0pt;margin-bottom:0pt"><span style="margin-top:0pt;margin-bottom:0pt">Hyeongyu</span></p></div>