Commit 8579095b81e985fdcdba923d7b3ad75ddf69cb87
1 parent
ecbb5ea1
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
Showing
3 changed files
with
3 additions
and
7 deletions
target-alpha/helper.h
@@ -5,7 +5,6 @@ DEF_HELPER_0(tb_flush, void) | @@ -5,7 +5,6 @@ DEF_HELPER_0(tb_flush, void) | ||
5 | DEF_HELPER_2(excp, void, int, int) | 5 | DEF_HELPER_2(excp, void, int, int) |
6 | DEF_HELPER_1(amask, i64, i64) | 6 | DEF_HELPER_1(amask, i64, i64) |
7 | DEF_HELPER_0(load_pcc, i64) | 7 | DEF_HELPER_0(load_pcc, i64) |
8 | -DEF_HELPER_0(load_implver, i64) | ||
9 | DEF_HELPER_0(rc, i64) | 8 | DEF_HELPER_0(rc, i64) |
10 | DEF_HELPER_0(rs, i64) | 9 | DEF_HELPER_0(rs, i64) |
11 | 10 |
target-alpha/op_helper.c
@@ -58,11 +58,6 @@ uint64_t helper_load_pcc (void) | @@ -58,11 +58,6 @@ uint64_t helper_load_pcc (void) | ||
58 | return 0; | 58 | return 0; |
59 | } | 59 | } |
60 | 60 | ||
61 | -uint64_t helper_load_implver (void) | ||
62 | -{ | ||
63 | - return env->implver; | ||
64 | -} | ||
65 | - | ||
66 | uint64_t helper_load_fpcr (void) | 61 | uint64_t helper_load_fpcr (void) |
67 | { | 62 | { |
68 | uint64_t ret = 0; | 63 | uint64_t ret = 0; |
target-alpha/translate.c
@@ -51,6 +51,7 @@ struct DisasContext { | @@ -51,6 +51,7 @@ struct DisasContext { | ||
51 | #if !defined (CONFIG_USER_ONLY) | 51 | #if !defined (CONFIG_USER_ONLY) |
52 | int pal_mode; | 52 | int pal_mode; |
53 | #endif | 53 | #endif |
54 | + CPUAlphaState *env; | ||
54 | uint32_t amask; | 55 | uint32_t amask; |
55 | }; | 56 | }; |
56 | 57 | ||
@@ -1175,7 +1176,7 @@ static always_inline int translate_one (DisasContext *ctx, uint32_t insn) | @@ -1175,7 +1176,7 @@ static always_inline int translate_one (DisasContext *ctx, uint32_t insn) | ||
1175 | case 0x6C: | 1176 | case 0x6C: |
1176 | /* IMPLVER */ | 1177 | /* IMPLVER */ |
1177 | if (rc != 31) | 1178 | if (rc != 31) |
1178 | - gen_helper_load_implver(cpu_ir[rc]); | 1179 | + tcg_gen_movi_i64(cpu_ir[rc], ctx->env->implver); |
1179 | break; | 1180 | break; |
1180 | default: | 1181 | default: |
1181 | goto invalid_opc; | 1182 | goto invalid_opc; |
@@ -2352,6 +2353,7 @@ static always_inline void gen_intermediate_code_internal (CPUState *env, | @@ -2352,6 +2353,7 @@ static always_inline void gen_intermediate_code_internal (CPUState *env, | ||
2352 | gen_opc_end = gen_opc_buf + OPC_MAX_SIZE; | 2353 | gen_opc_end = gen_opc_buf + OPC_MAX_SIZE; |
2353 | ctx.pc = pc_start; | 2354 | ctx.pc = pc_start; |
2354 | ctx.amask = env->amask; | 2355 | ctx.amask = env->amask; |
2356 | + ctx.env = env; | ||
2355 | #if defined (CONFIG_USER_ONLY) | 2357 | #if defined (CONFIG_USER_ONLY) |
2356 | ctx.mem_idx = 0; | 2358 | ctx.mem_idx = 0; |
2357 | #else | 2359 | #else |