Subversion Repositories HelenOS-historic

Rev

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

Rev 1121 Rev 1212
Line 241... Line 241...
241
	# Switch back to remain consistent
241
	# Switch back to remain consistent
242
	swapgs 
242
	swapgs 
243
 
243
 
244
	sti
244
	sti
245
	movq %r9, %rcx      # Exchange last parameter as a third
245
	movq %r9, %rcx      # Exchange last parameter as a third
-
 
246
	
-
 
247
	cmp $2, %r8          # Is this SYS_INT_CONTROL
-
 
248
	je sys_int_ctrl
-
 
249
	
246
	call syscall_handler
250
	call syscall_handler
-
 
251
sys_end:	
247
	cli                 # We will be touching stack pointer
252
	cli                 # We will be touching stack pointer
248
		
253
		
249
	popq %r11
254
	popq %r11
250
	popq %rcx
255
	popq %rcx
251
	movq 0(%rsp), %rsp
256
	movq 0(%rsp), %rsp
252
	sysretq
257
	sysretq
-
 
258
	
-
 
259
sys_int_ctrl:
-
 
260
	mov %rsp, %rsi      # Pointer to flags
-
 
261
	call ddi_int_control
-
 
262
	jmp sys_end
-
 
263
	
253
		
264
		
254
.data
265
.data
255
.global interrupt_handler_size
266
.global interrupt_handler_size
256
 
267
 
257
interrupt_handler_size: .quad (h_end-h_start)/IDT_ITEMS
268
interrupt_handler_size: .quad (h_end-h_start)/IDT_ITEMS