<div dir="ltr"><br><br><div class="gmail_quote"><div dir="ltr">On Fri, Mar 17, 2017 at 9:57 AM Andrew Ng via Phabricator <<a href="mailto:reviews@reviews.llvm.org">reviews@reviews.llvm.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">andrewng added a comment.<br class="gmail_msg">
<br class="gmail_msg">
Thanks for the review.<br class="gmail_msg">
<br class="gmail_msg">
<br class="gmail_msg">
<br class="gmail_msg">
================<br class="gmail_msg">
Comment at: lib/Target/X86/X86OptimizeLEAs.cpp:567-568<br class="gmail_msg">
+        unsigned LastVReg = Last.getOperand(0).getReg();<br class="gmail_msg">
+        for (auto UI = MRI->use_nodbg_begin(LastVReg),<br class="gmail_msg">
+                  UE = MRI->use_nodbg_end();<br class="gmail_msg">
              UI != UE;) {<br class="gmail_msg">
----------------<br class="gmail_msg">
dblaikie wrote:<br class="gmail_msg">
> I think you can use:<br class="gmail_msg">
><br class="gmail_msg">
>   for (MachineOperand &MO : MRI->use_nodbg_operands(LastVReg))<br class="gmail_msg">
><br class="gmail_msg">
> here, probably?<br class="gmail_msg">
Yes, at first I thought so too, but inside the loop there is:<br class="gmail_msg">
```<br class="gmail_msg">
MO.setReg(First.getOperand(0).getReg());<br class="gmail_msg">
```<br class="gmail_msg">
which could affect the use iterator. So the original code which increments the use iterator before any changes is safer.<br class="gmail_msg"></blockquote><div><br>Not quite sure how one could be safer than the other - they're the same code, aren't they? (range-for and the manually written for loop look like they have identical semantics)<br> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br class="gmail_msg">
<br class="gmail_msg">
<a href="https://reviews.llvm.org/D30835" rel="noreferrer" class="gmail_msg" target="_blank">https://reviews.llvm.org/D30835</a><br class="gmail_msg">
<br class="gmail_msg">
<br class="gmail_msg">
<br class="gmail_msg">
</blockquote></div></div>