aboutsummaryrefslogtreecommitdiff
path: root/target/riscv/translate.c
diff options
context:
space:
mode:
authorWeiwei Li <liweiwei@iscas.ac.cn>2022-04-23 10:34:58 +0800
committerAlistair Francis <alistair.francis@wdc.com>2022-04-29 10:47:45 +1000
commitd8e81e3c18231e4dbab562f53e3e6cf7ad77735f (patch)
tree3b3630f148f9b0e2cccdd52b9b379b02afd687e6 /target/riscv/translate.c
parenteef82872be58f4e0362319bfe4348bbe4ad71c5b (diff)
downloadqemu-d8e81e3c18231e4dbab562f53e3e6cf7ad77735f.zip
qemu-d8e81e3c18231e4dbab562f53e3e6cf7ad77735f.tar.gz
qemu-d8e81e3c18231e4dbab562f53e3e6cf7ad77735f.tar.bz2
target/riscv: rvk: add support for zbkb extension
- reuse partial instructions of zbb extension, update extension check for them - add brev8, pack, packh, packw, unzip, zip instructions Signed-off-by: Weiwei Li <liweiwei@iscas.ac.cn> Signed-off-by: Junqiang Wang <wangjunqiang@iscas.ac.cn> Acked-by: Alistair Francis <alistair.francis@wdc.com> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Message-Id: <20220423023510.30794-3-liweiwei@iscas.ac.cn> Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
Diffstat (limited to 'target/riscv/translate.c')
-rw-r--r--target/riscv/translate.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/target/riscv/translate.c b/target/riscv/translate.c
index 6495726..121ead7 100644
--- a/target/riscv/translate.c
+++ b/target/riscv/translate.c
@@ -688,6 +688,13 @@ EX_SH(12)
} \
} while (0)
+#define REQUIRE_EITHER_EXT(ctx, A, B) do { \
+ if (!ctx->cfg_ptr->ext_##A && \
+ !ctx->cfg_ptr->ext_##B) { \
+ return false; \
+ } \
+} while (0)
+
static int ex_rvc_register(DisasContext *ctx, int reg)
{
return 8 + reg;