Simplify the entry assembler slightly.
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
popl %ecx
movl %edx, 12(%eax)
movl %esp, 16(%eax)
- movzwl %sp, %esp
movw %ss, 20(%eax)
movw %ds, %dx // Setup %ss/%esp and call function
popl %ecx
movw %es, BREGS_es(%eax)
movl %esp, BREGS_size+0(%eax)
- movzwl %sp, %esp
movw %ss, BREGS_size+4(%eax)
- movl (%esp), %edx
- movl %edx, BREGS_code(%eax)
- movw 4(%esp), %dx
- movw %dx, BREGS_flags(%eax)
+ popl BREGS_code(%eax)
+ popw BREGS_flags(%eax)
movw %ds, %dx // Setup %ss/%esp and call function
movw %dx, %ss
cld
pushw %ds // Set %ds:%eax to space on ExtraStack
pushl %eax
- movzwl %cs:ExtraStackSeg, %eax
- movl %eax, %ds
+ movw %cs:ExtraStackSeg, %ds
movl $(CONFIG_VGA_EXTRA_STACK_SIZE-BREGS_size-8), %eax
popl BREGS_eax(%eax) // Backup registers
popw BREGS_ds(%eax)