Port-xen archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
x86 assembly again
Hi,
again, I'd like some sanity checks on my assembly though.
I think in this piece of code:
IDTVEC(spllower)
#if defined(DDB) || defined(GPROF)
pushl %ebp
movl %esp,%ebp
MCOUNT_ASM
#endif /* defined(DDB) || defined(GPROF) */
pushl %ebx
pushl %esi
pushl %edi
pushl %ecx
#if defined(DDB) || defined(GPROF)
movl 8(%ebp),%ebx
#else /* defined(DDB) || defined(GPROF) */
movl 16(%esp),%ebx
#endif /* defined(DDB) || defined(GPROF) */
the movl 16(%esp),%ebx is broken, it should be 20. However the
DDB | GPROF case is right, as we saved %esp in %ebp before pushing more
registers.
I am right ?
--
Manuel Bouyer <bouyer%antioche.eu.org@localhost>
NetBSD: 26 ans d'experience feront toujours la difference
--
Home |
Main Index |
Thread Index |
Old Index