summaryrefslogtreecommitdiff
path: root/kernel/asm.s
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/asm.s')
-rw-r--r--kernel/asm.s7
1 files changed, 2 insertions, 5 deletions
diff --git a/kernel/asm.s b/kernel/asm.s
index 4e1e376..32153e4 100644
--- a/kernel/asm.s
+++ b/kernel/asm.s
@@ -70,8 +70,7 @@ set_tss:
push ebx
mov eax, [ebp+12]
mov ebx, [ebp+8]
- shl ebx, 3
- add ebx, gdt+40
+ lea ebx, [ebx*8+gdt+40]
mov [ebx+2], ax
shr eax, 16
mov [ebx+4], al
@@ -92,9 +91,7 @@ clear_tss:
mov ebp, esp
push ebx
mov ebx, [ebp+8]
- shl ebx, 3
- add ebx, gdt+40
- mov byte [ebx+5], 0
+ mov byte [ebx*8+gdt+40+5], 0
pop ebx
pop ebp
ret