]> git.ipfire.org Git - thirdparty/qemu.git/commit
tcg/loongarch64: Fix tcg_out_movi vs some pcrel pointers
authorRichard Henderson <richard.henderson@linaro.org>
Wed, 19 Jun 2024 05:41:13 +0000 (05:41 +0000)
committerMichael Tokarev <mjt@tls.msk.ru>
Thu, 20 Jun 2024 12:23:05 +0000 (15:23 +0300)
commit1229d6071403679deacd49b01083b96ba98a0259
tree01d874d123a57326a64da265d43a24d3aeb11add
parentf4564fc8d262808cc530d22d70324921138e7077
tcg/loongarch64: Fix tcg_out_movi vs some pcrel pointers

Simplify the logic for two-part, 32-bit pc-relative addresses.
Rather than assume all such fit in int32_t, do some arithmetic
and assert a result, do some arithmetic first and then check
to see if the pieces are in range.

Cc: qemu-stable@nongnu.org
Fixes: dacc51720db ("tcg/loongarch64: Implement tcg_out_mov and tcg_out_movi")
Reviewed-by: Song Gao <gaosong@loongson.cn>
Reported-by: Song Gao <gaosong@loongson.cn>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
(cherry picked from commit 521d7fb3ebdf88112ed13556a93e3037742b9eb8)
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
tcg/loongarch64/tcg-target.c.inc