diff --git a/target/alpha/helper.h b/target/alpha/helper.h index 004221df8c..eed3906bd4 100644 --- a/target/alpha/helper.h +++ b/target/alpha/helper.h @@ -4,8 +4,6 @@ DEF_HELPER_FLAGS_1(load_pcc, TCG_CALL_NO_RWG_SE, i64, env) DEF_HELPER_FLAGS_3(check_overflow, TCG_CALL_NO_WG, void, env, i64, i64) DEF_HELPER_FLAGS_1(ctpop, TCG_CALL_NO_RWG_SE, i64, i64) -DEF_HELPER_FLAGS_1(ctlz, TCG_CALL_NO_RWG_SE, i64, i64) -DEF_HELPER_FLAGS_1(cttz, TCG_CALL_NO_RWG_SE, i64, i64) DEF_HELPER_FLAGS_2(zap, TCG_CALL_NO_RWG_SE, i64, i64, i64) DEF_HELPER_FLAGS_2(zapnot, TCG_CALL_NO_RWG_SE, i64, i64, i64) diff --git a/target/alpha/int_helper.c b/target/alpha/int_helper.c index 19bebfe742..3c303bd1db 100644 --- a/target/alpha/int_helper.c +++ b/target/alpha/int_helper.c @@ -29,16 +29,6 @@ uint64_t helper_ctpop(uint64_t arg) return ctpop64(arg); } -uint64_t helper_ctlz(uint64_t arg) -{ - return clz64(arg); -} - -uint64_t helper_cttz(uint64_t arg) -{ - return ctz64(arg); -} - uint64_t helper_zapnot(uint64_t val, uint64_t mskb) { uint64_t mask; diff --git a/target/alpha/translate.c b/target/alpha/translate.c index 5ac227700a..6e2e5638a3 100644 --- a/target/alpha/translate.c +++ b/target/alpha/translate.c @@ -2555,14 +2555,14 @@ static ExitStatus translate_one(DisasContext *ctx, uint32_t insn) REQUIRE_TB_FLAG(TB_FLAGS_AMASK_CIX); REQUIRE_REG_31(ra); REQUIRE_NO_LIT; - gen_helper_ctlz(vc, vb); + tcg_gen_clzi_i64(vc, vb, 64); break; case 0x33: /* CTTZ */ REQUIRE_TB_FLAG(TB_FLAGS_AMASK_CIX); REQUIRE_REG_31(ra); REQUIRE_NO_LIT; - gen_helper_cttz(vc, vb); + tcg_gen_ctzi_i64(vc, vb, 64); break; case 0x34: /* UNPKBW */