From ae8ecd423150456e238a9d45f107b97e94957b78 Mon Sep 17 00:00:00 2001 From: aurel32 Date: Tue, 16 Sep 2008 22:44:02 +0000 Subject: target-alpha: convert arith2 instructions to TCG Replace gen_arith2 generic macro and dyngon ops by instruction specific optimized TCG code. Signed-off-by: Aurelien Jarno git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5235 c046a42c-6fe2-441c-8c8c-71466251a162 --- target-alpha/op_helper.c | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) (limited to 'target-alpha/op_helper.c') diff --git a/target-alpha/op_helper.c b/target-alpha/op_helper.c index 36b98b8..745c44d 100644 --- a/target-alpha/op_helper.c +++ b/target-alpha/op_helper.c @@ -65,7 +65,7 @@ void helper_excp (uint32_t excp, uint32_t error) cpu_loop_exit(); } -void helper_amask (void) +uint64_t helper_amask (uint64_t arg) { switch (env->implver) { case IMPLVER_2106x: @@ -74,9 +74,10 @@ void helper_amask (void) case IMPLVER_21164: case IMPLVER_21264: case IMPLVER_21364: - T0 &= ~env->amask; + arg &= ~env->amask; break; } + return arg; } void helper_load_pcc (void) @@ -210,19 +211,19 @@ void helper_mulqv () T0 = tl; } -void helper_ctpop (void) +uint64_t helper_ctpop (uint64_t arg) { - T0 = ctpop64(T0); + return ctpop64(arg); } -void helper_ctlz (void) +uint64_t helper_ctlz (uint64_t arg) { - T0 = clz64(T0); + return clz64(arg); } -void helper_cttz (void) +uint64_t helper_cttz (uint64_t arg) { - T0 = ctz64(T0); + return ctz64(arg); } static always_inline uint64_t byte_zap (uint64_t op, uint8_t mskb) -- cgit v1.1