<html><head><meta http-equiv="Content-Type" content="text/html charset=us-ascii"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">Hi<div class=""><br class=""></div><div class="">attached is a new iteration of my subregister liveness tracking patches. I already submitted these for review last year:</div><div class=""><span class="Apple-tab-span" style="white-space:pre">   </span><a href="http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20131007/190279.html" class="">http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20131007/190279.html</a></div><div class=""><span class="Apple-tab-span" style="white-space:pre">  </span><a href="http://lists.cs.uiuc.edu/pipermail/llvmdev/2013-October/066207.html" class="">http://lists.cs.uiuc.edu/pipermail/llvmdev/2013-October/066207.html</a></div><div class=""><br class=""></div><div class="">I did not want to commit them last year because I wasn't able to completely fix the testsuite failures found in the X86/ARM backends. However as I started working on this topic again, I do not want to hold the patches back any longer and prepare people for what is coming.</div><div class=""><br class=""></div><div class="">The attached patchset has no fundamental changes to the patches proposed last year:</div><div class="">* Rebased/Adapted to llvm trunk</div><div class="">* Added and improved comments for the RegisterCoalescer changes</div><div class="">* Fix several edges cases in the RegisterCoalescer related to LiveIntervals which are partially undefined. With subregister liveness we must sometimes keep IMPLICIT_DEF instructions to not break the verifier, there was also a case where we also have to recompute the main liverange if any of the subregister liverange needed to be recomputed.</div><div class="">* Various comment improvements/cleanups</div><div class=""><br class=""></div><div class="">If you enable the subregister liveness tracking for X86, ARM, R600 the teststuite state is:</div><div class="">* X86 shows no regression</div><div class="">* ARM is down to 2 regressions after a set of followup patches I will present in my next mail</div><div class="">* R600 shows 1 regression</div><div class="">with subregister liveness tracking disabled no changes are visible.</div><div class=""><br class=""></div><div class="">Greetings</div><div class=""><span class="Apple-tab-span" style="white-space:pre">    </span>Matthias</div><div class=""></div></body></html>