On Fri, Dec 13, 2019 at 07:04:33PM +0000, Andrew Cooper wrote: > Only the callee-preserved registers need saving/restoring. Spill them to the > stack like regular functions do. %rsp is now the only GPR which gets stashed > in .data > > Signed-off-by: Andrew Cooper <andrew.coop...@citrix.com>
Reviewed-by: Roger Pau Monné <roger....@citrix.com> > --- > CC: Jan Beulich <jbeul...@suse.com> > CC: Wei Liu <w...@xen.org> > CC: Roger Pau Monné <roger....@citrix.com> > --- > xen/arch/x86/acpi/wakeup_prot.S | 59 > +++++++++-------------------------------- > 1 file changed, 12 insertions(+), 47 deletions(-) > > diff --git a/xen/arch/x86/acpi/wakeup_prot.S b/xen/arch/x86/acpi/wakeup_prot.S > index 35fd7a5e9f..2f6c8e18ef 100644 > --- a/xen/arch/x86/acpi/wakeup_prot.S > +++ b/xen/arch/x86/acpi/wakeup_prot.S > @@ -11,24 +11,14 @@ > #define REF(x) x(%rip) > > ENTRY(do_suspend_lowlevel) > + push %rbp > + push %rbx > + push %r12 > + push %r13 > + push %r14 > + push %r15 I was expecting Xen had a macro for this (and the restore counterpart), but I haven't found any (neither any other places where it would be useful). Thanks, Roger. _______________________________________________ Xen-devel mailing list Xen-devel@lists.xenproject.org https://lists.xenproject.org/mailman/listinfo/xen-devel