Revision a062e36c linux-user/main.c

b/linux-user/main.c
664 664
#endif
665 665

  
666 666
#ifdef TARGET_PPC
667

  
668 667
static inline uint64_t cpu_ppc_get_tb (CPUState *env)
669 668
{
670 669
    /* TO FIX */
......
681 680
    return cpu_ppc_get_tb(env) >> 32;
682 681
}
683 682

  
684
static void cpu_ppc_store_tb (CPUState *env, uint64_t value)
685
{
686
    /* TO FIX */
687
}
688

  
689
void cpu_ppc_store_tbu (CPUState *env, uint32_t value)
683
uint32_t cpu_ppc_load_atbl (CPUState *env)
690 684
{
691
    cpu_ppc_store_tb(env, ((uint64_t)value << 32) | cpu_ppc_load_tbl(env));
685
    return cpu_ppc_get_tb(env) & 0xFFFFFFFF;
692 686
}
693 687

  
694
void cpu_ppc_store_tbl (CPUState *env, uint32_t value)
688
uint32_t cpu_ppc_load_atbu (CPUState *env)
695 689
{
696
    cpu_ppc_store_tb(env, ((uint64_t)cpu_ppc_load_tbl(env) << 32) | value);
690
    return cpu_ppc_get_tb(env) >> 32;
697 691
}
698 692

  
699
void cpu_ppc601_store_rtcu (CPUState *env, uint32_t value)
700
__attribute__ (( alias ("cpu_ppc_store_tbu") ));
701

  
702 693
uint32_t cpu_ppc601_load_rtcu (CPUState *env)
703 694
__attribute__ (( alias ("cpu_ppc_load_tbu") ));
704 695

  
705
void cpu_ppc601_store_rtcl (CPUState *env, uint32_t value)
706
{
707
    cpu_ppc_store_tbl(env, value & 0x3FFFFF80);
708
}
709

  
710 696
uint32_t cpu_ppc601_load_rtcl (CPUState *env)
711 697
{
712 698
    return cpu_ppc_load_tbl(env) & 0x3FFFFF80;

Also available in: Unified diff