diff options
| author | Michael Brown | 2007-06-28 22:56:14 +0200 |
|---|---|---|
| committer | Michael Brown | 2007-06-28 22:56:14 +0200 |
| commit | 045fb24557f4c0a11273b28150b9a870f248197d (patch) | |
| tree | 720765210b2f7e5a1544117f0551765b64923e10 /src/arch/i386/prefix | |
| parent | Revert "Move stack to below 0x7c00; leaving it at the default location" (diff) | |
| download | ipxe-045fb24557f4c0a11273b28150b9a870f248197d.tar.gz ipxe-045fb24557f4c0a11273b28150b9a870f248197d.tar.xz ipxe-045fb24557f4c0a11273b28150b9a870f248197d.zip | |
Use internal real-mode stack from non-returnable prefixes
Diffstat (limited to 'src/arch/i386/prefix')
| -rw-r--r-- | src/arch/i386/prefix/dskprefix.S | 4 | ||||
| -rw-r--r-- | src/arch/i386/prefix/romprefix.S | 4 |
2 files changed, 8 insertions, 0 deletions
diff --git a/src/arch/i386/prefix/dskprefix.S b/src/arch/i386/prefix/dskprefix.S index 9b1ebaaf5..1a48716a4 100644 --- a/src/arch/i386/prefix/dskprefix.S +++ b/src/arch/i386/prefix/dskprefix.S @@ -350,6 +350,10 @@ msg1end: start_runtime: call install + /* Set up real-mode stack */ + movw %bx, %ss + movw $_estack16, %sp + /* Jump to .text16 segment */ pushw %ax pushw $1f diff --git a/src/arch/i386/prefix/romprefix.S b/src/arch/i386/prefix/romprefix.S index ced0f49c8..520016996 100644 --- a/src/arch/i386/prefix/romprefix.S +++ b/src/arch/i386/prefix/romprefix.S @@ -139,6 +139,10 @@ exec_vector: call install + /* Set up real-mode stack */ + movw %bx, %ss + movw $_estack16, %sp + /* Jump to .text16 segment */ pushw %ax pushw $1f |
