isdn_audio_tlookup x86 bug

Bernhard Rosenkraenzer (bero@microsoft.sucks.eu.org)
Tue, 19 Jan 1999 13:30:16 +0100 (CET)


The isdn_audio_tlookup function (in both the CVS version and the
old version included in the kernel) doesn't compile with recent egcs/pgcc
versions because of an illegal register spill:

__asm__("cld\n"
"1:\tlodsb\n\t"
"xlatb\n\t"
"stosb\n\t"
"loop 1b\n\t"
: : "b"((long) table), "c"(n), "D"((long) buff), "S"((long) buff)
^
: "bx", "cx", "di", "si", "ax");
^^

Since there's a C version of the statement, as well (used on non-x86), I'd
recommend to change

#if ((CPU == 386) || (CPU == 486) || (CPU == 586))

in isdn_audio.c to

#if 0

until someone fixes the asm.

LLaP
bero

-- 
Windows 98 supports real multitasking - it can boot and crash simultaneously.
***
Anyone sending unwanted advertising e-mail to this address will be charged
$25 for network traffic and computing time. By extracting my address from
this message or its header, you agree to these terms.

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