diff options
author | aurel32 <aurel32@c046a42c-6fe2-441c-8c8c-71466251a162> | 2009-04-10 21:27:31 +0000 |
---|---|---|
committer | aurel32 <aurel32@c046a42c-6fe2-441c-8c8c-71466251a162> | 2009-04-10 21:27:31 +0000 |
commit | 8579095b81e985fdcdba923d7b3ad75ddf69cb87 (patch) | |
tree | 465bc0e8c9724666133f88b9f17e6669c255e0c1 | |
parent | ecbb5ea1041d2894f5efb9317acd519c4fd81ad5 (diff) |
target-alpha: remove helper_load_implver
There is no need to use an helper. Directly load the value with tcg code.
Signed-off-by: Tristan Gingold <gingold@adacore.com>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@7074 c046a42c-6fe2-441c-8c8c-71466251a162
-rw-r--r-- | target-alpha/helper.h | 1 | ||||
-rw-r--r-- | target-alpha/op_helper.c | 5 | ||||
-rw-r--r-- | target-alpha/translate.c | 4 |
3 files changed, 3 insertions, 7 deletions
diff --git a/target-alpha/helper.h b/target-alpha/helper.h index 4c4855d093..f62b1c2b55 100644 --- a/target-alpha/helper.h +++ b/target-alpha/helper.h @@ -5,7 +5,6 @@ DEF_HELPER_0(tb_flush, void) DEF_HELPER_2(excp, void, int, int) DEF_HELPER_1(amask, i64, i64) DEF_HELPER_0(load_pcc, i64) -DEF_HELPER_0(load_implver, i64) DEF_HELPER_0(rc, i64) DEF_HELPER_0(rs, i64) diff --git a/target-alpha/op_helper.c b/target-alpha/op_helper.c index e61fa7396c..6b41d2bec5 100644 --- a/target-alpha/op_helper.c +++ b/target-alpha/op_helper.c @@ -58,11 +58,6 @@ uint64_t helper_load_pcc (void) return 0; } -uint64_t helper_load_implver (void) -{ - return env->implver; -} - uint64_t helper_load_fpcr (void) { uint64_t ret = 0; diff --git a/target-alpha/translate.c b/target-alpha/translate.c index ce635b727d..c68a6284d3 100644 --- a/target-alpha/translate.c +++ b/target-alpha/translate.c @@ -51,6 +51,7 @@ struct DisasContext { #if !defined (CONFIG_USER_ONLY) int pal_mode; #endif + CPUAlphaState *env; uint32_t amask; }; @@ -1175,7 +1176,7 @@ static always_inline int translate_one (DisasContext *ctx, uint32_t insn) case 0x6C: /* IMPLVER */ if (rc != 31) - gen_helper_load_implver(cpu_ir[rc]); + tcg_gen_movi_i64(cpu_ir[rc], ctx->env->implver); break; default: goto invalid_opc; @@ -2352,6 +2353,7 @@ static always_inline void gen_intermediate_code_internal (CPUState *env, gen_opc_end = gen_opc_buf + OPC_MAX_SIZE; ctx.pc = pc_start; ctx.amask = env->amask; + ctx.env = env; #if defined (CONFIG_USER_ONLY) ctx.mem_idx = 0; #else |