Date: Sat, 3 Oct 2020 13:35:47 -0700 From: Adrian Chadd <adrian@freebsd.org> To: Alexander Richardson <arichardson@freebsd.org> Cc: freebsd-current <freebsd-current@freebsd.org>, "freebsd-mips@freebsd.org" <freebsd-mips@freebsd.org> Subject: Re: mips32 + gcc9 -- still broken Message-ID: <CAJ-VmonYD7RECe-X2cj5NHVtXvM18WSxY5zM1sKiz_4tViiXhg@mail.gmail.com> In-Reply-To: <CA%2BZ_v8reurn%2BfVtKn2PeOUK3n-UyBLM0dSdBsA%2BK5LPwq0u5Hw@mail.gmail.com> References: <CAJ-Vmonck6=QYFshmrnuyi8C8LiPKE9gNGeSoKLybV0pjXZbPw@mail.gmail.com> <CAJ-Vmo=1c0M2QppvqUKqn9jVD%2BtH3SR9BONxV6cH4QXvBS8xkw@mail.gmail.com> <CA%2BZ_v8reurn%2BfVtKn2PeOUK3n-UyBLM0dSdBsA%2BK5LPwq0u5Hw@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, 21 Sep 2020 at 00:43, Alexander Richardson <arichardson@freebsd.org> wrote: > > On Mon, 21 Sep 2020, 07:38 Adrian Chadd, <adrian@freebsd.org> wrote: > >> So, the big list of unknown symbols was my fault! Whoops. >> >> i've gotten further using gcc-6.4 by fixing some of the warnings/issues >> that have crept up. >> >> Here's a review for one of them: >> >> https://reviews.freebsd.org/D26504 >> >> However, now I've hit: >> >> /usr/local/bin/mips-unknown-freebsd13.0-ld: >> >> /usr/home/adrian/work/freebsd/head-embedded/obj/mips_ap/usr/home/adrian/work/freebsd/head-embedded/src/mips.mips/tmp/usr/lib/libc++.so.1: >> undefined reference to `__atomic_fetch_sub_8' >> /usr/local/bin/mips-unknown-freebsd13.0-ld: >> >> /usr/home/adrian/work/freebsd/head-embedded/obj/mips_ap/usr/home/adrian/work/freebsd/head-embedded/src/mips.mips/tmp/usr/lib/libc++.so.1: >> undefined reference to `__atomic_load_8' >> /usr/local/bin/mips-unknown-freebsd13.0-ld: >> >> /usr/home/adrian/work/freebsd/head-embedded/obj/mips_ap/usr/home/adrian/work/freebsd/head-embedded/src/mips.mips/tmp/usr/lib/libc++.so.1: >> undefined reference to `__atomic_fetch_add_8' >> >> .. looks like we need some 64 bit atomics now in mips32 for libc++ / devd >> > > Those are now provided by compiler-rt when using clang. With GCC you'll > have to link libatomic. I had a quick look at the code in libc++ that uses > the 64-bit atomics a few weeks ago and I believe it's the futex fallback > code. The best solution would probably be to port it to use umtx but for > MIPS32 it might be fine to use a 32 bit atomic instead. > It compiled fine with a 32 bit atomic. Why's it 64 bit for everything but Linux? Can we make it a 32 bit atomic for all FreeBSD platforms? Are there ABI concerns? -adrian > > Alex > >>
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAJ-VmonYD7RECe-X2cj5NHVtXvM18WSxY5zM1sKiz_4tViiXhg>