Commit d73bd7ebec7ca57e95c868c3ec017598de6ea3ee
1 parent
a35f3ec7
Remove hardcoded values in x86 CPU definitions
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4181 c046a42c-6fe2-441c-8c8c-71466251a162
Showing
1 changed file
with
11 additions
and
4 deletions
target-i386/helper2.c
| @@ -128,6 +128,13 @@ typedef struct x86_def_t { | @@ -128,6 +128,13 @@ typedef struct x86_def_t { | ||
| 128 | uint32_t xlevel; | 128 | uint32_t xlevel; |
| 129 | } x86_def_t; | 129 | } x86_def_t; |
| 130 | 130 | ||
| 131 | +#define I486_FEATURES (CPUID_FP87 | CPUID_VME | CPUID_PSE) | ||
| 132 | +#define PENTIUM_FEATURES (I486_FEATURES | CPUID_DE | CPUID_TSC | \ | ||
| 133 | + CPUID_MSR | CPUID_MCE | CPUID_CX8 | CPUID_MMX) | ||
| 134 | +#define PENTIUM2_FEATURES (PENTIUM_FEATURES | CPUID_PAE | CPUID_SEP | \ | ||
| 135 | + CPUID_MTRR | CPUID_PGE | CPUID_MCA | CPUID_CMOV | CPUID_PAT | \ | ||
| 136 | + CPUID_PSE36 | CPUID_FXSR) | ||
| 137 | +#define PENTIUM3_FEATURES (PENTIUM_FEATURES | CPUID_SSE) | ||
| 131 | #define PPRO_FEATURES (CPUID_FP87 | CPUID_DE | CPUID_PSE | CPUID_TSC | \ | 138 | #define PPRO_FEATURES (CPUID_FP87 | CPUID_DE | CPUID_PSE | CPUID_TSC | \ |
| 132 | CPUID_MSR | CPUID_MCE | CPUID_CX8 | CPUID_PGE | CPUID_CMOV | \ | 139 | CPUID_MSR | CPUID_MCE | CPUID_CX8 | CPUID_PGE | CPUID_CMOV | \ |
| 133 | CPUID_PAT | CPUID_FXSR | CPUID_MMX | CPUID_SSE | CPUID_SSE2 | \ | 140 | CPUID_PAT | CPUID_FXSR | CPUID_MMX | CPUID_SSE | CPUID_SSE2 | \ |
| @@ -172,7 +179,7 @@ static x86_def_t x86_defs[] = { | @@ -172,7 +179,7 @@ static x86_def_t x86_defs[] = { | ||
| 172 | .family = 4, | 179 | .family = 4, |
| 173 | .model = 0, | 180 | .model = 0, |
| 174 | .stepping = 0, | 181 | .stepping = 0, |
| 175 | - .features = 0x0000000B, | 182 | + .features = I486_FEATURES, |
| 176 | .xlevel = 0, | 183 | .xlevel = 0, |
| 177 | }, | 184 | }, |
| 178 | { | 185 | { |
| @@ -181,7 +188,7 @@ static x86_def_t x86_defs[] = { | @@ -181,7 +188,7 @@ static x86_def_t x86_defs[] = { | ||
| 181 | .family = 5, | 188 | .family = 5, |
| 182 | .model = 4, | 189 | .model = 4, |
| 183 | .stepping = 3, | 190 | .stepping = 3, |
| 184 | - .features = 0x008001BF, | 191 | + .features = PENTIUM_FEATURES, |
| 185 | .xlevel = 0, | 192 | .xlevel = 0, |
| 186 | }, | 193 | }, |
| 187 | { | 194 | { |
| @@ -190,7 +197,7 @@ static x86_def_t x86_defs[] = { | @@ -190,7 +197,7 @@ static x86_def_t x86_defs[] = { | ||
| 190 | .family = 6, | 197 | .family = 6, |
| 191 | .model = 5, | 198 | .model = 5, |
| 192 | .stepping = 2, | 199 | .stepping = 2, |
| 193 | - .features = 0x0183F9FF, | 200 | + .features = PENTIUM2_FEATURES, |
| 194 | .xlevel = 0, | 201 | .xlevel = 0, |
| 195 | }, | 202 | }, |
| 196 | { | 203 | { |
| @@ -199,7 +206,7 @@ static x86_def_t x86_defs[] = { | @@ -199,7 +206,7 @@ static x86_def_t x86_defs[] = { | ||
| 199 | .family = 6, | 206 | .family = 6, |
| 200 | .model = 7, | 207 | .model = 7, |
| 201 | .stepping = 3, | 208 | .stepping = 3, |
| 202 | - .features = 0x0383F9FF, | 209 | + .features = PENTIUM3_FEATURES, |
| 203 | .xlevel = 0, | 210 | .xlevel = 0, |
| 204 | }, | 211 | }, |
| 205 | { | 212 | { |