On 10.09.2015 16:49, Peter Maydell wrote: >> @@ -2406,6 +2411,8 @@ static inline int tcg_gen_code_common(TCGContext *s, >> > check_regs(s); >> > #endif >> > } >> > + tcg_debug_assert(num_insns >= 0); > This is claiming that every TB will have at least one insn_start, > right? I think that most targets will violate that in the breakpoint > case, because the "if we have a bp for this insn then generate a > debug insn and break out of the loop" code is before the call > to tcg_gen_insn_start(). > > We should probably assert that num_insns < TCG_MAX_INSNS while > we're here. >
BTW, such skipping of instruction generation seems to be the cause of getting a confusing "Disassembler disagrees with translator over instruction" message in qemu log.