Excellent, I've implemented my own PBQP register allocator and solved the issue very painlessly.<div><br></div><div>Now onto those more interesting problems!<br><div><br></div><div>Thanks for your suggestion,</div><div>
Fraser<br><br><div class="gmail_quote">On Fri, Oct 5, 2012 at 9:26 AM, Gergö Barany <span dir="ltr"><<a href="mailto:gergo@complang.tuwien.ac.at" target="_blank">gergo@complang.tuwien.ac.at</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">On Thu, Oct 04, 2012 at 16:20:53 +0100, Fraser Cormack wrote:<br>
> This architecture has two single-ported register files. Each instruction<br>
> can only read one operand from each register file, but can write to either.<br>
<br>
</div>Even if you can't express this in TableGen, you should be able to use the<br>
PBQP register allocator with a custom PBQP problem builder. Other register<br>
allocators wouldn't be able to handle your architecture, but this would<br>
allow you to move on to (presumably) more interesting problems ;-)<br>
<span class="HOEnZb"><font color="#888888"><br>
--<br>
Gergö Barany, research assistant                 <a href="mailto:gergo@complang.tuwien.ac.at">gergo@complang.tuwien.ac.at</a><br>
Institute of Computer Languages      <a href="http://www.complang.tuwien.ac.at/gergo/" target="_blank">http://www.complang.tuwien.ac.at/gergo/</a><br>
Vienna University of Technology                       Tel: <a href="tel:%2B43-1-58801-58522" value="+4315880158522">+43-1-58801-58522</a><br>
Argentinierstrasse 8/E185, 1040 Wien, Austria         Fax: <a href="tel:%2B43-1-58801-18598" value="+4315880118598">+43-1-58801-18598</a><br>
</font></span></blockquote></div><br></div></div>