From 5b8105fa50b0dfde4ac49d7b1dd8044fb82caec6 Mon Sep 17 00:00:00 2001 From: j_mayer Date: Mon, 19 Nov 2007 11:39:29 +0000 Subject: [PATCH] PowerPC instruction fixes: - hrfid is part of the hypervisor extension - fix stfiwx naming git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3705 c046a42c-6fe2-441c-8c8c-71466251a162 --- target-ppc/op_mem.h | 12 ++++++------ target-ppc/translate.c | 6 +++--- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/target-ppc/op_mem.h b/target-ppc/op_mem.h index 971cc18381..a1b3e36c24 100644 --- a/target-ppc/op_mem.h +++ b/target-ppc/op_mem.h @@ -414,7 +414,7 @@ static always_inline void glue(stfs, MEMSUFFIX) (target_ulong EA, double d) #define WORD0 1 #define WORD1 0 #endif -static always_inline void glue(stfiwx, MEMSUFFIX) (target_ulong EA, double d) +static always_inline void glue(stfiw, MEMSUFFIX) (target_ulong EA, double d) { union { double d; @@ -430,11 +430,11 @@ static always_inline void glue(stfiwx, MEMSUFFIX) (target_ulong EA, double d) PPC_STF_OP(fd, stfq); PPC_STF_OP(fs, stfs); -PPC_STF_OP(fiwx, stfiwx); +PPC_STF_OP(fiw, stfiw); #if defined(TARGET_PPC64) PPC_STF_OP_64(fd, stfq); PPC_STF_OP_64(fs, stfs); -PPC_STF_OP_64(fiwx, stfiwx); +PPC_STF_OP_64(fiw, stfiw); #endif static always_inline void glue(stfqr, MEMSUFFIX) (target_ulong EA, double d) @@ -471,7 +471,7 @@ static always_inline void glue(stfsr, MEMSUFFIX) (target_ulong EA, double d) glue(stfl, MEMSUFFIX)(EA, u.f); } -static always_inline void glue(stfiwxr, MEMSUFFIX) (target_ulong EA, double d) +static always_inline void glue(stfiwr, MEMSUFFIX) (target_ulong EA, double d) { union { double d; @@ -489,11 +489,11 @@ static always_inline void glue(stfiwxr, MEMSUFFIX) (target_ulong EA, double d) PPC_STF_OP(fd_le, stfqr); PPC_STF_OP(fs_le, stfsr); -PPC_STF_OP(fiwx_le, stfiwxr); +PPC_STF_OP(fiw_le, stfiwr); #if defined(TARGET_PPC64) PPC_STF_OP_64(fd_le, stfqr); PPC_STF_OP_64(fs_le, stfsr); -PPC_STF_OP_64(fiwx_le, stfiwxr); +PPC_STF_OP_64(fiw_le, stfiwr); #endif /*** Floating-point load ***/ diff --git a/target-ppc/translate.c b/target-ppc/translate.c index d7d5db26e5..45e8d1b89f 100644 --- a/target-ppc/translate.c +++ b/target-ppc/translate.c @@ -2764,8 +2764,8 @@ GEN_STFS(fs, 0x14, PPC_FLOAT); /* Optional: */ /* stfiwx */ -OP_ST_TABLE(fiwx); -GEN_STXF(fiwx, 0x17, 0x1E, PPC_FLOAT_STFIWX); +OP_ST_TABLE(fiw); +GEN_STXF(fiw, 0x17, 0x1E, PPC_FLOAT_STFIWX); /*** Branch ***/ static always_inline void gen_goto_tb (DisasContext *ctx, int n, @@ -3088,7 +3088,7 @@ GEN_HANDLER(rfid, 0x13, 0x12, 0x00, 0x03FF8001, PPC_64B) #endif } -GEN_HANDLER(hrfid, 0x13, 0x12, 0x08, 0x03FF8001, PPC_64B) +GEN_HANDLER(hrfid, 0x13, 0x12, 0x08, 0x03FF8001, PPC_64H) { #if defined(CONFIG_USER_ONLY) GEN_EXCP_PRIVOPC(ctx);