On 02/16/2015 05:49 AM, Chen Gang S wrote:
> +#define TILEGX_R_PC 55 /* LR register, pc pointer */
No, register 55 is the link register, not the PC.
I.e. it is only special in that it receives the
return address from the JAL instructions.
> +typedef struct CPUTLState {
> + uint64_t regs[56];
> + CPU_COMMON
> +} CPUTLState;
Which means you need another entry here for the PC.
> +static inline void cpu_get_tb_cpu_state(CPUTLState *env, target_ulong *pc,
> + target_ulong *cs_base, int *flags)
> +{
> + *pc = env->regs[TILEGX_R_PC];
And you should not reference the link register here.
r~