The maximum physical registers on all targets supported today is less than 300. Do we really expect it to grow by a factor of 200?<br><br><div class="gmail_quote">On Mon, Mar 5, 2012 at 10:26 AM, Jakob Stoklund Olesen <span dir="ltr"><<a href="mailto:stoklund@2pi.dk">stoklund@2pi.dk</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="HOEnZb"><div class="h5"><br>
On Mar 5, 2012, at 12:33 AM, Craig Topper wrote:<br>
<br>
> Author: ctopper<br>
> Date: Mon Mar  5 02:33:33 2012<br>
> New Revision: 152019<br>
><br>
> URL: <a href="http://llvm.org/viewvc/llvm-project?rev=152019&view=rev" target="_blank">http://llvm.org/viewvc/llvm-project?rev=152019&view=rev</a><br>
> Log:<br>
> Shrink and reorder fields in MCRegisterClass to reduce size of static data.<br>
><br>
> Modified:<br>
>    llvm/trunk/include/llvm/MC/MCRegisterInfo.h<br>
>    llvm/trunk/utils/TableGen/RegisterInfoEmitter.cpp<br>
><br>
> Modified: llvm/trunk/include/llvm/MC/MCRegisterInfo.h<br>
> URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/MC/MCRegisterInfo.h?rev=152019&r1=152018&r2=152019&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/MC/MCRegisterInfo.h?rev=152019&r1=152018&r2=152019&view=diff</a><br>

> ==============================================================================<br>
> --- llvm/trunk/include/llvm/MC/MCRegisterInfo.h (original)<br>
> +++ llvm/trunk/include/llvm/MC/MCRegisterInfo.h Mon Mar  5 02:33:33 2012<br>
> @@ -28,15 +28,15 @@<br>
>   typedef const uint16_t* iterator;<br>
>   typedef const uint16_t* const_iterator;<br>
><br>
> -  const unsigned ID;<br>
>   const char *Name;<br>
> -  const unsigned RegSize, Alignment; // Size & Alignment of register in bytes<br>
> -  const int CopyCost;<br>
> -  const bool Allocatable;<br>
>   const iterator RegsBegin;<br>
>   const uint8_t *const RegSet;<br>
> -  const unsigned RegsSize;<br>
> -  const unsigned RegSetSize;<br>
> +  const uint8_t RegsSize;<br>
> +  const uint8_t RegSetSize;<br>
> +  const uint8_t ID;<br>
> +  const uint8_t RegSize, Alignment; // Size & Alignment of register in bytes<br>
> +  const int8_t CopyCost;<br>
> +  const bool Allocatable;<br>
<br>
</div></div>Sorry, Craig. This is going way too far. Please revert this.<br>
<br>
Do not limit the number of physregs below 64k.<br>
<span class="HOEnZb"><font color="#888888"><br>
/jakob<br>
<br>
</font></span></blockquote></div><br><br clear="all"><br>-- <br>~Craig<br>