Re: [PATCH RFC WIP] x86/paravirt: add register-saving thunks to reducecaller register pressure

From: Jeremy Fitzhardinge
Date: Tue Feb 03 2009 - 12:23:24 EST


Pavel Machek wrote:
This patch seeks to alleviate this pressure by introducing wrapper
thunks that will do the register saving/restoring, so that the
callsite doesn't need to worry about it, but the callee function can
be conventional compiler-generated code. In many cases (particularly
performance-sensitive cases) the callee will be in assembler anyway,
and need not use the compiler's calling convention.

Standard calling convention is:
arguments return scratch
x86-32 eax edx ecx eax ?

esi edi ebp ?

Those are callee-save, so the caller doesn't need to worry about preserving their values.

actually standard calling convention is all arguments on stack iirc
but we use regparm=3 for kernel...?

Yes. "standard" = "standard kernel calling convention"


J
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/