Rev 4016 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 4016 | Rev 4125 | ||
---|---|---|---|
Line 72... | Line 72... | ||
72 | /* %ebx is defined to hold pcb_ptr - set it to 0 */ |
72 | /* %ebx is defined to hold pcb_ptr - set it to 0 */ |
73 | "xorl %%ebx, %%ebx\n" |
73 | "xorl %%ebx, %%ebx\n" |
74 | 74 | ||
75 | "iret\n" |
75 | "iret\n" |
76 | : |
76 | : |
77 | : [udata_des] "i" (selector(UDATA_DES) | PL_USER), |
77 | : [udata_des] "i" (gdtselector(UDATA_DES) | PL_USER), |
78 | [stack_size] "r" ((uint8_t *) kernel_uarg->uspace_stack + THREAD_STACK_SIZE), |
78 | [stack_size] "r" ((uint8_t *) kernel_uarg->uspace_stack + THREAD_STACK_SIZE), |
79 | [ipl] "r" (ipl), |
79 | [ipl] "r" (ipl), |
80 | [utext_des] "i" (selector(UTEXT_DES) | PL_USER), |
80 | [utext_des] "i" (gdtselector(UTEXT_DES) | PL_USER), |
81 | [entry] "r" (kernel_uarg->uspace_entry), |
81 | [entry] "r" (kernel_uarg->uspace_entry), |
82 | [uarg] "r" (kernel_uarg->uspace_uarg), |
82 | [uarg] "r" (kernel_uarg->uspace_uarg), |
83 | [tls_des] "r" (selector(TLS_DES)) |
83 | [tls_des] "r" (gdtselector(TLS_DES)) |
84 | : "eax"); |
84 | : "eax"); |
85 | 85 | ||
86 | /* Unreachable */ |
86 | /* Unreachable */ |
87 | while (1); |
87 | while (1); |
88 | } |
88 | } |