aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Maydell <peter.maydell@linaro.org>2023-04-06 16:59:46 +0100
committerPaolo Bonzini <pbonzini@redhat.com>2023-04-20 11:17:35 +0200
commit987b63f24afe027a09b1c549c05a032a477f7e96 (patch)
tree7f24ecc43341c27da30ec988deb14d776960b26f
parent8041e9e314819de9f54f3e267a0479e329561b96 (diff)
downloadqemu-987b63f24afe027a09b1c549c05a032a477f7e96.zip
qemu-987b63f24afe027a09b1c549c05a032a477f7e96.tar.gz
qemu-987b63f24afe027a09b1c549c05a032a477f7e96.tar.bz2
target/i386: Avoid unreachable variable declaration in mmu_translate()
Coverity complains (CID 1507880) that the declaration "int error_code;" in mmu_translate() is unreachable code. Since this is only a declaration, this isn't actually a bug, but: * it's a bear-trap for future changes, because if it was changed to include an initialization 'int error_code = foo;' then the initialization wouldn't actually happen (being dead code) * it's against our coding style, which wants declarations to be at the start of blocks * it means that anybody reading the code has to go and look up exactly what the C rules are for skipping over variable declarations using a goto Move the declaration to the top of the function. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Message-Id: <20230406155946.3362077-1-peter.maydell@linaro.org> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
-rw-r--r--target/i386/tcg/sysemu/excp_helper.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/target/i386/tcg/sysemu/excp_helper.c b/target/i386/tcg/sysemu/excp_helper.c
index e87f90d..b5f0abf 100644
--- a/target/i386/tcg/sysemu/excp_helper.c
+++ b/target/i386/tcg/sysemu/excp_helper.c
@@ -147,6 +147,7 @@ static bool mmu_translate(CPUX86State *env, const TranslateParams *in,
hwaddr pte_addr, paddr;
uint32_t pkr;
int page_size;
+ int error_code;
restart_all:
rsvd_mask = ~MAKE_64BIT_MASK(0, env_archcpu(env)->phys_bits);
@@ -467,7 +468,6 @@ do_check_protect_pse36:
out->page_size = page_size;
return true;
- int error_code;
do_fault_rsvd:
error_code = PG_ERROR_RSVD_MASK;
goto do_fault_cont;