Subversion Repositories HelenOS

Rev

Rev 4315 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 4315 Rev 4641
Line 275... Line 275...
275
 * %o1	Userspace stack pointer address.
275
 * %o1	Userspace stack pointer address.
276
 * %o2  Userspace address of uarg structure.
276
 * %o2  Userspace address of uarg structure.
277
 */
277
 */
278
.global switch_to_userspace
278
.global switch_to_userspace
279
switch_to_userspace:
279
switch_to_userspace:
280
	save %o1, -STACK_WINDOW_SAVE_AREA_SIZE, %sp
280
	save %o1, -(STACK_WINDOW_SAVE_AREA_SIZE + STACK_ARG_SAVE_AREA_SIZE), %sp
281
	flushw
281
	flushw
282
	wrpr %g0, 0, %cleanwin		! avoid information leak
282
	wrpr %g0, 0, %cleanwin		! avoid information leak
283
 
283
 
284
	mov %i2, %o0			! uarg
284
	mov %i2, %o0			! uarg
285
	xor %o1, %o1, %o1		! %o1 is defined to hold pcb_ptr
285
	xor %o1, %o1, %o1		! %o1 is defined to hold pcb_ptr