strstr _fix_ (for depca.c & ewrk3.c, 2.2.0-pre6 + pre7)

Torsten Duwe (duwe@ns.lst.de)
Thu, 14 Jan 1999 22:11:47 +0100 (MET)


Looking at the asm code closely, it becomes clear that only %ebx is free to
hold the ct pointer; I would therefore apply the following path (don't get
confused -- all that really changes is the "g" into a "b", but breaking the
long line and aligning the input operands with the outputs that occupy the
same space seemed reasonable to me).

Torsten

--- linux/include/asm-i386/string.h~ Tue Dec 29 20:18:18 1998
+++ linux/include/asm-i386/string.h Thu Jan 14 16:21:10 1999
@@ -213,7 +213,8 @@
"jne 1b\n\t"
"xorl %%eax,%%eax\n\t"
"2:"
- :"=a" (__res), "=&c" (d0), "=&S" (d1), "=&d" (d2), "=&D" (d3) : "0" (0),"1" (0xffffffff),"2" (cs),"g" (ct));
+ :"=a" (__res), "=&c" (d0), "=&S" (d1), "=&d" (d2), "=&D" (d3)
+ : "0" (0), "1" (0xffffffff), "2" (cs), "b" (ct));
return __res;
}

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