david/ipxe
david
/
ipxe
Archived
1
0
Fork 0

Switch rm_ss and rm_sp back to being words; it'll make it less

confusing to read the code.
This commit is contained in:
Michael Brown 2007-09-25 20:16:32 +01:00
parent 42d96bcb07
commit 881dd8e102
1 changed files with 7 additions and 7 deletions

View File

@ -215,9 +215,9 @@ real_to_prot:
movl pm_esp, %esp
/* Record real-mode %ss:sp (after removal of data) */
movl %ebp, rm_ss
movw %bp, rm_ss
addl %ecx, %edx
movl %edx, rm_sp
movw %dx, rm_sp
/* Move data from RM stack to PM stack */
subl %ecx, %esp
@ -258,8 +258,8 @@ prot_to_real:
addl $4, %ecx
/* Real-mode %ss:sp => %ebp:edx and virtual address => %edi */
movl rm_ss, %ebp
movl rm_sp, %edx
movzwl rm_ss, %ebp
movzwl rm_sp, %edx
subl %ecx, %edx
movl %ebp, %eax
shll $4, %eax
@ -413,7 +413,7 @@ prot_call:
popal
/* popal skips %esp. We therefore want to do "movl -20(%sp),
* %esp", but -20(%sp) is not a valid 80386 expression.
* Fortunately, pot_to_real() zeroes the high word of %esp, so
* Fortunately, prot_to_real() zeroes the high word of %esp, so
* we can just use -20(%esp) instead.
*/
addr32 movl -20(%esp), %esp
@ -531,8 +531,8 @@ rc_function: .word 0, 0
****************************************************************************
*/
.section ".data"
rm_sp: .long 0
rm_ss: .long 0
rm_sp: .word 0
rm_ss: .word 0
pm_esp: .long _estack
/****************************************************************************