Eli,<br><br>  Ok thanks. I was hoping -instcombine might get rid of this obvious redundancy but it did not. It's not a large deal but inside a loop, which it is, it could be adding potentially a significant reduction in performance.<br>
<br><div class="gmail_quote">On Wed, Oct 17, 2012 at 3:32 PM, Eli Friedman <span dir="ltr"><<a href="mailto:eli.friedman@gmail.com" target="_blank">eli.friedman@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="im">On Wed, Oct 17, 2012 at 2:03 PM, Ryan Taylor <<a href="mailto:ryta1203@gmail.com">ryta1203@gmail.com</a>> wrote:<br>
</div><div class="im">> Eli,<br>
><br>
>   Actually, I stil see this issue without codegenprepare being used. I'm<br>
> also compiling with -o3.<br>
><br>
>   So I'm still not sure why I'm seeing this issue?<br>
<br>
</div>Hmm... maybe it's LSR doing it?<br>
<br>
Anyway, the general idea is that there are only a few passes which<br>
perform redundant instruction elimination: GVN, EarlyCSE, and<br>
InstCombine (IIRC).<br>
<span class="HOEnZb"><font color="#888888"><br>
-Eli<br>
</font></span></blockquote></div><br>