summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Henderson <richard.henderson@linaro.org>2018-05-08 11:55:20 -0700
committerPeter Maydell <peter.maydell@linaro.org>2018-05-11 11:12:02 +0100
commit5cbc61110738accb16ff8ed1f08a32906d02790f (patch)
tree1f6cc8d4c74ca5d08d7a4cff1796097db1090c11
parenta8a94ef72678c56768c1c74dcaf6ee3c92f2af1c (diff)
downloadqemu-5cbc61110738accb16ff8ed1f08a32906d02790f.tar.gz
target/m68k: Fix build Werror with gcc 8.0.1
Fedora 28 ships with the released gcc 8. The Werror stems from the compiler finding a path through the second switch via a missing default case in which src1 is uninitialized, and not being able to prove that the missing default case is unreachable due to the first switch. Simplify the second switch to merge default with OS_LONG, which returns directly. This removes the unreachable path. Cc: Laurent Vivier <laurent@vivier.eu> Signed-off-by: Richard Henderson <richard.henderson@linaro.org> Reviewed-by: Laurent Vivier <laurent@vivier.eu> Message-id: 20180508185520.23757-1-richard.henderson@linaro.org Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
-rw-r--r--target/m68k/translate.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/target/m68k/translate.c b/target/m68k/translate.c
index e407ba2db3..44a0ac4e2e 100644
--- a/target/m68k/translate.c
+++ b/target/m68k/translate.c
@@ -2297,7 +2297,7 @@ DISAS_INSN(arith_im)
im = tcg_const_i32(read_im32(env, s));
break;
default:
- abort();
+ g_assert_not_reached();
}
if (with_SR) {
@@ -2317,7 +2317,8 @@ DISAS_INSN(arith_im)
}
src1 = gen_get_sr(s);
break;
- case OS_LONG:
+ default:
+ /* OS_LONG; others already g_assert_not_reached. */
disas_undef(env, s, insn);
return;
}