ChangeSet 1.1697, 2005/06/09 14:27:17+01:00, kaf24@xxxxxxxxxxxxxxxxxxxx
Multicall macro should mark all caller-saved registers as clobbered
across the function call.
Signed-off-by: Scott Parish <srparish@xxxxxxxxxx>
multicall.h | 8 ++++++--
1 files changed, 6 insertions(+), 2 deletions(-)
diff -Nru a/xen/include/asm-x86/multicall.h b/xen/include/asm-x86/multicall.h
--- a/xen/include/asm-x86/multicall.h 2005-06-09 10:03:00 -04:00
+++ b/xen/include/asm-x86/multicall.h 2005-06-09 10:03:00 -04:00
@@ -24,7 +24,9 @@
"callq *(%%rax); " \
"movq %%rax,"STR(MULTICALL_result)"(%0); " \
: : "b" (_call) \
- : "rax", "rdi", "rsi", "rdx", "rcx", "r8" ); \
+ /* all the caller-saves registers */ \
+ : "rax", "rcx", "rdx", "rsi", "rdi", \
+ "r8", "r9", "r10", "r11" ); \
} while ( 0 )
#else
@@ -42,7 +44,9 @@
"call *hypercall_table(,%%eax,4); " \
"movl %%eax,"STR(MULTICALL_result)"(%0); "\
"addl $20,%%esp; " \
- : : "b" (_call) : "eax", "ecx", "edx" ); \
+ : : "b" (_call) \
+ /* all the caller-saves registers */ \
+ : "eax", "ecx", "edx" ); \
} while ( 0 )
#endif
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog
|