Revision b6d78bfa translate-i386.c
b/translate-i386.c | ||
---|---|---|
4113 | 4113 |
dc->addseg = (flags >> GEN_FLAG_ADDSEG_SHIFT) & 1; |
4114 | 4114 |
dc->f_st = (flags >> GEN_FLAG_ST_SHIFT) & 7; |
4115 | 4115 |
dc->vm86 = (flags >> GEN_FLAG_VM_SHIFT) & 1; |
4116 |
/* CPL is implicit if real mode or vm86 mode */ |
|
4117 |
if (!dc->pe) |
|
4118 |
dc->cpl = 0; |
|
4119 |
else if (dc->vm86) |
|
4120 |
dc->cpl = 3; |
|
4121 |
else |
|
4122 |
dc->cpl = (flags >> GEN_FLAG_CPL_SHIFT) & 3; |
|
4116 |
dc->cpl = (flags >> GEN_FLAG_CPL_SHIFT) & 3; |
|
4123 | 4117 |
dc->iopl = (flags >> GEN_FLAG_IOPL_SHIFT) & 3; |
4124 | 4118 |
dc->tf = (flags >> GEN_FLAG_TF_SHIFT) & 1; |
4125 | 4119 |
dc->cc_op = CC_OP_DYNAMIC; |
... | ... | |
4362 | 4356 |
int cpl, error_code, is_dirty, is_user, prot, page_size; |
4363 | 4357 |
void *map_addr; |
4364 | 4358 |
|
4365 |
cpl = env->segs[R_CS].selector & 3;
|
|
4359 |
cpl = env->cpl;
|
|
4366 | 4360 |
is_user = (cpl == 3); |
4367 | 4361 |
|
4368 | 4362 |
#ifdef DEBUG_MMU |
Also available in: Unified diff