<html><head><base href="x-msg://614/"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><br><div><div>On Apr 27, 2012, at 7:49 AM, Jonas Paulsson wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><span class="Apple-style-span" style="border-collapse: separate; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; "><div lang="EN-US" link="blue" vlink="purple"><div class="Section1" style="page: Section1; "><div style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman'; "><font size="2" face="Arial"><span lang="SV" style="font-size: 10pt; font-family: Arial; ">Hi,<o:p></o:p></span></font></div><div style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman'; "><font size="2" face="Arial"><span lang="SV" style="font-size: 10pt; font-family: Arial; "><o:p> </o:p></span></font></div><div style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman'; "><font size="2" face="Arial"><span style="font-size: 10pt; font-family: Arial; ">I wonder when the preRASched pass is planned to be available?<o:p></o:p></span></font></div><div style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman'; "><font size="2" face="Arial"><span style="font-size: 10pt; font-family: Arial; "><o:p> </o:p></span></font></div><div style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0.0001pt; font-size: 12pt; font-family: 'Times New Roman'; "><font size="2" face="Arial"><span style="font-size: 10pt; font-family: Arial; ">I wonder how one would best try to implement a pass in between RegCoalescer and RA. After RegCoalescer, the LiveVariables information seems broken (there are no Kills anywhere), and LiveVariables can’t be rerun after SSA form is left. So, how could one rebuild LiveIntevals? For register allocation purposes – what would be the best way to rebuild LiveIntervals after a rescheduling that demands a rerun of SlotIndexes? Is this a simpler task now that RegCoalescer is not in need of any info anymore? Could perhaps LiveIntervals be built without LiveVariables then?<o:p></o:p></span></font></div><div style="margin-top: 0cm; margin-right: 0cm; margin-left: 0cm; margin-bottom: 0.0001pt; "><font class="Apple-style-span" face="Arial"><span class="Apple-style-span" style="font-size: 13px;"><br></span></font></div></div></div></span></blockquote><br></div><div>Hi Jonas,</div><div><br></div><div>We do plan to remove LiveIntervalAnalysis' dependence on LiveVariables. Much of the logic exists with regalloc, but there hasn't been a pressing need to factor it into a standalone, global pass.</div><div><br></div><div>If simply want to reschedule, then you can plug into, or follow the example of the MachineScheduler and call "handleMove" to update LiveIntervals.</div><div><br></div><div>Eventually, we'd like to be able to update LiveIntervals incrementally after modifying some well defined fragment of the instruction stream, but that functionality doesn't exist yet.</div><div><br></div><div>You can expect to see a decent amount of progress in these areas over the next few months.</div><div><br></div><div>-Andy</div></body></html>