On Mon Feb 28, 2005 at 11:18:10 -0800, Dennis Newbold wrote:
gcc -c -o i16_real_int.o -MD -DHAVE_CONFIG_H -DOSKIT_X86 -DOSKIT_X86_PC -I. -I../kern/x86 -I../kern/x86/pc -I../kern/x86/dos -I../kern/x86/i16 -I../kern/x86/pc/i16 -I../kern/x86/dos/i16 -I../kern -I- -I../oskit/c -I.. -I.. -nostdinc -D_GNU_SOURCE -DASSEMBLER -MD ../kern/x86/pc/i16/i16_real_int.S ../kern/x86/pc/i16/i16_real_int.S: Assembler messages: ../kern/x86/pc/i16/i16_real_int.S:64: Error: bad expression ../kern/x86/pc/i16/i16_real_int.S:64: Error: junk `1-0x00000200' after expression I am using Fedora Core 2 Linux. The following is the output from "cat /etc/fedora-release": Fedora Core release 2 (Tettnang)
Oh well. I just even tried binutils CVS from today and it got it right, I don't know why FC gets this wrong, this is just annoying. Anyway, I just comitted this, as I'm tired of replying to this FC stuff. I hope it works, obviously I cannot reproduce it.
Index: i16_real_int.S =================================================================== RCS file: /home/cvs/oskit10/kern/x86/pc/i16/i16_real_int.S,v retrieving revision 1.1.1.3 diff -u -r1.1.1.3 i16_real_int.S --- i16_real_int.S 6 Sep 2000 13:33:23 -0000 1.1.1.3 +++ i16_real_int.S 28 Feb 2005 21:49:31 -0000 @@ -61,7 +61,9 @@ ADDR32 movl TR_EDI(%ebp),%edi ADDR32 movw TR_V86_DS(%ebp),%ds ADDR32 movw TR_V86_ES(%ebp),%es -ADDR32 andl $-1-EFL_IF,TR_EFLAGS(%ebp) /* mustn't enable interrupts */ +/* some distributions have some weird binutils version, hard code constant */ +/*ADDR32 andl $-1-EFL_IF,TR_EFLAGS(%ebp)*/ /* mustn't enable interrupts */ +ADDR32 andl $0xfffffdff,TR_EFLAGS(%ebp) /* mustn't enable interrupts */ ADDR32 pushl TR_EFLAGS(%ebp) popfl ADDR32 movl TR_EBP(%ebp),%ebp
At the time I did all of these things, I was logged in as root, with root privileges.
So, any reason why you like shooting yourself in the foot? ;)
Adam