On Thu, Feb 08, 2018 at 14:28:34 +1300, Michael Clark wrote:
> TCG code generation for the RV32IMAFDC and RV64IMAFDC. The QEMU
> RISC-V code generator has complete coverage for the Base ISA v2.2,
> Privileged ISA v1.9.1 and Privileged ISA v1.10:
> 
> - RISC-V Instruction Set Manual Volume I: User-Level ISA Version 2.2
> - RISC-V Instruction Set Manual Volume II: Privileged ISA Version 1.9.1
> - RISC-V Instruction Set Manual Volume II: Privileged ISA Version 1.10
> 
> Reviewed-by: Richard Henderson <richard.hender...@linaro.org>
> Signed-off-by: Michael Clark <m...@sifive.com>
> ---
(snip)
> +++ b/target/riscv/translate.c
(snip)
> +enum {
> +    BS_NONE     = 0, /* When seen outside of translation while loop, 
> indicates
> +                     need to exit tb due to end of page. */
> +    BS_STOP     = 1, /* Need to exit tb for syscall, sret, etc. */

Are we planning to use BS_STOP in the future? I see it has no setters,
although we check for it in gen_intermediate_code:

(snip)
> +    switch (ctx.bstate) {
> +    case BS_STOP:
> +        gen_goto_tb(&ctx, 0, ctx.pc);
> +        break;
> +    case BS_NONE: /* handle end of page - DO NOT CHAIN. See gen_goto_tb. */

Should we get rid of it?

                Emilio

Reply via email to