Revision 9fddaa0c linux-user/main.c
b/linux-user/main.c | ||
---|---|---|
504 | 504 |
#endif |
505 | 505 |
|
506 | 506 |
#ifdef TARGET_PPC |
507 |
|
|
508 |
static inline uint64_t cpu_ppc_get_tb (CPUState *env) |
|
509 |
{ |
|
510 |
/* TO FIX */ |
|
511 |
return 0; |
|
512 |
} |
|
513 |
|
|
514 |
uint32_t cpu_ppc_load_tbl (CPUState *env) |
|
515 |
{ |
|
516 |
return cpu_ppc_get_tb(env) & 0xFFFFFFFF; |
|
517 |
} |
|
518 |
|
|
519 |
uint32_t cpu_ppc_load_tbu (CPUState *env) |
|
520 |
{ |
|
521 |
return cpu_ppc_get_tb(env) >> 32; |
|
522 |
} |
|
523 |
|
|
524 |
static void cpu_ppc_store_tb (CPUState *env, uint64_t value) |
|
525 |
{ |
|
526 |
/* TO FIX */ |
|
527 |
} |
|
528 |
|
|
529 |
void cpu_ppc_store_tbu (CPUState *env, uint32_t value) |
|
530 |
{ |
|
531 |
cpu_ppc_store_tb(env, ((uint64_t)value << 32) | cpu_ppc_load_tbl(env)); |
|
532 |
} |
|
533 |
|
|
534 |
void cpu_ppc_store_tbl (CPUState *env, uint32_t value) |
|
535 |
{ |
|
536 |
cpu_ppc_store_tb(env, ((uint64_t)cpu_ppc_load_tbl(env) << 32) | value); |
|
537 |
} |
|
538 |
|
|
539 |
uint32_t cpu_ppc_load_decr (CPUState *env) |
|
540 |
{ |
|
541 |
/* TO FIX */ |
|
542 |
return -1; |
|
543 |
} |
|
544 |
|
|
545 |
void cpu_ppc_store_decr (CPUState *env, uint32_t value) |
|
546 |
{ |
|
547 |
/* TO FIX */ |
|
548 |
} |
|
549 |
|
|
507 | 550 |
void cpu_loop(CPUPPCState *env) |
508 | 551 |
{ |
509 | 552 |
target_siginfo_t info; |
... | ... | |
812 | 855 |
abort(); |
813 | 856 |
case EXCP_MTMSR: |
814 | 857 |
/* We reloaded the msr, just go on */ |
815 |
if (msr_pr) { |
|
858 |
if (msr_pr == 0) {
|
|
816 | 859 |
fprintf(stderr, "Tried to go into supervisor mode !\n"); |
817 | 860 |
if (loglevel) |
818 | 861 |
fprintf(logfile, "Tried to go into supervisor mode !\n"); |
... | ... | |
842 | 885 |
} |
843 | 886 |
abort(); |
844 | 887 |
} |
845 |
if (trapnr < EXCP_PPC_MAX) |
|
846 |
env->exceptions &= ~(1 << trapnr); |
|
847 | 888 |
process_pending_signals(env); |
848 |
if (env->exceptions != 0) { |
|
849 |
check_exception_state(env); |
|
850 |
} |
|
851 | 889 |
} |
852 | 890 |
} |
853 | 891 |
#endif |
Also available in: Unified diff