ia64/xen-unstable

view tools/ioemu/target-i386-dm/cpu.h @ 15841:c5f735271e22

[IA64] Foreign p2m: Fix vti domain builder.

It should set arch_domain::convmem_end.

Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
author Alex Williamson <alex.williamson@hp.com>
date Thu Sep 06 13:48:43 2007 -0600 (2007-09-06)
parents 67a06a9b7b1d
children 54bd38dab5ef
line source
1 /*
2 * i386 virtual CPU header
3 *
4 * Copyright (c) 2003 Fabrice Bellard
5 *
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either
9 * version 2 of the License, or (at your option) any later version.
10 *
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Lesser General Public License for more details.
15 *
16 * You should have received a copy of the GNU Lesser General Public
17 * License along with this library; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19 */
20 #ifndef CPU_I386_H
21 #define CPU_I386_H
23 #include "config.h"
25 #ifdef TARGET_X86_64
26 #define TARGET_LONG_BITS 64
27 #else
28 /* #define TARGET_LONG_BITS 32 */
29 #define TARGET_LONG_BITS 64 /* for Qemu map cache */
30 #endif
32 /* target supports implicit self modifying code */
33 #define TARGET_HAS_SMC
34 /* support for self modifying code even if the modified instruction is
35 close to the modifying instruction */
36 #define TARGET_HAS_PRECISE_SMC
38 #include "cpu-defs.h"
40 #include "softfloat.h"
42 #if defined(__i386__) && !defined(CONFIG_SOFTMMU)
43 #define USE_CODE_COPY
44 #endif
46 #ifdef USE_X86LDOUBLE
47 typedef floatx80 CPU86_LDouble;
48 #else
49 typedef float64 CPU86_LDouble;
50 #endif
52 /* Empty for now */
53 typedef struct CPUX86State {
54 uint32_t a20_mask;
56 int interrupt_request;
58 CPU_COMMON
59 } CPUX86State;
61 CPUX86State *cpu_x86_init(void);
62 int cpu_x86_exec(CPUX86State *s);
63 void cpu_x86_close(CPUX86State *s);
64 int cpu_get_pic_interrupt(CPUX86State *s);
65 /* MSDOS compatibility mode FPU exception support */
66 void cpu_set_ferr(CPUX86State *s);
68 void cpu_x86_set_a20(CPUX86State *env, int a20_state);
70 #ifndef IN_OP_I386
71 void cpu_x86_outb(CPUX86State *env, int addr, int val);
72 void cpu_x86_outw(CPUX86State *env, int addr, int val);
73 void cpu_x86_outl(CPUX86State *env, int addr, int val);
74 int cpu_x86_inb(CPUX86State *env, int addr);
75 int cpu_x86_inw(CPUX86State *env, int addr);
76 int cpu_x86_inl(CPUX86State *env, int addr);
77 #endif
79 /* helper2.c */
80 int main_loop(void);
82 #if defined(__i386__) || defined(__x86_64__)
83 #define TARGET_PAGE_BITS 12
84 #elif defined(__ia64__)
85 #define TARGET_PAGE_BITS 14
86 #endif
87 #include "cpu-all.h"
89 #endif /* CPU_I386_H */