Revision 89984cd2 target-i386/helper.c
b/target-i386/helper.c | ||
---|---|---|
1584 | 1584 |
|
1585 | 1585 |
if (!(e2 & DESC_CS_MASK) || !(e2 & DESC_C_MASK)) { |
1586 | 1586 |
/* if not conforming code, test rights */ |
1587 |
if (dpl < cpl || dpl < rpl) |
|
1587 |
if (dpl < cpl || dpl < rpl)
|
|
1588 | 1588 |
raise_exception_err(EXCP0D_GPF, selector & 0xfffc); |
1589 | 1589 |
} |
1590 | 1590 |
} |
... | ... | |
2152 | 2152 |
sp_mask = get_sp_mask(ss_e2); |
2153 | 2153 |
|
2154 | 2154 |
/* validate data segments */ |
2155 |
validate_seg(R_ES, cpl);
|
|
2156 |
validate_seg(R_DS, cpl);
|
|
2157 |
validate_seg(R_FS, cpl);
|
|
2158 |
validate_seg(R_GS, cpl);
|
|
2155 |
validate_seg(R_ES, rpl);
|
|
2156 |
validate_seg(R_DS, rpl);
|
|
2157 |
validate_seg(R_FS, rpl);
|
|
2158 |
validate_seg(R_GS, rpl);
|
|
2159 | 2159 |
|
2160 | 2160 |
sp += addend; |
2161 | 2161 |
} |
Also available in: Unified diff