|
@@ -133,6 +133,7 @@ ENTRY(switch_to_guest)
|
|
// The Guest's register page has been mapped
|
|
// The Guest's register page has been mapped
|
|
// Writable onto our %esp (stack) --
|
|
// Writable onto our %esp (stack) --
|
|
// We can simply pop off all Guest regs.
|
|
// We can simply pop off all Guest regs.
|
|
|
|
+ popl %eax
|
|
popl %ebx
|
|
popl %ebx
|
|
popl %ecx
|
|
popl %ecx
|
|
popl %edx
|
|
popl %edx
|
|
@@ -140,7 +141,6 @@ ENTRY(switch_to_guest)
|
|
popl %edi
|
|
popl %edi
|
|
popl %ebp
|
|
popl %ebp
|
|
popl %gs
|
|
popl %gs
|
|
- popl %eax
|
|
|
|
popl %fs
|
|
popl %fs
|
|
popl %ds
|
|
popl %ds
|
|
popl %es
|
|
popl %es
|
|
@@ -168,7 +168,6 @@ ENTRY(switch_to_guest)
|
|
pushl %es; \
|
|
pushl %es; \
|
|
pushl %ds; \
|
|
pushl %ds; \
|
|
pushl %fs; \
|
|
pushl %fs; \
|
|
- pushl %eax; \
|
|
|
|
pushl %gs; \
|
|
pushl %gs; \
|
|
pushl %ebp; \
|
|
pushl %ebp; \
|
|
pushl %edi; \
|
|
pushl %edi; \
|
|
@@ -176,6 +175,7 @@ ENTRY(switch_to_guest)
|
|
pushl %edx; \
|
|
pushl %edx; \
|
|
pushl %ecx; \
|
|
pushl %ecx; \
|
|
pushl %ebx; \
|
|
pushl %ebx; \
|
|
|
|
+ pushl %eax; \
|
|
/* Our stack and our code are using segments \
|
|
/* Our stack and our code are using segments \
|
|
* Set in the TSS and IDT \
|
|
* Set in the TSS and IDT \
|
|
* Yet if we were to touch data we'd use \
|
|
* Yet if we were to touch data we'd use \
|