Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 27 Aug 2019 12:18:28 -0500
From:      Kyle Evans <kevans@freebsd.org>
To:        Warner Losh <imp@bsdimp.com>
Cc:        Mori Hiroki <yamori813@yahoo.co.jp>, freebsd-mips@freebsd.org,  Ed Maste <emaste@freebsd.org>
Subject:   Re: gcc 4.2.1 will delete
Message-ID:  <CACNAnaHUfSdSj_Q=rGcmWiqM8gBBk8NLNkesBfwgBNQEe65YGg@mail.gmail.com>
In-Reply-To: <CACNAnaFDc3-ta8ixtf8TyjOQcsx2xP9W2iP-s4c21jw7GxkeQA@mail.gmail.com>
References:  <441318706.278852.1566618835359.JavaMail.yahoo.ref@jws705006.mail.kks.yahoo.co.jp> <441318706.278852.1566618835359.JavaMail.yahoo@jws705006.mail.kks.yahoo.co.jp> <CANCZdfrxexQ=_oL4ewaP5=wn8%2BDA%2BkmAuD6H9t%2BK=K65WnBGuA@mail.gmail.com> <CACNAnaFDc3-ta8ixtf8TyjOQcsx2xP9W2iP-s4c21jw7GxkeQA@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Aug 27, 2019 at 11:59 AM Kyle Evans <kevans@freebsd.org> wrote:
>
> (CC'ing emaste@ as well, because this is a bit of a status report)
>
> On Fri, Aug 23, 2019 at 11:01 PM Warner Losh <imp@bsdimp.com> wrote:
> >
> > On Fri, Aug 23, 2019, 9:54 PM Mori Hiroki <yamori813@yahoo.co.jp> wrote:
> >
> > > Hi
> > >
> > > gcc 4.2.1 will delete.
> > >
> > > How about go mips architecture ?
> > >
> > > https://reviews.freebsd.org/rS351429
> >
> >
> > There is good support for an external toolchain today. Clang has some
> > support, but it works a lot better in llvm 9.0,  which is due in about a
> > month.
> >
> > Warner
> >
>
> I have the following open work for mips32 w/ in-tree llvm (and llvm90
> has the same issues for some of them):
> - https://reviews.freebsd.org/D21435 (_mcount needs to be explicitly
> placed in .text; clang will emit ".section .mdebug.abi32" before
> everything else so _mcount ends up in it -- I don't think we can
> really blame clang, we probably should've specified)
>
> - https://people.freebsd.org/~kevans/mips-llvm.diff (.eh_frame ends up
> with some relocations we can't have in non-writable section; dirty
> dirty hack to make .eh_frame writable in clang and making sure the
> synthetic section that lld produces is also writable [this part's even
> dirtier than the first])
>
> - https://people.freebsd.org/~kevans/mips-opts.diff (fusefs tests
> currently hang and I haven't had time to figure out why or try and
> reproduce it against llvm90; the rest of the diff is simply enabling
> full LLVM/LLD world)
>
> With these three I can make build and install a world w/ MALTA kernel,
> all otherwise modified, and things generally work except kldxref:
>
> Building /boot/kernel/linker.hints
> kldxref: /boot/kernel/kernel: too many segments
>
> root@:~ # uname -a
> FreeBSD  13.0-CURRENT FreeBSD 13.0-CURRENT #0
> b101f7f4b1d-c262228(mips-llvm)-dirty: Tue Aug 27 09:42:00 CDT 2019
> root@viper.audeuro.com:/usr/obj/usr/src/mips-llvm/sys/MALTA  mips
>
> Next step, I'll fudge this into freebsd-wifi-build and test it on the
> hardware in my test lab...
>

I almost forgot this one:

- https://people.freebsd.org/~kevans/mips-csu.diff

I pulled a .cprestore directive out of thin air because, AFAICT, it
really doesn't matter. We do similar hijinks in
^/sys/mips/include/profile.h, apparently, in MCOUNT.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CACNAnaHUfSdSj_Q=rGcmWiqM8gBBk8NLNkesBfwgBNQEe65YGg>