|
|
|
|
|
|
|
|
|
|
xen-devel
[Xen-devel] RE: [PATCH] Re: [Xen-staging] [xen-unstable] [qemu] Removeat
> ia64intrin.h is all but empty in gcc 4.1.2, so there's no point in
> including it. dm-exec is still making use of a few of these
> too, but I
> guess it's easy enough to inline them there. Patch below. Thanks,
Would it also work to just leave the include in exec-all.h? I was
confused and thought that it was a local include which is why I put
#ifndef CONFIG_DM around all the testandset definitions.
So, if I remove the #ifndef CONFIG_DM, anything including exec-all.h
should still compile, right? Do I still need the extra #define's in
that case?
christian
>
> Alex
>
> Signed-off-by: Alex Williamson <alex.williamson@xxxxxx>
> ---
>
> diff -r 07b1e917c9d8 tools/ioemu/exec-all.h
> --- a/tools/ioemu/exec-all.h Thu May 10 16:22:27 2007 +0100
> +++ b/tools/ioemu/exec-all.h Thu May 10 10:13:17 2007 -0600
> @@ -474,8 +474,6 @@ static inline int testandset (int *p)
> #endif
>
> #ifdef __ia64
> -#include <ia64intrin.h>
> -
> static inline int testandset (int *p)
> {
> return __sync_lock_test_and_set (p, 1);
> diff -r 07b1e917c9d8 tools/ioemu/target-i386-dm/exec-dm.c
> --- a/tools/ioemu/target-i386-dm/exec-dm.c Thu May 10
> 16:22:27 2007 +0100
> +++ b/tools/ioemu/target-i386-dm/exec-dm.c Thu May 10
> 10:11:38 2007 -0600
> @@ -360,6 +360,11 @@ CPUReadMemoryFunc **cpu_get_io_memory_re
> }
>
> #ifdef __ia64__
> +
> +#define __ia64_fc(addr) asm volatile ("fc %0" ::
> "r"(addr) : "memory")
> +#define ia64_sync_i() asm volatile (";; sync.i" ::: "memory")
> +#define ia64_srlz_i() asm volatile (";; srlz.i ;;"
> ::: "memory")
> +
> /* IA64 has seperate I/D cache, with coherence maintained by
> DMA controller.
> * So to emulate right behavior that guest OS is assumed, we
> need to flush
> * I/D cache here.
>
>
>
>
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
|
|
|
|