On Sat, Jul 01, 2000 at 03:31:04PM +0200, B.O.F.H. at kessen.yi.org wrote:
> on june 30th I ftped the current kernel tree from ftp.uk.freebsd.org to
> test it on my 4.0-20000608-stable machine.
Huh... you are now mixing a 5-CURRENT (ie, CVS head branch) kernel source
with a 4-STABLE (ie, RELENG_4) world [in this case toolchain]. What in
the world make you think this would work?
> cc -c -x
> assembler-with-cpp -DLOCORE -O -Wall -Wredundant-decls -Wnested-externs -Wst
If you would do ``as -v'' you will see you have GAS version 2.9.1.
> /tmp/cca13049.s: Assembler messages:
> /tmp/cca13049.s:773: Error: operands given don't match any known 386
> /tmp/cca13049.s:838: Error: operands given don't match any known 386
This is because your /usr/src tree is now bogusly out of sync.
> I did a diff between this bioscall.s from current and 2000608-stable
> and found there to be small differences but I don't see a problem.
Since there *is* a difference, it must be the problem.
> root@kessen / > diff bioscall.old bioscall.new
> < lcall _bioscall_vector
> > lcall *_bioscall_vector
The AT&T ASM syntax requires "*" in front of indirect calls.
Unfortuneatly GAS 2.9.1 was brain damaged and doesn't understand it as it
should. Goodness knows how GAS 2.9.1 figures out how to do the right
thing, but it mostly does.
However, 5-CURRENT now has GAS 2.10.0 as the assembler. It has been
*VASTLY* improved and now accepts and adhears much more strictly to the
AT&T i386 ASM syntax. Without the leading "*", GAS 2.10.0 is very
unhappy with the instruction.
> hmm. I don't see a problem, maybe I used diff wrongly but copying the
> bioscall.s from 2000608-stable over the current one solves the problem
I REALLY have to ask what you are trying to accomplish here.
-- David ([EMAIL PROTECTED])
To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message