Subversion Repositories HelenOS

Rev

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
}