aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--x86_64/interrupt.S12
1 files changed, 6 insertions, 6 deletions
diff --git a/x86_64/interrupt.S b/x86_64/interrupt.S
index fccf6e28..73151b06 100644
--- a/x86_64/interrupt.S
+++ b/x86_64/interrupt.S
@@ -38,15 +38,15 @@ ENTRY(interrupt)
pushq %rax /* save irq number */
call spl7 /* set ipl */
pushq %rax /* save previous ipl */
- movl 8(%esp),%edx /* set irq number as 3rd arg */
- movl %edx,%ebx /* copy irq number */
- shll $2,%ebx /* irq * 4 */
- movl EXT(iunit)(%ebx),%edi /* get device unit number as 1st arg */
movl %eax, %esi /* previous ipl as 2nd arg */
+ movl 8(%esp),%edx /* set irq number as 3rd arg */
+ movl %edx,%eax /* copy irq number */
+ shll $2,%eax /* irq * 4 */
+ movl EXT(iunit)(%eax),%edi /* get device unit number as 1st arg */
movq 16(%esp), %rcx /* return address as 4th arg */
movq 24(%esp), %r8 /* address of interrupted registers as 5th arg */
- shll $1,%ebx /* irq * 8 */
- call *EXT(ivect)(%ebx) /* call interrupt handler */
+ shll $1,%eax /* irq * 8 */
+ call *EXT(ivect)(%eax) /* call interrupt handler */
popq %rdi /* restore previous ipl */
call splx_cli /* restore previous ipl */