Skip to content
Snippets Groups Projects
Commit 673be371 authored by Richard Henderson's avatar Richard Henderson Committed by Alistair Francis
Browse files

target/riscv: Adjust trans_rev8_32 for riscv64


When target_long is 64-bit, we still want a 32-bit bswap for rev8.
Since this opcode is specific to RV32, we need not conditionalize.

Acked-by: default avatarAlistair Francis <alistair.francis@wdc.com>
Reviewed-by: default avatarLIU Zhiwei <zhiwei_liu@c-sky.com>
Signed-off-by: default avatarRichard Henderson <richard.henderson@linaro.org>
Message-id: 20211020031709.359469-12-richard.henderson@linaro.org
Signed-off-by: default avatarAlistair Francis <alistair.francis@wdc.com>
parent 80347ae9
No related branches found
No related tags found
No related merge requests found
......@@ -232,11 +232,16 @@ static bool trans_rol(DisasContext *ctx, arg_rol *a)
return gen_shift(ctx, a, EXT_NONE, tcg_gen_rotl_tl);
}
static void gen_rev8_32(TCGv ret, TCGv src1)
{
tcg_gen_bswap32_tl(ret, src1, TCG_BSWAP_OS);
}
static bool trans_rev8_32(DisasContext *ctx, arg_rev8_32 *a)
{
REQUIRE_32BIT(ctx);
REQUIRE_ZBB(ctx);
return gen_unary(ctx, a, EXT_NONE, tcg_gen_bswap_tl);
return gen_unary(ctx, a, EXT_NONE, gen_rev8_32);
}
static bool trans_rev8_64(DisasContext *ctx, arg_rev8_64 *a)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment