<div dir="ltr">I think I would prefer to implement this as a standalone pass until we have some clear phase ordering need for it in a utility like instcombine.<div><br></div><div>My suggestion: a pass that runs right after GVN.</div>
<div><br></div><div>I would also use the domtree rather than the basic block structure.</div><div><br></div><div>I think it really needs to handle arbitrary sizes, and both loads and stores. You don't want to scan multiple times for this.</div>
<div><br></div><div>But after thinking all of this, it strikes me that the work done here is *very* similar to the work done by the SLP vectorizer for loads and stores. I think there is at least the possibility that this should be done by the SLP vectorizer, or that some of the logic should be shared. I'd appreciate Arnold's, Raul's, Nadav's, and Hal's thoughts on this idea. </div>
</div><div class="gmail_extra"><br><br><div class="gmail_quote">On Thu, May 1, 2014 at 3:44 PM, Michael Spencer <span dir="ltr"><<a href="mailto:bigcheesegs@gmail.com" target="_blank">bigcheesegs@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Adding llvm-commits to CC.<br>
<br>
<a href="http://reviews.llvm.org/D3580" target="_blank">http://reviews.llvm.org/D3580</a><br>
<br>
<br>
<br>
_______________________________________________<br>
llvm-commits mailing list<br>
<a href="mailto:llvm-commits@cs.uiuc.edu">llvm-commits@cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits</a><br>
</blockquote></div><br></div>