Re: 2.3.31 fails compile (i386 bbootsect.s)

Pete Clements (clem@clem.digital.net)
Tue, 12 Oct 1999 12:35:44 -0400 (EDT)


> > bbootsect.s:852: Error: base/index register must be 32 bit register
>
> Pete, would you mind testing the attached patch for me to see if it fixes
> everything. I'd appreciate it.
>
> Thanks.
>
> Chris Noe
> (stiker@northlink.com)

Chris,
Tried the patch and got below failure.

I passed some bum info in my original post...

reported
GNU assembler version 2.9.1 (i486-linux), using BFD version 2.9.1.0.19
which works fine with the original code. (Debian 2.1 system)

Problem version is
GNU assembler version 2.9.1 (i486-linux), using BFD version 2.9.1
on a Debian 2.0 system. This failure is with the problem version.
(Guess it's time to update this system.)

make[1]: Entering directory `/hdb3/usr/src/linux-2.3.21/arch/i386/boot'
gcc -D__KERNEL__ -I/hdb3/usr/src/linux-2.3.21/include -E -D__BIG_KERNEL__ -traditional -DSVGA_MODE=NORMAL_VGA bootsect.S -o bbootsect.s
as -o bbootsect.o bbootsect.s
bbootsect.s: Assembler messages:
bbootsect.s:586: Error: operands given don't match any known 386 instruction
make[1]: *** [bbootsect.o] Error 1

579
580 #Segments are as follows: ds = es = ss = cs - INITSEG, fs = 0,
581 #and gs is unused.
582
583 movw %cx, %fs # set fs to 0
584 movw $0x78, %bx # fs:bx is parameter table address
585 pushw %ds
586 ldsw %fs:(%ebx), %si # ds:si is source
587 movb $3, %cl # copy 12 bytes
588 cld
589 pushw %di # di = 0x4000-12.
590 rep
591 movsl
592 popw %di
593 popw %ds
594 movb $36, 0x4(%edi) # patch sector count
595 movw %di, %fs:(%ebx)
596 movw %es, %fs:2(%ebx)
597
598 #Load the setup-sectors directly after the bootblock.

-- 
Pete Clements 
clem@clem.digital.net

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/