Revision bba9bdce
b/target-alpha/cpu.h | ||
---|---|---|
341 | 341 |
|
342 | 342 |
static inline int cpu_mmu_index(CPUState *env) |
343 | 343 |
{ |
344 |
return (env->ps & PS_USER_MODE) != 0; |
|
344 |
if (env->pal_mode) { |
|
345 |
return MMU_KERNEL_IDX; |
|
346 |
} else if (env->ps & PS_USER_MODE) { |
|
347 |
return MMU_USER_IDX; |
|
348 |
} else { |
|
349 |
return MMU_KERNEL_IDX; |
|
350 |
} |
|
345 | 351 |
} |
346 | 352 |
|
347 | 353 |
enum { |
b/target-alpha/translate.c | ||
---|---|---|
3098 | 3098 |
ctx.env = env; |
3099 | 3099 |
ctx.pc = pc_start; |
3100 | 3100 |
ctx.amask = env->amask; |
3101 |
#if defined (CONFIG_USER_ONLY) |
|
3102 |
ctx.mem_idx = 0; |
|
3103 |
#else |
|
3104 |
ctx.mem_idx = ((env->ps >> 3) & 3); |
|
3101 |
ctx.mem_idx = cpu_mmu_index(env); |
|
3102 |
#if !defined (CONFIG_USER_ONLY) |
|
3105 | 3103 |
ctx.pal_mode = env->pal_mode; |
3106 | 3104 |
#endif |
3107 | 3105 |
|
Also available in: Unified diff