ia64/xen-unstable

changeset 13893:9e27245a692e

Fix x86/64 build.
Signed-off-by: Keir Fraser <keir@xensource.com>
author kfraser@localhost.localdomain
date Thu Feb 08 21:30:29 2007 +0000 (2007-02-08)
parents 3050c8339da6
children 620f5cdfe32b
files xen/arch/x86/x86_64/Makefile xen/arch/x86/x86_64/compat/entry.S xen/arch/x86/x86_64/entry.S
line diff
     1.1 --- a/xen/arch/x86/x86_64/Makefile	Thu Feb 08 18:18:56 2007 +0000
     1.2 +++ b/xen/arch/x86/x86_64/Makefile	Thu Feb 08 21:30:29 2007 +0000
     1.3 @@ -1,3 +1,5 @@
     1.4 +subdir-y += compat
     1.5 +
     1.6  obj-y += entry.o
     1.7  obj-y += compat_kexec.o
     1.8  obj-y += gpr_switch.o
     1.9 @@ -13,7 +15,6 @@ ifeq ($(CONFIG_COMPAT),y)
    1.10  # extra dependencies
    1.11  compat.o:	../compat.c
    1.12  domctl.o:	../domctl.c
    1.13 -entry.o:	compat/entry.S
    1.14  mm.o:		compat/mm.c
    1.15  physdev.o:	../physdev.c
    1.16  platform_hypercall.o: ../platform_hypercall.c
     2.1 --- a/xen/arch/x86/x86_64/compat/entry.S	Thu Feb 08 18:18:56 2007 +0000
     2.2 +++ b/xen/arch/x86/x86_64/compat/entry.S	Thu Feb 08 21:30:29 2007 +0000
     2.3 @@ -2,10 +2,27 @@
     2.4   * Compatibility hypercall routines.
     2.5   */
     2.6  
     2.7 +#include <xen/config.h>
     2.8 +#include <xen/errno.h>
     2.9 +#include <xen/softirq.h>
    2.10 +#include <asm/asm_defns.h>
    2.11 +#include <asm/apicdef.h>
    2.12 +#include <asm/page.h>
    2.13  #include <asm/desc.h>
    2.14 +#include <public/xen.h>
    2.15  
    2.16 -.text
    2.17 +#define GET_GUEST_REGS(reg)                     \
    2.18 +        movq $~(STACK_SIZE-1),reg;              \
    2.19 +        andq %rsp,reg;                          \
    2.20 +        orq  $(STACK_SIZE-CPUINFO_sizeof),reg;
    2.21  
    2.22 +#define GET_CURRENT(reg)         \
    2.23 +        movq $STACK_SIZE-8, reg; \
    2.24 +        orq  %rsp, reg;          \
    2.25 +        andq $~7,reg;            \
    2.26 +        movq (reg),reg;
    2.27 +
    2.28 +        ALIGN
    2.29  ENTRY(compat_hypercall)
    2.30          pushq $0
    2.31          movl  $TRAP_syscall,4(%rsp)
    2.32 @@ -62,7 +79,7 @@ compat_skip_clobber:
    2.33          movl  %eax,UREGS_rax(%rsp)       # save the return value
    2.34  
    2.35  /* %rbx: struct vcpu */
    2.36 -compat_test_all_events:
    2.37 +ENTRY(compat_test_all_events)
    2.38          cli                             # tests must not race interrupts
    2.39  /*compat_test_softirqs:*/
    2.40          movl  VCPU_processor(%rbx),%eax
    2.41 @@ -164,7 +181,7 @@ 1:
    2.42  .previous
    2.43  
    2.44  /* %rdx: trap_bounce, %rbx: struct vcpu */
    2.45 -compat_post_handle_exception:
    2.46 +ENTRY(compat_post_handle_exception)
    2.47          testb $TBF_EXCEPTION,TRAPBOUNCE_flags(%rdx)
    2.48          jz    compat_test_all_events
    2.49          call  compat_create_bounce_frame
     3.1 --- a/xen/arch/x86/x86_64/entry.S	Thu Feb 08 18:18:56 2007 +0000
     3.2 +++ b/xen/arch/x86/x86_64/entry.S	Thu Feb 08 21:30:29 2007 +0000
     3.3 @@ -319,7 +319,7 @@ 2:      subq  $16,%rsi
     3.4  domain_crash_synchronous_string:
     3.5          .asciz "domain_crash_sync called from entry.S\n"
     3.6  
     3.7 -domain_crash_synchronous:
     3.8 +ENTRY(domain_crash_synchronous)
     3.9          # Get out of the guest-save area of the stack.
    3.10          GET_GUEST_REGS(%rax)
    3.11          movq  %rax,%rsp
    3.12 @@ -357,7 +357,7 @@ ENTRY(ret_from_intr)
    3.13  
    3.14          ALIGN
    3.15  /* No special register assumptions. */
    3.16 -handle_exception:
    3.17 +ENTRY(handle_exception)
    3.18          SAVE_ALL
    3.19          testb $X86_EFLAGS_IF>>8,UREGS_eflags+1(%rsp)
    3.20          jz    exception_with_ints_disabled
    3.21 @@ -633,7 +633,3 @@ ENTRY(hypercall_args_table)
    3.22          .rept NR_hypercalls-(.-hypercall_args_table)
    3.23          .byte 0 /* do_ni_hypercall      */
    3.24          .endr
    3.25 -
    3.26 -#ifdef CONFIG_COMPAT
    3.27 -#include "compat/entry.S"
    3.28 -#endif