Right you are. Fixed in r150627.<div><br></div><div>Cheers,</div><div>Lang.</div><div><br><div class="gmail_quote">On Wed, Feb 15, 2012 at 9:33 AM, Jakob Stoklund Olesen <span dir="ltr"><<a href="mailto:stoklund@2pi.dk">stoklund@2pi.dk</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"><br>
On Feb 14, 2012, at 5:23 PM, Lang Hames <<a href="mailto:lhames@gmail.com">lhames@gmail.com</a>> wrote:<br>
<br>
>   SlotIndex origIdx = indexes_->getInstructionIndex(mi);<br>
<br>
</div><div class="im">> +  MachineBasicBlock* mbb = mi->getParent();<br>
> +<br>
> +  assert(getMBBFromIndex(origIdx) == mbb &&<br>
> +         "Cannot handle moves across basic block boundaries.");<br>
<br>
</div>That assert probably doesn't do what you want. From SlotIndexes.h:<br>
<br>
    MachineBasicBlock* getMBBFromIndex(SlotIndex index) const {<br>
      if (MachineInstr *MI = getInstructionFromIndex(index))<br>
        return MI->getParent();<br>
<br>
You could use getMBBRange() instead.<br>
<span class="HOEnZb"><font color="#888888"><br>
/jakob<br>
<br>
</font></span></blockquote></div><br></div>