Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 1 Jun 2010 14:47:55 +0530
From:      "C. Jayachandran" <c.jayachandran@gmail.com>
To:        Juli Mallett <jmallett@freebsd.org>
Cc:        freebsd-mips@freebsd.org
Subject:   Re: HEADS UP: Toolchain changes coming soon. (Octeon, n32, n64)
Message-ID:  <AANLkTinJEO45FDw-Sq3es3Do3-S7BqlwnNt-crEFTMdf@mail.gmail.com>
In-Reply-To: <AANLkTileRE-StPhn4FpFJZFLSkkQ-0h6UYwx6v6mFdZk@mail.gmail.com>
References:  <AANLkTinXthc8drw_G8gYUCtUefTVb9JQWTIlqtgsofPt@mail.gmail.com> <AANLkTinKR9dTU61I6MzqQYHQruYsOpRfK1pmgHczK08w@mail.gmail.com> <AANLkTileRE-StPhn4FpFJZFLSkkQ-0h6UYwx6v6mFdZk@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Jun 1, 2010 at 12:13 PM, Juli Mallett <jmallett@freebsd.org> wrote:
> On Mon, May 31, 2010 at 23:34, C. Jayachandran <c.jayachandran@gmail.com>=
 wrote:
>> GCC seems to have added mips64r2 support in 4.4
>> (http://gcc.gnu.org/gcc-4.4/changes.html) which was a GPLv3 release,
>> so I was under the impression that we could not merge it into FreeBSD.
>> Is this a valid concern, or were you able to get the code re-licensed,
>> Or (the option which is most likely) am I completely off track here :)
>>
>> Netlogic's next chip (XLP) too has MIPS64r2 ISA, so we are interested
>> in getting support for this.
>
> Well, let me be clear about the extent of the support. =A0There was
> already a mips32r2 stub which added support for a couple of things and
> I extended mips64 to mips64r2 in the same way. =A0It's mostly just there
> to get mips64r2 instructions to work in binutils (i.e. to proxy the
> ISA level to the assembler.) =A0I didn't use any GPLv3 sources as a
> reference, although a search later suggested that the trivial parts of
> the change (i.e. internally encoding mips64r2 as 65 much as mips32r2
> is 33) were similar. =A0If you look at the diff it's pretty clear that
> calling it support is pretty laughable except wrt being able to
> assemble inline assembly using those instructions, setting the right
> default with the assembler and support in GCC for rotate, seb and seh
> instructions.

That clears it up, thanks.  Looking at the patch, most of the changes
seems to be in binutils, are these from a specific version of
binutils?  I am asking because I'm not sure how the FreeBSD toolchain
is synchronized across architectures - are all architectures at the
same version of binutils, or can each architecture decide to update
its part of the tool-chain.

> Is there specific functionality you need in GCC?

Netlogic has some updates for GCC and binutils in its SDK. But they
are not critical, and we have not merged these into the FreeBSD.  I
was not sure if I can get these changes into FreeBSD directly.

JC.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?AANLkTinJEO45FDw-Sq3es3Do3-S7BqlwnNt-crEFTMdf>