HEADS UP: Toolchain changes coming soon. (Octeon, n32, n64)

M. Warner Losh imp at bsdimp.com
Wed Jun 2 13:45:01 UTC 2010


In message: <AANLkTilYyTZRFvkly897pFgnISE9npT9BM1yuOiQr3rx at mail.gmail.com>
            "C. Jayachandran" <c.jayachandran at gmail.com> writes:
: On Tue, Jun 1, 2010 at 2:53 PM, Juli Mallett <jmallett at freebsd.org> wrote:
: > On Tue, Jun 1, 2010 at 02:17, C. Jayachandran <c.jayachandran at gmail.com> wrote:
: >> 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.
: >
: > I pulled some files from a slightly more modern version of binutils
: > from a Cavium SDK than ours and reduced differences to make the
: > relevant parts of code match the older binutils API we provide, while
: > still providing the newer opcode interface and a couple of nearby
: > things.
: >
: >>> 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.
: >
: > If Netlogic can GPLv2 their specific changes or reimplement them
: > relative to FreeBSD's toolchain, I think we would want to coordinate
: > to get them into the tree.  Our goal is generally to produce a
: > fully-working self-hosting system out of the box.  That may change at
: > some point, especially if Warner's work on supporting external
: > toolchains better pans out well, but I think for now it's a reasonable
: > goal.
: 
: Stock binutils and GCC works fine for XLR (it is mips64 compliant), so
: XLR is self-hosting with the current FreeBSD MIPS tool-chain.  Our
: patch for GCC is for adding 'xlr' machine description and march/mtune
: options. The binutils patch is for a few XLR specific instructions for
: which we currently '.word' in assembly for.  So both of these are not
: really needed.
: 
: Also licensing should not be an issue here -  I'll have a go at this
: once the other toolchain changes are in.
: 
: > Note that my understanding is that David O'Brien is working on
: > bringing in the last GPLv2 binutils which will make the differences
: > required for mips64r2 and Octeon substantially-smaller and I would
: > hope for Netlogic processors as well.

One thing that I'm told, but haven't verified, is that the binutils
from the XLR SDK breaks other mips platforms in subtle ways.  Based on
this assertion, I think it would be prudent to carefully review and
test any proposed patches from that SDK.

Warner


More information about the freebsd-mips mailing list