Revision 64a88d5d target-sparc/cpu.h
b/target-sparc/cpu.h | ||
---|---|---|
43 | 43 |
#define TT_TOVF 0x0a |
44 | 44 |
#define TT_EXTINT 0x10 |
45 | 45 |
#define TT_CODE_ACCESS 0x21 |
46 |
#define TT_UNIMP_FLUSH 0x25 |
|
46 | 47 |
#define TT_DATA_ACCESS 0x29 |
47 | 48 |
#define TT_DIV_ZERO 0x2a |
48 | 49 |
#define TT_NCP_INSN 0x24 |
... | ... | |
52 | 53 |
#define TT_TMISS 0x09 |
53 | 54 |
#define TT_CODE_ACCESS 0x0a |
54 | 55 |
#define TT_ILL_INSN 0x10 |
56 |
#define TT_UNIMP_FLUSH TT_ILL_INSN |
|
55 | 57 |
#define TT_PRIV_INSN 0x11 |
56 | 58 |
#define TT_NFPU_INSN 0x20 |
57 | 59 |
#define TT_FP_EXCP 0x21 |
... | ... | |
244 | 246 |
/* temporary float registers */ |
245 | 247 |
float32 ft0, ft1; |
246 | 248 |
float64 dt0, dt1; |
247 |
#if defined(CONFIG_USER_ONLY) |
|
248 | 249 |
float128 qt0, qt1; |
249 |
#endif |
|
250 | 250 |
float_status fp_status; |
251 | 251 |
#if defined(TARGET_SPARC64) |
252 | 252 |
#define MAXTL 4 |
... | ... | |
272 | 272 |
void *hstick; // UA 2005 |
273 | 273 |
#endif |
274 | 274 |
target_ulong t1, t2; |
275 |
uint32_t features; |
|
275 | 276 |
} CPUSPARCState; |
277 |
|
|
278 |
#define CPU_FEATURE_FLOAT (1 << 0) |
|
279 |
#define CPU_FEATURE_FLOAT128 (1 << 1) |
|
280 |
#define CPU_FEATURE_SWAP (1 << 2) |
|
281 |
#define CPU_FEATURE_MUL (1 << 3) |
|
282 |
#define CPU_FEATURE_DIV (1 << 4) |
|
283 |
#define CPU_FEATURE_FLUSH (1 << 5) |
|
284 |
#define CPU_FEATURE_FSQRT (1 << 6) |
|
285 |
#define CPU_FEATURE_FMUL (1 << 7) |
|
286 |
#define CPU_FEATURE_VIS1 (1 << 8) |
|
287 |
#define CPU_FEATURE_VIS2 (1 << 9) |
|
288 |
#ifndef TARGET_SPARC64 |
|
289 |
#define CPU_DEFAULT_FEATURES (CPU_FEATURE_FLOAT | CPU_FEATURE_SWAP | \ |
|
290 |
CPU_FEATURE_MUL | CPU_FEATURE_DIV | \ |
|
291 |
CPU_FEATURE_FLUSH | CPU_FEATURE_FSQRT | \ |
|
292 |
CPU_FEATURE_FMUL) |
|
293 |
#else |
|
294 |
#define CPU_DEFAULT_FEATURES (CPU_FEATURE_FLOAT | CPU_FEATURE_SWAP | \ |
|
295 |
CPU_FEATURE_MUL | CPU_FEATURE_DIV | \ |
|
296 |
CPU_FEATURE_FLUSH | CPU_FEATURE_FSQRT | \ |
|
297 |
CPU_FEATURE_FMUL | CPU_FEATURE_VIS1 | \ |
|
298 |
CPU_FEATURE_VIS2) |
|
299 |
#endif |
|
300 |
|
|
276 | 301 |
#if defined(TARGET_SPARC64) |
277 | 302 |
#define GET_FSR32(env) (env->fsr & 0xcfc1ffff) |
278 | 303 |
#define PUT_FSR32(env, val) do { uint32_t _tmp = val; \ |
... | ... | |
292 | 317 |
CPUSPARCState *cpu_sparc_init(const char *cpu_model); |
293 | 318 |
void gen_intermediate_code_init(CPUSPARCState *env); |
294 | 319 |
int cpu_sparc_exec(CPUSPARCState *s); |
295 |
int cpu_sparc_close(CPUSPARCState *s); |
|
296 | 320 |
void sparc_cpu_list (FILE *f, int (*cpu_fprintf)(FILE *f, const char *fmt, |
297 | 321 |
...)); |
298 | 322 |
void cpu_sparc_set_id(CPUSPARCState *env, unsigned int cpu); |
Also available in: Unified diff