From: Chen Qun Date: Fri, 11 Dec 2020 15:24:19 +0000 (+0100) Subject: target/i386: silence the compiler warnings in gen_shiftd_rm_T1 X-Git-Tag: v6.0.0-rc0~173^2~9 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=bdddc1c425e8e39031bf726b54a6e7388337a7f0;p=thirdparty%2Fqemu.git target/i386: silence the compiler warnings in gen_shiftd_rm_T1 The current "#ifdef TARGET_X86_64" statement affects the compiler's determination of fall through. When using -Wimplicit-fallthrough in our CFLAGS, the compiler showed warning: target/i386/translate.c: In function ‘gen_shiftd_rm_T1’: target/i386/translate.c:1773:12: warning: this statement may fall through [-Wimplicit-fallthrough=] if (is_right) { ^ target/i386/translate.c:1782:5: note: here case MO_32: ^~~~ Reported-by: Euler Robot Signed-off-by: Chen Qun Signed-off-by: Thomas Huth Reviewed-by: Richard Henderson Reviewed-by: Thomas Huth Message-Id: <20201211152426.350966-6-thuth@redhat.com> Signed-off-by: Thomas Huth --- diff --git a/target/i386/tcg/translate.c b/target/i386/tcg/translate.c index 750f75c2578..11db2f3c8d2 100644 --- a/target/i386/tcg/translate.c +++ b/target/i386/tcg/translate.c @@ -1778,9 +1778,12 @@ static void gen_shiftd_rm_T1(DisasContext *s, MemOp ot, int op1, } else { tcg_gen_deposit_tl(s->T1, s->T0, s->T1, 16, 16); } - /* FALLTHRU */ -#ifdef TARGET_X86_64 + /* + * If TARGET_X86_64 defined then fall through into MO_32 case, + * otherwise fall through default case. + */ case MO_32: +#ifdef TARGET_X86_64 /* Concatenate the two 32-bit values and use a 64-bit shift. */ tcg_gen_subi_tl(s->tmp0, count, 1); if (is_right) {