<html><head><meta http-equiv="Content-Type" content="text/html charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class=""><br class=""><div><blockquote type="cite" class=""><div class="">On Dec 10, 2015, at 11:21 AM, Derek Schuff <<a href="mailto:dschuff@google.com" class="">dschuff@google.com</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div dir="ltr" class=""><br class=""><br class=""><div class="gmail_quote"><div dir="ltr" class="">On Thu, Dec 10, 2015 at 11:13 AM Hal Finkel <<a href="mailto:hfinkel@anl.gov" class="">hfinkel@anl.gov</a>> wrote:<br class=""></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><br class="">
> I don’t know for the other passes, but I don’t think it makes sense<br class="">
> to teach PrologEpilogInserter to work on virtual registers, since<br class="">
> part of its job is to get rid of any virtual registers created when<br class="">
> lowering the frame.<br class="">
> I.e., that would indirectly mean that we would need to teach the<br class="">
> scavenger how to recycle virtual registers!<br class="">
><br class="">
<br class="">
I think this is exactly the part of PEI that they disable.<br class=""><br class=""></blockquote><div class=""> </div><div class=""> </div><div class="">Yes; see  <a href="http://reviews.llvm.org/D15394" class="cremed">http://reviews.llvm.org/D15394</a></div><div class="">If the target has no callee-saved registers and you disable scavenging, you're basically left with.... prolog/epilog insertion and FrameIndex elimination.</div></div></div>
</div></blockquote></div><br class=""><div class="">I can’t shake the feeling that this is a hack.</div><div class="">After RA we shouldn’t have virtual registers anymore. I would even be in favor for a change in the verifier to complain about that.</div><div class=""><br class=""></div><div class="">My concern, aside the semantic aspect, is that we will have such patches all over the place and that the coverage will be very low.</div><div class=""><br class=""></div><div class="">Q.</div></body></html>