OSDN Git Service

target/riscv: Fix checking of whether instruciton at 'pc_next' spans pages
authorShaobo Song <songshaobo@eswincomputing.com>
Mon, 20 Feb 2023 07:27:32 +0000 (07:27 +0000)
committerPalmer Dabbelt <palmer@rivosinc.com>
Thu, 2 Mar 2023 00:59:36 +0000 (16:59 -0800)
commitae9c326fb6f9b580b18de9bce1438229bfaa5215
tree34e3c5c3c7d702f5190ebed853c2ed9cd2cbb5e2
parent73b9da4aa39cd2f8b485771763bc207faf9c6893
target/riscv: Fix checking of whether instruciton at 'pc_next' spans pages

This bug has a noticeable behavior of falling back to the main loop and
respawning a redundant translation block including a single instruction
when the end address of the compressive instruction is exactly on a page
boundary, and slows down running system performance.

Signed-off-by: Shaobo Song <songshaobo@eswincomputing.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-ID: <20230220072732.568-1-songshaobo@eswincomputing.com>
Signed-off-by: Palmer Dabbelt <palmer@rivosinc.com>
target/riscv/translate.c