<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 Jul 16, 2013, at 9:38 PM, Andrew Trick <<a href="mailto:atrick@apple.com">atrick@apple.com</a>> wrote:</div><blockquote type="cite"><div style="font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;">IR Canonicalization Pipeline:<br><br>Function Passes {<br> SimplifyCFG<br> SROA-1<br> EarlyCSE<br>}<br>Call-Graph SCC Passes {<br> Inline<br> Function Passes {<br> EarlyCSE<br> SimplifyCFG<br> InstCombine<br> Early Loop Opts {<br> LoopSimplify<br> Rotate (when obvious)<br> Full-Unroll (when obvious)<br> }<br> SROA-2<br> InstCombine<br> GVN<br></div></blockquote></div>...<div><br></div><div>I should explain: SROA-1 and SROA-2 are not necessarily different versions of SROA (though they could be in the future), I just wanted to be clear that it is run twice.</div><div><br></div><div>-Andy</div></body></html>