FW: [PATCH] [MIPS] microMIPS gcc support
Moore, Catherine
Catherine_Moore@mentor.com
Wed Mar 13 20:30:00 GMT 2013
> -----Original Message-----
> From: Richard Sandiford [mailto:rdsandiford@googlemail.com]
> Sent: Tuesday, March 05, 2013 4:06 PM
> To: Moore, Catherine
> Cc: gcc-patches@gcc.gnu.org; Rozycki, Maciej
> Subject: Re: FW: [PATCH] [MIPS] microMIPS gcc support:
>
> We have a few internal-only undocumented constraints that aren't used
> much, so we should be able to move them to the "Y" space instead. The
> patch below does this for "T" and "U". Then we could use "U" for new,
> longer constraints.
>
>
> U<type><factor><bits>
>
> where <type> is:
>
> s for signed
> u for unsigned
> d for decremented unsigned (-1 ... N)
> i for incremented unsigned (1 ... N)
>
> where <factor> is:
>
> b for "byte" (*1)
> h for "halfwords" (*2)
> w for "words" (*4)
> d for "doublewords" (*8) -- useful for 64-bit MIPS16 but probably not
> needed for 32-bit microMIPS
>
> and where <bits> is the number of bits. <type> and <factor> could be
> replaced with an ad-hoc two-letter combination for special cases.
> E.g. "Uas9" ("add stack") for ADDISUP.
>
> Just a suggestion though. I'm not saying these names are totally intuitive or
> anything, but they should at least be better than arbitrary letters.
>
> Also, <bits> could be two digits if necessary, or we could just use hex digits.
I extended this proposal a bit by:
1. Adding a <type> e for encoded. The constraint will start with Ue, when the operand is an encoded value.
2. I decided to use two digits for <bits>.
3. The ad-hoc combination is used for anything else.
Patch is attached. WDYT?
I'm still testing, but results so far look really good.
Catherine
-------------- next part --------------
A non-text attachment was scrubbed...
Name: short-delay.cl
Type: application/octet-stream
Size: 1238 bytes
Desc: short-delay.cl
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20130313/e60f0f28/attachment.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: short-delay.patch
Type: application/octet-stream
Size: 17830 bytes
Desc: short-delay.patch
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20130313/e60f0f28/attachment-0001.obj>
More information about the Gcc-patches
mailing list