On Fri, Jul 14, 2017 at 23:42:13 -1000, Richard Henderson wrote: > Fold DISAS_EXC and DISAS_TB_JUMP into DISAS_NORETURN. > > In both cases all following code is dead. In the first > case because we have exited the TB via exception; in the > second case because we have exited the TB via goto_tb > and its associated machinery. > > Signed-off-by: Richard Henderson <r...@twiddle.net> > --- > target/arm/translate.h | 8 ++------ > target/arm/translate-a64.c | 37 ++++++++++++++++++++----------------- > target/arm/translate.c | 15 ++++++++------- > 3 files changed, 30 insertions(+), 30 deletions(-) > (snip) > diff --git a/target/arm/translate.c b/target/arm/translate.c > index e80cc35..fea76fb 100644 > --- a/target/arm/translate.c > +++ b/target/arm/translate.c (snip) > @@ -12081,6 +12081,8 @@ void gen_intermediate_code(CPUState *cs, > TranslationBlock *tb) > default: > /* FIXME: Single stepping a WFI insn will not halt the CPU. */ > gen_singlestep_exception(dc); > + case DISAS_NORETURN: > + break;
Missing '/* fall-through */' above 'case DISAS_NORETURN'. Or just 'break' as we otherwise end up doing in patch 26. E.