Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 11 Nov 2001 11:32:35 +0200
From:      Giorgos Keramidas <charon@labs.gr>
To:        Bruce Evans <bde@zeta.org.au>
Cc:        John Baldwin <jhb@FreeBSD.ORG>, current@FreeBSD.ORG
Subject:   Re: kernel won't build - atomic.c/atomic.h errors...
Message-ID:  <20011111093235.GA62146@hades.hell.gr>
In-Reply-To: <20011111111640.M22418-100000@delplex.bde.org>
References:  <XFMail.011110135709.jhb@FreeBSD.org> <20011111111640.M22418-100000@delplex.bde.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Bruce Evans <bde@zeta.org.au> wrote:
> On Sat, 10 Nov 2001, John Baldwin wrote:
> > On 08-Nov-01 Bruce Evans wrote:
> > > The i386 <machine/atomic.h> still uses archaic constraints for some
> > > input-output operands ("0" for the first operand).  These never worked
> > > right and if fact don't actually work for compiling this file without
> > > optimization.
> >
> > Hmm, would you prefer this diff then, I've had it floating around for a while
> > now but wasn't sure it was right:
>
> Yes, it is right provided all the operand renumbering is right.  I suppose
> it can't be checked simply by comparing all objects, because it sometimes
> changes the register allocation?
>
> There are a couple more "0"s in atomic_cmpset_int(), and many more in other
> files (even in cpufunc.h).

Actually there are only 14 files that make use of "0" .. "9".

    % find ./sys -type f | xargs grep -l ':[[:space:]]*"[0-9]"'
    ./sys/alpha/include/alpha_cpu.h
    ./sys/contrib/dev/acpica/acgcc.h
    ./sys/gnu/ext2fs/i386-bitops.h
    ./sys/gnu/i386/fpemul/fpu_entry.c
    ./sys/i386/i386/identcpu.c
    ./sys/i386/i386/in_cksum.c
    ./sys/i386/i386/math_emulate.c
    ./sys/i386/include/atomic.h
    ./sys/i386/include/cpufunc.h
    ./sys/i386/include/endian.h
    ./sys/i386/include/in_cksum.h
    ./sys/sparc64/include/in_cksum.h
    ./sys/sparc64/sparc64/in_cksum.c

./sys/gnu/i386/fpemul/fpu_entry.c & ./sys/i386/i386/math_emulate.c
were quite easy to change.  I'm not using math emulation, but the
changes to these two were almost trivial and I already mailed jhb a
hopefully correct diff.  It's also online at
http://people.freebsd.org/~keramida/diff/diff.063.kern

For the rest of the i386 files, it'll take the rest of my Sunday
afternoon and a buildworld or two, I guess.  I can't make any sparc64
or alpha changes though.


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message




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