__asm__ fix as suggested by <daniel@mat.utfsm.cl> Daniel Serpell,
removed additional "eax" from clobber list, so egcs-current likes it.
diff --git a/msdos/dpmi.c b/msdos/dpmi.c
index 41794fa..d377788 100644
--- a/msdos/dpmi.c
+++ b/msdos/dpmi.c
@@ -211,23 +211,24 @@
* It is the proc's responsibility to change the return CS:IP in the
* real-mode call structure. */
if (flag & 1) {
+ int _clobber;
/* 32-bit DPMI client */
__asm__ __volatile__("
pushl %%es
pushl %%ds
pushfl
- movl %4,%%es
- movl %3,%%ds
- lcall %2
+ movl %5,%%es
+ movl %4,%%ds
+ lcall %3
popl %%ds
movl %%es,%0
popl %%es
"
- : "=g" (es), "=D" (edi)
+ : "=g" (es), "=D" (edi), "=S" (_clobber)
: "m" (rmcb->proc_ofs),
"g" (ss), "g" (rmcb->regs_sel),
- "S" (ESP_reg(context)), "D" (rmcb->regs_ofs)
- : "eax", "ecx", "edx", "esi", "ebp" );
+ "S" (ESP_reg(context)), "1" (rmcb->regs_ofs)
+ : "ecx", "edx", "ebp" );
} else {
/* 16-bit DPMI client */
CONTEXT ctx = *context;