[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] target/xtensa: drop gen_io_end call
From: |
Peter Maydell |
Subject: |
Re: [PATCH] target/xtensa: drop gen_io_end call |
Date: |
Mon, 22 Jun 2020 11:23:11 +0100 |
On Mon, 22 Jun 2020 at 06:36, Max Filippov <jcmvbkbc@gmail.com> wrote:
>
> Since commit
> ba3e7926691e ("icount: clean up cpu_can_io at the entry to the block")
> it has been unnecessary for target code to call gen_io_end() after an IO
> instruction in icount mode; it is sufficient to call gen_io_start()
> before it and to force the end of the TB.
> Remaining call in xtensa target translator is for the opcodes that may
> change IRQ state. All of them end current TB, so gen_io_end is not
> needed. Drop gen_io_end call from the xtensa target translator.
Most of the insns which set XTENSA_OP_CHECK_INTERRUPTS in their
.op_flags also set XTENSA_OP_EXIT_TB_M1 or XTENSA_OP_EXIT_TB_0;
the ones which don't are "rfe", "rfi", "rfwo" and "rfwu". Looking
through what they do, they all end up calling gen_jump(), which
will end the TB.
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
thanks
-- PMM