Changeset 9f52563 in mainline for arch/amd64/src/userspace.c
- Timestamp:
- 2006-03-17T01:34:36Z (19 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 8a0b0669
- Parents:
- 5fceec7
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
arch/amd64/src/userspace.c
r5fceec7 r9f52563 40 40 * 41 41 */ 42 void userspace( __address entry)42 void userspace(uspace_arg_t *uarg) 43 43 { 44 44 ipl_t ipl; … … 47 47 48 48 __asm__ volatile ("" 49 "movq %0, %%rax;" 50 "movq %1, %%rbx;" 51 "movq %2, %%rcx;" 52 "movq %3, %%rdx;" 53 "movq %4, %%rsi;" 54 "pushq %%rax;" 55 "pushq %%rbx;" 56 "pushq %%rcx;" 57 "pushq %%rdx;" 58 "pushq %%rsi;" 59 "iretq;" 60 : : "i" (gdtselector(UDATA_DES) | PL_USER), 61 "i" (USTACK_ADDRESS+THREAD_STACK_SIZE), 49 "pushq %0\n" 50 "pushq %1\n" 51 "pushq %2\n" 52 "pushq %3\n" 53 "pushq %4\n" 54 "iretq\n" 55 : : 56 "i" (gdtselector(UDATA_DES) | PL_USER), 57 "r" (uarg->uspace_stack+THREAD_STACK_SIZE), 62 58 "r" (ipl), 63 59 "i" (gdtselector(UTEXT_DES) | PL_USER), 64 "r" ( entry));60 "r" (uarg->uspace_entry)); 65 61 66 62 /* Unreachable */
Note:
See TracChangeset
for help on using the changeset viewer.