<div dir="ltr">I'm still digesting the proposal in its entirety, but one point I want to call out here:<br><br><div class="gmail_quote"><div dir="ltr">On Tue, Oct 18, 2016 at 1:39 PM Friedman, Eli via llvm-dev <<a href="mailto:llvm-dev@lists.llvm.org">llvm-dev@lists.llvm.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Instcombine currently transforms "memcpy(dst, src, 4)" to "load i32 src;<br class="gmail_msg">
store i32 dst".  I guess that's illegal under this model?  How about the<br class="gmail_msg">
related transform "memcpy(dst, src, 4)" to "load <4 x i8> src; store <4<br class="gmail_msg">
x i8> dst"?  (SROA also performs similar transforms.)<br class="gmail_msg"></blockquote><div><br></div><div>I think it is really important that memcpy and load/store pair be equivalent. If this is in fact true about the proposal, I would want to really dig into why and whether anything could be done to make them equivalent.</div></div></div>