On 11 September 2015 at 11:29, Sergey Fedorov <serge.f...@gmail.com> wrote:
> 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.

...I'd been meaning to try to track down what was provoking that :-)

thanks
-- PMM

Reply via email to