<div dir="ltr">Hi,<div><br></div><div>Thanks for the suggestion.</div><div><br></div><div>For my target making pseudo instructions for this is a bit too much, because there are many possible combinations. I tried making a bundle in this situation, and it seems to work fine (with a little bit hacking).</div><div><br></div><div>Regards,</div><div>Dongrui</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, May 9, 2016 at 8:35 PM, Krzysztof Parzyszek via llvm-dev <span dir="ltr"><<a href="mailto:llvm-dev@lists.llvm.org" target="_blank">llvm-dev@lists.llvm.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">On 5/9/2016 1:30 PM, Dongrui She via llvm-dev wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
I am working on an out-of-tree target. I am wondering if it is possible<br>
to force the register allocator (and/or spiller) to not break certain<br>
instruction sequence.<br>
<br>
For example:<br>
<br>
phys_reg = MI1 vreg1<br>
vreg 2 = MI2 phys_reg<br>
<br>
Is there a way to tell RA/spiller not to insert COPY or spill between<br>
MI1 and MI2?<br>
</blockquote>
<br></span>
You can make a pseudo-instruction that corresponds to the combination MI1/MI2, then expand it into the actual instructions in TII::expandPostRAPseudo.<span class="HOEnZb"><font color="#888888"><br>
<br>
-Krzysztof<br>
<br>
-- <br>
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, hosted by The Linux Foundation<br>
_______________________________________________<br>
LLVM Developers mailing list<br>
<a href="mailto:llvm-dev@lists.llvm.org" target="_blank">llvm-dev@lists.llvm.org</a><br>
<a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev" rel="noreferrer" target="_blank">http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev</a><br>
</font></span></blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature">Regards,<div>Dongrui</div></div>
</div>