SEL_UPL
tf->tf_ds = GSEL(GUDATA_SEL, SEL_UPL);
tf->tf_es = GSEL(GUDATA_SEL, SEL_UPL);
tf->tf_cs = LSEL(LUCODE_SEL, SEL_UPL);
tf->tf_ss = LSEL(LUDATA_SEL, SEL_UPL);
x86_btop(VM_MAXUSER_ADDRESS) - 1, SDT_MEMERA, SEL_UPL, 1, 0, 1);
x86_btop(VM_MAXUSER_ADDRESS) - 1, SDT_MEMRWA, SEL_UPL, 1, 0, 1);
x86_btop(VM_MAXUSER_ADDRESS32) - 1, SDT_MEMERA, SEL_UPL, 1, 1, 0);
x86_btop(VM_MAXUSER_ADDRESS32) - 1, SDT_MEMRWA, SEL_UPL, 1, 1, 0);
x86_btop(VM_MAXUSER_ADDRESS32) - 1, SDT_MEMRWA, SEL_UPL, 1, 1, 0);
x86_btop(VM_MAXUSER_ADDRESS32) - 1, SDT_MEMRWA, SEL_UPL, 1, 1, 0);
SDT_MEMERA, SEL_UPL, 1, 1, 0);
SDT_MEMRWA, SEL_UPL, 1, 1, 0);
sel = SEL_UPL;
set_idtgate(&idt[128], &IDTVEC(osyscall), 0, SDT_SYS386IGT, SEL_UPL,
mcp->__gregs[_REG_ES] = GSEL(GUDATA_SEL, SEL_UPL);
mcp->__gregs[_REG_DS] = GSEL(GUDATA_SEL, SEL_UPL);
mcp->__gregs[_REG_CS] = LSEL(LUCODE_SEL, SEL_UPL);
mcp->__gregs[_REG_SS] = LSEL(LUDATA_SEL, SEL_UPL);
tf->tf_es = GSEL(GUDATA_SEL, SEL_UPL);
tf->tf_ds = GSEL(GUDATA_SEL, SEL_UPL);
tf->tf_cs = LSEL(LUCODE_SEL, SEL_UPL);
tf->tf_ss = LSEL(LUDATA_SEL, SEL_UPL);
setds(GSEL(GUDATA_SEL, SEL_UPL));
setes(GSEL(GUDATA_SEL, SEL_UPL));
setds(GSEL(GUDATA32_SEL, SEL_UPL));
setes(GSEL(GUDATA32_SEL, SEL_UPL));
setds(GSEL(GUDATA32_SEL, SEL_UPL));
setes(GSEL(GUDATA32_SEL, SEL_UPL));
setfs(GSEL(GUDATA32_SEL, SEL_UPL));
setds(GSEL(GUDATA_SEL, SEL_UPL));
setes(GSEL(GUDATA_SEL, SEL_UPL));
tf->tf_ds = GSEL(GUDATA_SEL, SEL_UPL);
tf->tf_es = GSEL(GUDATA_SEL, SEL_UPL);
tf->tf_fs = GSEL(GUDATA_SEL, SEL_UPL);
tf->tf_gs = GSEL(GUDATA_SEL, SEL_UPL);
tf->tf_cs = GSEL(GUCODE_SEL, SEL_UPL);
tf->tf_ss = GSEL(GUDATA_SEL, SEL_UPL);
cpu_fsgs_reload(l, LSEL(LUDATA32_SEL, SEL_UPL),
LSEL(LUDATA32_SEL, SEL_UPL));
tf->tf_ds = LSEL(LUDATA32_SEL, SEL_UPL);
tf->tf_es = LSEL(LUDATA32_SEL, SEL_UPL);
tf->tf_cs = LSEL(LUCODE32_SEL, SEL_UPL);
tf->tf_ss = LSEL(LUDATA32_SEL, SEL_UPL);
tf->tf_ds = GSEL(GUDATA32_SEL, SEL_UPL);
tf->tf_es = GSEL(GUDATA32_SEL, SEL_UPL);
tf->tf_fs = GSEL(GUDATA32_SEL, SEL_UPL);
tf->tf_gs = GSEL(GUDATA32_SEL, SEL_UPL);
tf->tf_cs = GSEL(GUCODE32_SEL, SEL_UPL);
tf->tf_ss = GSEL(GUDATA32_SEL, SEL_UPL);
regs[_REG_ES] = GSEL(GUDATA_SEL, SEL_UPL);
regs[_REG_DS] = GSEL(GUDATA_SEL, SEL_UPL);
regs[_REG_CS] = LSEL(LUCODE_SEL, SEL_UPL);
regs[_REG_SS] = LSEL(LUDATA_SEL, SEL_UPL);
tf->tf_es = GSEL(GUDATA_SEL, SEL_UPL);
tf->tf_ds = GSEL(GUDATA_SEL, SEL_UPL);
tf->tf_cs = LSEL(LUCODE_SEL, SEL_UPL);
tf->tf_ss = LSEL(LUDATA_SEL, SEL_UPL);
testb $SEL_UPL,TF_CS(%rsp) ; \
#define USERMODE(c) (ISPL(c) == SEL_UPL)
(((s) & 0xffff) == GSEL(GUDATA32_SEL, SEL_UPL) || \
((s) & 0xffff) == LSEL(LUDATA32_SEL, SEL_UPL))
((s) == GSEL(GUCODE32_SEL, SEL_UPL) || (s) == LSEL(LUCODE32_SEL, SEL_UPL))
(((s) & 0xffff) == GSEL(GUFS_SEL, SEL_UPL))
(((s) & 0xffff) == GSEL(GUGS_SEL, SEL_UPL))
((s) == GSEL(GUCODE_SEL, SEL_UPL) || (s) == LSEL(LUCODE_SEL, SEL_UPL))
((s) == GSEL(GUDATA_SEL, SEL_UPL) || (s) == LSEL(LUDATA_SEL, SEL_UPL))
SDT_MEMERA, SEL_UPL, 1, 1);
SDT_MEMERA, SEL_UPL, 1, 1);
SDT_MEMRWA, SEL_UPL, 1, 1);
sel = SEL_UPL;
set_idtgate(&idt[128], &IDTVEC(syscall), 0, SDT_SYS386IGT, SEL_UPL,
tf->tf_gs = GSEL(GUGS_SEL, SEL_UPL);
tf->tf_fs = GSEL(GUFS_SEL, SEL_UPL);
tf->tf_es = GSEL(GUDATA_SEL, SEL_UPL);
tf->tf_ds = GSEL(GUDATA_SEL, SEL_UPL);
tf->tf_cs = GSEL(sel, SEL_UPL);
tf->tf_ss = GSEL(GUDATA_SEL, SEL_UPL);
tf->tf_gs = GSEL(GUGS_SEL, SEL_UPL);
tf->tf_fs = GSEL(GUFS_SEL, SEL_UPL);
tf->tf_es = LSEL(LUDATA_SEL, SEL_UPL);
tf->tf_ds = LSEL(LUDATA_SEL, SEL_UPL);
LSEL(LUCODEBIG_SEL, SEL_UPL) : LSEL(LUCODE_SEL, SEL_UPL);
tf->tf_ss = LSEL(LUDATA_SEL, SEL_UPL);
#define USERMODE(c) (ISPL(c) == SEL_UPL)
((uint64_t)LSEL(LSYSRETBASE_SEL, SEL_UPL) << 48));
tf->tf_cs = GSEL(GUCODE_SEL, SEL_UPL);
if (va == pm->pm_hiexec && tf->tf_cs == GSEL(GUCODEBIG_SEL, SEL_UPL))
tf->tf_cs = GSEL(GUCODEBIG_SEL, SEL_UPL);
tf->tf_cs = GSEL(GUCODE_SEL, SEL_UPL);
if (desc->sd.sd_dpl != SEL_UPL)
iopl = SEL_UPL;
usd.sd.sd_dpl = SEL_UPL;
tf->tf_fs = GSEL(GUFS_SEL, SEL_UPL);
setusergs(GSEL(GUGS_SEL, SEL_UPL));
tf->tf_gs = GSEL(GUGS_SEL, SEL_UPL);
tf->tf_cs = GSEL(GUCODE_SEL, SEL_UPL);
tf->tf_ss = GSEL(GUDATA_SEL, SEL_UPL);
tf->tf_ds = GSEL(GUDATA_SEL, SEL_UPL);
sigframe.uc.luc_mcontext.cs = GSEL(GUCODE_SEL, SEL_UPL);
tf->tf_ds = GSEL(GUDATA_SEL, SEL_UPL);
tf->tf_cs = GSEL(GUCODE_SEL, SEL_UPL);
tf->tf_ss = GSEL(GUDATA_SEL, SEL_UPL);
tf->tf_fs = GSEL(GUDATA_SEL, SEL_UPL);
tf->tf_es = GSEL(GUDATA_SEL, SEL_UPL);
tf->tf_ds = GSEL(GUDATA_SEL, SEL_UPL);
tf->tf_cs = GSEL(GUCODEBIG_SEL, SEL_UPL);
tf->tf_ss = GSEL(GUDATA_SEL, SEL_UPL);
tf->tf_fs = GSEL(GUDATA_SEL, SEL_UPL);
tf->tf_es = GSEL(GUDATA_SEL, SEL_UPL);
tf->tf_ds = GSEL(GUDATA_SEL, SEL_UPL);
tf->tf_cs = GSEL(GUCODE_SEL, SEL_UPL);
tf->tf_ss = GSEL(GUDATA_SEL, SEL_UPL);
tf->tf_fs = GSEL(GUDATA_SEL, SEL_UPL);
tf->tf_es = GSEL(GUDATA_SEL, SEL_UPL);
tf->tf_ds = GSEL(GUDATA_SEL, SEL_UPL);
tf->tf_cs = GSEL(GUCODEBIG_SEL, SEL_UPL);
tf->tf_ss = GSEL(GUDATA_SEL, SEL_UPL);
d.sd.sd_dpl = SEL_UPL;
tf->tf_fs = GSEL(GUDATA32_SEL, SEL_UPL) & 0xffffffff;
tf->tf_es = GSEL(GUDATA32_SEL, SEL_UPL) & 0xffffffff;
tf->tf_ds = GSEL(GUDATA32_SEL, SEL_UPL) & 0xffffffff;
tf->tf_cs = GSEL(GUCODE32_SEL, SEL_UPL) & 0xffffffff;
tf->tf_ss = GSEL(GUDATA32_SEL, SEL_UPL) & 0xffffffff;
tf->tf_fs = GSEL(GUDATA32_SEL, SEL_UPL) & 0xffffffff;
tf->tf_es = GSEL(GUDATA32_SEL, SEL_UPL) & 0xffffffff;
tf->tf_ds = GSEL(GUDATA32_SEL, SEL_UPL) & 0xffffffff;
tf->tf_cs = GSEL(GUCODE32_SEL, SEL_UPL) & 0xffffffff;
tf->tf_ss = GSEL(GUDATA32_SEL, SEL_UPL) & 0xffffffff;
cpu_fsgs_reload(l, GSEL(GUDATA32_SEL, SEL_UPL),
GSEL(GUDATA32_SEL, SEL_UPL));
tf->tf_cs = GSEL(GUCODE32_SEL, SEL_UPL);
tf->tf_ss = GSEL(GUDATA32_SEL, SEL_UPL);
tf->tf_ds = GSEL(GUDATA32_SEL, SEL_UPL);
tf->tf_es = GSEL(GUDATA32_SEL, SEL_UPL);
SEL_UPL, 1, 0);
build_desc(&desc, ldt_base, PAGE_SIZE, SDT_MEMRW, SEL_UPL, 1, 0);
SEL_UPL, 1, 0);
build_desc(&desc, ldt_base, PAGE_SIZE, SDT_MEMRW, SEL_UPL, 1, 0);
build_desc(&desc, 0, 0xFFFFFUL, SDT_MEMRWA, SEL_UPL, 1, 1);
set_ds(LSEL(256, SEL_UPL));
build_desc(&desc, 0, 0xFFFFFFFFUL, SDT_MEMRWA, SEL_UPL, 1, 1);
set_ds(LSEL(256, SEL_UPL));
set_fs(GSEL(GUDATA_SEL, SEL_UPL));
build_desc(&desc, ldt_base, PAGE_SIZE, SDT_MEMRW, SEL_UPL, 1, 0);
set_fs(LSEL(256, SEL_UPL));