diff options
author | David Daney | 2022-10-14 13:23:22 +0200 |
---|---|---|
committer | Philippe Mathieu-Daudé | 2022-10-31 11:32:07 +0100 |
commit | a6d89b454cec2de235595ea311d3cc3c49c3aaaa (patch) | |
tree | 390ce98002871c64b12abe9596f9ac3455486ed1 /page-vary-common.c | |
parent | disas/nanomips: Rename nanomips.cpp to nanomips.c (diff) | |
download | qemu-a6d89b454cec2de235595ea311d3cc3c49c3aaaa.tar.gz qemu-a6d89b454cec2de235595ea311d3cc3c49c3aaaa.tar.xz qemu-a6d89b454cec2de235595ea311d3cc3c49c3aaaa.zip |
disas/mips: Fix branch displacement for BEQZC and BNEZC
disas/mips.c got added in commit 6643d27ea0 ("MIPS disas support")
apparently based on binutils tag 'gdb_6_1-branchpoint' [1].
Back then, MIPSr6 was not supported (added in binutils commit
7361da2c952 during 2014 [2]).
Binutils codebase diverged so much over the last 18 years, it is
not possible to simply cherry-pick their changes, so fix it BEQZC /
BNEZC 21-bit signed branch displacement locally.
[1] https://sourceware.org/git/?p=binutils-gdb.git;a=blob;f=opcodes/mips-dis.c;hb=refs/tags/gdb_6_1-branchpoint
[2] https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=7361da2c952
Fixes: 31837be3ee ("target-mips: add compact and CP1 branches")
Signed-off-by: David Daney <david.daney@fungible.com>
Reviewed-by: Marcin Nowakowski <marcin.nowakowski@fungible.com>
[PMD: Added commit description]
Signed-off-by: Philippe Mathieu-Daudé <philmd@fungible.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <20221014112322.61119-1-philmd@fungible.com>
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Diffstat (limited to 'page-vary-common.c')
0 files changed, 0 insertions, 0 deletions