On 2/10/21 2:10 PM, Alex Bennée wrote:
> Again there is no reason to jump through the nocache hoops to execute
> a single instruction block. We do have to add an additional wrinkle to
> the cpu_handle_interrupt case to ensure we let through a TB where we
> have specifically disabled icount for the block.

Can you say more about this?  Because...

>      if (unlikely(qatomic_read(&cpu->exit_request))
>          || (icount_enabled()
> +            && (cpu->cflags_next_tb == -1 || cpu->cflags_next_tb & 
> CF_USE_ICOUNT)
>              && cpu_neg(cpu)->icount_decr.u16.low + cpu->icount_extra == 0)) {

... this does not appear to match.  You're checking that icount has been
explicitly *enabled*?  Or am I reading the logic backward and only if icount is
enabled will we take EXCP_INTERRUPT?


r~

Reply via email to