On 07/06/2016 03:33 PM, Michael Rolnik wrote:
> +static bool avr_cpu_has_work(CPUState *cs)
> +{
> +    AVRCPU *cpu = AVR_CPU(cs);
> +    CPUAVRState *env = &cpu->env;
> +
> +    return      (cs->interrupt_request
> +                &   (CPU_INTERRUPT_HARD
> +                    | CPU_INTERRUPT_RESET))
> +            &&  cpu_interrupts_enabled(env);
> +}
> +static void avr_cpu_synchronize_from_tb(CPUState *cs, TranslationBlock *tb)
> +{
> +    AVRCPU      *cpu = AVR_CPU(cs);
> +    CPUAVRState *env = &cpu->env;
> +
> +    env->pc_w = tb->pc / 2;   /*  internally PC points to words   */
> +}

For the 4th time: missing spaces between functions.  Lots of them.  Please fix
them all, without me having to repeat myself a 5th time.

> +    bool            fullacc;/*  CPU/MEM if true MEM only otherwise  */

...

> +static inline void cpu_get_tb_cpu_state(CPUAVRState *env, target_ulong *pc,
> +                                target_ulong *cs_base, uint32_t *pflags)
> +{
> +    *pc = env->pc_w * 2;
> +    *cs_base = 0;
> +    *pflags = 0;
> +}

The fullacc bit needs to be reflected in *pflags here.  The way you are
accessing env->fullacc from translate*.c is invalid.


r~


Reply via email to