<div dir="ltr">Sorry to butt in .. but curious ...<div><br></div><div>"a RET instruction which gets expanded into a write to a register and a jump/branch"</div><div><br></div><div>If you do that after Register Allocation then where do you get the temporary register from? Not knowing the architecture in question at all, maybe there's a dedicated one, in which case fine. But if not?</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Nov 19, 2015 at 6:30 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 11/18/2015 6:02 PM, Rail Shafigulin wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
I guess I should be more clear by what I mean "expanded". When I say<br>
"expanded" I mean the final instruction assembly representation, i.e.<br>
all instructions were lowered to their assembly level. Will you<br>
recommendation still hold or I should be considering another approach?<br>
</blockquote>
<br></span>
For dealing with cases like the RET instruction you described earlier---yes, the post-RA pseudo instruction expansion is the right place to do it.<div class="HOEnZb"><div class="h5"><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>
</div></div></blockquote></div><br></div>