svn commit: r358262 - head/sys/conf

Warner Losh imp at bsdimp.com
Sun Feb 23 20:21:52 UTC 2020


On Sun, Feb 23, 2020, 12:37 PM Ian Lepore <ian at freebsd.org> wrote:

> On Sun, 2020-02-23 at 19:04 +0000, Warner Losh wrote:
> > Author: imp
> > Date: Sun Feb 23 19:04:15 2020
> > New Revision: 358262
> > URL: https://svnweb.freebsd.org/changeset/base/358262
> >
> > Log:
> >   Use MACHINE_ARCH instead of TARGET_ARCH
> >
> >   TARGET_ARCH is only for use in Makefile.inc1 contexts. MACHINE_ARCH is
> the
> >   preferred thing to set.  Makefile.inc1 sets MACHINE_ARCH in the cross
> build
> >   case, and make sets it in the native build case. This will fix anybody
> doing a
> >   native build. Add a comment for why we have to do this dance so
> when/if the
> >   problem with CFLAGS is fixed for the kernel this workaround can be
> removed.
> >
>
> I suddenly wonder: why does the kernel build need to know about the
> float ABI if we don't use floating point in the kernel?  If it's about
> whether to include support for the floating point hardware
> (save/restore context at the userland boundary, etc), then shouldn't
> that be controlled with a kernel config option or device statement like
> it is on other arches?
>

This is so the sysctl that make uses returns the right thing.

If the kernel actually is being compiled with different -march= to
> generate hardfloat instructions/register usage/etc, then shouldn't
> there be some compiler-defined macro to indicate that?  (A quick search
> says that __riscv_float_abi_soft may be that macro.)
>

The code review for the prior change explored that. This change just
documented the prior change and used the right make variable.

I honestly think this is a short term hack until other issues are settled.
I justed wanted the hack to be right.

Warner

-- Ian
>
>
>


More information about the svn-src-all mailing list