Subversion Repositories HelenOS

Rev

Rev 4068 | Rev 4383 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 4068 Rev 4369
Line 769... Line 769...
769
	brnz %g3, 2f
769
	brnz %g3, 2f
770
	nop
770
	nop
771
	INLINE_SPILL_TO_WBUF %g3, %g4, %g7
771
	INLINE_SPILL_TO_WBUF %g3, %g4, %g7
772
 
772
 
773
2:
773
2:
774
	get_kstack_wbuf_ptr %g3, %g4
774
	set SCRATCHPAD_KSTACK, %g4
775
	ldx [%g4], %g6
775
	ldxa [%g4] ASI_SCRATCHPAD, %g6
776
	save %g6, -PREEMPTIBLE_HANDLER_STACK_FRAME_SIZE, %sp
776
	save %g6, -PREEMPTIBLE_HANDLER_STACK_FRAME_SIZE, %sp
777
 
777
 
778
.if \is_syscall
778
.if \is_syscall
779
	/* Copy arguments for the syscall to the new window. */
779
	/* Copy arguments for the syscall to the new window. */
780
	mov %i0, %o0
780
	mov %i0, %o0
Line 821... Line 821...
821
	flush %g1
821
	flush %g1
822
 
822
 
823
	/* Restoring userspace windows: */
823
	/* Restoring userspace windows: */
824
 
824
 
825
	/* Save address of the userspace window buffer to the %g7 register. */
825
	/* Save address of the userspace window buffer to the %g7 register. */
826
	get_kstack_wbuf_ptr %g1, %g5
826
	set SCRATCHPAD_WBUF, %g5
827
	ldx [%g5 + 8], %g7
827
	ldxa [%g5] ASI_SCRATCHPAD, %g7
828
 
828
 
829
	rdpr %cwp, %g1
829
	rdpr %cwp, %g1
830
	rdpr %otherwin, %g2
830
	rdpr %otherwin, %g2
831
 
831
 
832
	/*
832
	/*
Line 872... Line 872...
872
	ba 5b
872
	ba 5b
873
	inc %g4
873
	inc %g4
874
 
874
 
875
6:
875
6:
876
	/* Save changes of the address of the userspace window buffer. */
876
	/* Save changes of the address of the userspace window buffer. */
877
	stx %g7, [%g5 + 8]
877
	stxa %g7, [%g5] ASI_SCRATCHPAD
878
 
878
 
879
	/*
879
	/*
880
	 * Switch back to the proper current window and adjust
880
	 * Switch back to the proper current window and adjust
881
	 * OTHERWIN, CANRESTORE, CANSAVE and CLEANWIN.
881
	 * OTHERWIN, CANRESTORE, CANSAVE and CLEANWIN.
882
	 */
882
	 */