target/loongarch: Use actual operand size with vbsrl checkHardcoded 32 bytes is used for vbsrl emulation check, there isproblem when options lsx=on,lasx=off is used for vbsrl.v instructionin TCG
target/loongarch: Use actual operand size with vbsrl checkHardcoded 32 bytes is used for vbsrl emulation check, there isproblem when options lsx=on,lasx=off is used for vbsrl.v instructionin TCG mode. It injects LASX exception rather LSX exception.Here actual operand size is used.Cc: qemu-stable@nongnu.orgFixes: df97f338076 ("target/loongarch: Implement xvreplve xvinsve0 xvpickve")Signed-off-by: Bibo Mao <maobibo@loongson.cn>Reviewed-by: Richard Henderson <richard.henderson@linaro.org>Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>(cherry picked from commit d41989e7548397b469ec9c7be4cee699321a317e)Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
show more ...
target/loongarch: Remove avail_64 in trans_srai_w() and simplify itSince srai.w is a valid instruction on la32, remove the avail_64 checkand simplify trans_srai_w().Fixes: c0c0461e3a06 ("target/
target/loongarch: Remove avail_64 in trans_srai_w() and simplify itSince srai.w is a valid instruction on la32, remove the avail_64 checkand simplify trans_srai_w().Fixes: c0c0461e3a06 ("target/loongarch: Add avail_64 to check la64-only instructions")Reviewed-by: Richard Henderson <richard.henderson@linaro.org>Signed-off-by: Feiyang Chen <chris.chenfeiyang@gmail.com>Message-Id: <20240628033357.50027-1-chris.chenfeiyang@gmail.com>Signed-off-by: Song Gao <gaosong@loongson.cn>
target/loongarch: Fix qemu-loongarch64 hang when executing 'll.d $t0, $t0, 0'On gen_ll, if a->imm is zero, make_address_x return src1,but the load to destination may clobber src1. We use a newdes
target/loongarch: Fix qemu-loongarch64 hang when executing 'll.d $t0, $t0, 0'On gen_ll, if a->imm is zero, make_address_x return src1,but the load to destination may clobber src1. We use a newdestination to fix this problem.Fixes: c5af6628f4be (target/loongarch: Extract make_address_i() helper)Reviewed-by: Richard Henderson <richard.henderson@linaro.org>Suggested-by: Richard Henderson <richard.henderson@linaro.org>Signed-off-by: Song Gao <gaosong@loongson.cn>Message-Id: <20240320013955.1561311-1-gaosong@loongson.cn>
target/loongarch: Rename MMU_IDX_*The expected form is MMU_FOO_IDX, not MMU_IDX_FOO.Rename to match generic code.Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>Signed-off-by: Richard He
target/loongarch: Rename MMU_IDX_*The expected form is MMU_FOO_IDX, not MMU_IDX_FOO.Rename to match generic code.Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
target/loongarch: move translate modules to tcg/Introduce the target/loongarch/tcg directory. Its purpose is to hold the TCGcode that is selected by CONFIG_TCGReviewed-by: Philippe Mathieu-Daudé
target/loongarch: move translate modules to tcg/Introduce the target/loongarch/tcg directory. Its purpose is to hold the TCGcode that is selected by CONFIG_TCGReviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>Signed-off-by: Song Gao <gaosong@loongson.cn>Message-Id: <20240102020200.3462097-2-gaosong@loongson.cn>