diff options
author | j_mayer <j_mayer@c046a42c-6fe2-441c-8c8c-71466251a162> | 2007-03-23 09:45:27 +0000 |
---|---|---|
committer | j_mayer <j_mayer@c046a42c-6fe2-441c-8c8c-71466251a162> | 2007-03-23 09:45:27 +0000 |
commit | 426613dbf8cd1120f9e47fb636c4c03bc1ef586c (patch) | |
tree | efc43a2a28033f82155c30d618f9b0b8c18b4b02 /target-ppc/translate_init.c | |
parent | 1b9eb036b9cd2d8b671f59030e8522c64ccea703 (diff) |
Add missing PowerPC 64 instructions
PowerPC 64 fixes.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@2530 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'target-ppc/translate_init.c')
-rw-r--r-- | target-ppc/translate_init.c | 22 |
1 files changed, 15 insertions, 7 deletions
diff --git a/target-ppc/translate_init.c b/target-ppc/translate_init.c index cba597672a..a8ebc0cb4f 100644 --- a/target-ppc/translate_init.c +++ b/target-ppc/translate_init.c @@ -1716,7 +1716,7 @@ static void init_ppc_proc (CPUPPCState *env, ppc_def_t *def) printf("%s: PVR %08x mask %08x => %08x\n", __func__, def->pvr, def->pvr_mask, def->pvr & def->pvr_mask); switch (def->pvr & def->pvr_mask) { - /* Embedded PowerPC from IBM */ + /* Embedded PowerPC from IBM */ case CPU_PPC_401A1: /* 401 A1 family */ case CPU_PPC_401B2: /* 401 B2 family */ case CPU_PPC_401C2: /* 401 C2 family */ @@ -1833,7 +1833,7 @@ static void init_ppc_proc (CPUPPCState *env, ppc_def_t *def) env->id_tlbs = 0; break; - /* Embedded PowerPC from Freescale */ + /* Embedded PowerPC from Freescale */ #if defined (TODO) case CPU_PPC_5xx: break; @@ -1852,7 +1852,7 @@ static void init_ppc_proc (CPUPPCState *env, ppc_def_t *def) break; #endif - /* XXX: Use MPC8540 PVR to implement a test PowerPC BookE target */ + /* XXX: Use MPC8540 PVR to implement a test PowerPC BookE target */ case CPU_PPC_e500v110: case CPU_PPC_e500v120: case CPU_PPC_e500v210: @@ -1872,7 +1872,7 @@ static void init_ppc_proc (CPUPPCState *env, ppc_def_t *def) break; #endif - /* 32 bits PowerPC */ + /* 32 bits PowerPC */ case CPU_PPC_601: /* PowerPC 601 */ gen_spr_generic(env); gen_spr_ne_601(env); @@ -2131,7 +2131,7 @@ static void init_ppc_proc (CPUPPCState *env, ppc_def_t *def) break; #if defined (TODO) - /* G4 family */ + /* G4 family */ case CPU_PPC_7400: /* PowerPC 7400 */ case CPU_PPC_7410C: /* PowerPC 7410 */ case CPU_PPC_7410D: @@ -2154,8 +2154,9 @@ static void init_ppc_proc (CPUPPCState *env, ppc_def_t *def) break; #endif + /* 64 bits PowerPC */ +#if defined (TARGET_PPC64) #if defined (TODO) - /* 64 bits PowerPC */ case CPU_PPC_620: /* PowerPC 620 */ case CPU_PPC_630: /* PowerPC 630 (Power 3) */ case CPU_PPC_631: /* PowerPC 631 (Power 3+) */ @@ -2163,6 +2164,7 @@ static void init_ppc_proc (CPUPPCState *env, ppc_def_t *def) case CPU_PPC_POWER4P: /* Power 4+ */ case CPU_PPC_POWER5: /* Power 5 */ case CPU_PPC_POWER5P: /* Power 5+ */ +#endif case CPU_PPC_970: /* PowerPC 970 */ case CPU_PPC_970FX10: /* PowerPC 970 FX */ case CPU_PPC_970FX20: @@ -2171,16 +2173,20 @@ static void init_ppc_proc (CPUPPCState *env, ppc_def_t *def) case CPU_PPC_970FX31: case CPU_PPC_970MP10: /* PowerPC 970 MP */ case CPU_PPC_970MP11: +#if defined (TODO) case CPU_PPC_CELL10: /* Cell family */ case CPU_PPC_CELL20: case CPU_PPC_CELL30: case CPU_PPC_CELL31: +#endif +#if defined (TODO) case CPU_PPC_RS64: /* Apache (RS64/A35) */ case CPU_PPC_RS64II: /* NorthStar (RS64-II/A50) */ case CPU_PPC_RS64III: /* Pulsar (RS64-III) */ case CPU_PPC_RS64IV: /* IceStar/IStar/SStar (RS64-IV) */ - break; #endif + break; +#endif /* defined (TARGET_PPC64) */ #if defined (TODO) /* POWER */ @@ -3412,6 +3418,7 @@ static ppc_def_t ppc_defs[] = }, #endif /* 64 bits PowerPC */ +#if defined (TARGET_PPC64) #if defined (TODO) /* PowerPC 620 */ { @@ -3650,6 +3657,7 @@ static ppc_def_t ppc_defs[] = .msr_mask = xxx, }, #endif +#endif /* defined (TARGET_PPC64) */ #if defined (TODO) /* POWER2 */ { |