lkml.org 
[lkml]   [1999]   [Jun]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
SubjectRe: 2.2.10-ac1 doesn't build...

This bug isn't just in -ac kernels. Please apply the patch to
2.3.x, 2.2.x, 2.0.x. ie. everywhere :-)

> -o in2000.o in2000.c
> {standard input}: Assembler messages:
> {standard input}:1008: Error: suffix or operands invalid for `outs'
> {standard input}:1024: Error: suffix or operands invalid for `outs'
> {standard input}:1416: Error: suffix or operands invalid for `outs'
> {standard input}:1633: Error: suffix or operands invalid for `ins'
> {standard input}:1866: Error: suffix or operands invalid for `ins'
> make[2]: *** [in2000.o] Error 1
> make[2]: Leaving directory
> /tmp/build-kernel/usr/src/linux-2.2.10-ac1/drivers/scsi'

> egcs-1.1.2, binutils-2.9.4.0.5, glibc-2.1.1.
^^^^^^^^^^^^^^^^^^

The binutils-2.9.4 assembler has better syntax checking than previous
versions of gas, and exposes some shoddy assembly in in2000.h

This will fix it, without causing problems for old assemblers. You could
also just zap the %%dx from the insw and outsw instructions, but this way
we show the segment/index regs used.

--- linux-2.2.10/drivers/scsi/in2000.h Sat Sep 5 20:11:10 1998
+++ linux/drivers/scsi/in2000.h Thu Jun 17 17:20:06 1999
@@ -67,7 +67,7 @@
orl %%ecx, %%ecx \n \
jz 1f \n \
rep \n \
- insw %%dx \n \
+ insw (%%dx),%%es:(%%edi) \n \
1: " \
: "=D" (sp) /* output */ \
: "d" (f), "D" (sp), "c" (i) /* input */ \
@@ -79,7 +79,7 @@
orl %%ecx, %%ecx \n \
jz 1f \n \
rep \n \
- outsw %%dx \n \
+ outsw %%ds:(%%esi),(%%dx) \n \
1: " \
: "=S" (sp) /* output */ \
: "d" (f), "S" (sp), "c" (i) /* input */ \


-
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/

\
 
 \ /
  Last update: 2005-03-22 13:52    [W:0.063 / U:0.244 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site