<html><head><meta http-equiv="Content-Type" content="text/html charset=windows-1252"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;"><br><div><div>On Mar 14, 2013, at 5:24 AM, "Silviu Baranga" <<a href="mailto:silbar01@arm.com">silbar01@arm.com</a>> wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><div style="letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px;">I'm attaching a new version of the A15 neon optimization patch<br>with the following improvements:<br><br>- we now always check if a register is virtual before<br>calling getVRegDef.<br><br>- the elideCopiesAndPHIs method previously had a chance to<br>enter in an infinite recursion since it also looks past PHI nodes.<br>I've fixed that by using a DFS instead.<br><br>- disabled VMOVS widening on A15 since it was not working well with<br>the optimization pass.<br><br>I've also tested the patch using the LNT testsuite and didn't get<br>any failures (except the ones that we already know about and were<br>already failing without the patch).<br><br>Would this be close to a state where it can get committed?<br></div></blockquote><div><br></div><div>Looks good, except you should have to run DCE again. This doesn't seem like something that needs to create dead code.</div><div><br></div><div>/jakob</div><div><br></div></div></body></html>