Messages in this thread | | | Date | Thu, 17 Jun 1999 08:29:33 -0400 (EDT) | From | "Richard B. Johnson" <> | Subject | Re: 2.2.10-ac1 doesn't build... |
| |
On Thu, 17 Jun 1999, Alan Modra wrote: [SNIPPED]
> > 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 */ \ > >
But outsw and insw do not use additional oprands. DS:ESI, ES:EDI, and EDX are implicit by the definition. Not even a segment override is possible. Therefore these opcodes should stand alone.
Cheers, Dick Johnson ***** FILE SYSTEM WAS MODIFIED ***** Penguin : Linux version 2.2.6 on an i686 machine (400.59 BogoMips). Warning : It's hard to remain at the trailing edge of technology.
- 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/
| |