<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=""><div class=""><br class=""><div><blockquote type="cite" class=""><div class="">On Apr 18, 2015, at 9:23 AM, James Molloy <<a href="mailto:james@jamesmolloy.co.uk" class="">james@jamesmolloy.co.uk</a>> wrote:</div><br class="Apple-interchange-newline"><div class="">Hi Michael,<br class=""><br class="">I'm not too keen on disabling this without understanding what it's doing wrong. It seems like a large hammer. <br class=""><br class="">If this is the pass I'm thinking of, it was introduced by Hao to help remove many redundant multiplies formed by complex GEPs, and did manifest in spec, gobmk was the main culprit iirc. <br class=""><br class="">It will also affect in order cores more than out of order ones- would it be ok to understand whether the regression is a deficiency in the pass easily fixed or if it is something more fundamental?<br class=""><br class="">James<br class=""><div class="gmail_quote">On Fri, 17 Apr 2015 at 19:48, Michael Zolotukhin <<a href="mailto:mzolotukhin@apple.com" class="">mzolotukhin@apple.com</a>> wrote:<br class=""><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi,<br class="">
<br class="">
Recently I’ve found that LLVM regressed on a TwoFish test (from geekbench) when comparing relatively new compiler and a year-old one. The performance regression is pretty big - about 20%, so I decided to investigate it further and understand what change exposed that. Triaging led me to r222328 and r222331, which introduced a new ARM64-specific pass for hoisting constant offsets from addresses. It claimed some gains on SPECS, but when I turned it off, I saw no regressions there (I checked SPEC2006/ref-input set, built with PGO and LTO).<br class="">
<br class="">
Moreover, when the patch was committed, it effectively disabled two existing regression tests, which is not good I think.<br class="">
<br class="">
Is it ok to disable this pass by default and enable the tests back? We can turn it back on when we are confident that all tests pass, and there are no new regressions. Any objections?<br class="">
<br class="">
Thanks,<br class="">
Michael<br class="">
<br class="">
_______________________________________________<br class="">
llvm-commits mailing list<br class="">
<a href="mailto:llvm-commits@cs.uiuc.edu" target="_blank" class="">llvm-commits@cs.uiuc.edu</a><br class="">
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits" target="_blank" class="">http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits</a><br class="">
</blockquote></div>
</div></blockquote></div><br class=""></div></body></html>