summaryrefslogtreecommitdiffstats
path: root/contrib
diff options
context:
space:
mode:
authorMichael Brown2006-05-06 21:44:23 +0200
committerMichael Brown2006-05-06 21:44:23 +0200
commitfdb983d47383254aebe91edb22b87f18baf0b399 (patch)
tree09825a4f2cc6e1b92a22e8e45a3d69c334ef907b /contrib
parentAllow access to variables in .text16 as well as .data16. Chained (diff)
downloadipxe-fdb983d47383254aebe91edb22b87f18baf0b399.tar.gz
ipxe-fdb983d47383254aebe91edb22b87f18baf0b399.tar.xz
ipxe-fdb983d47383254aebe91edb22b87f18baf0b399.zip
Preserve the whole of %esp across prot_call(). We have to split this
between the low half stored in the static variable rm_sp, and the high half stored on the prot_call() stack, because: Just using the stack would screw up when a prot_call()ed routine executes a real_call(); it would have no way to find the current top of the RM stack. Extending rm_sp to rm_esp would not be safe, because the guarantee that rm_sp must return to the correct value by the time an external real-mode call returns applies only to %sp, not to %esp.
Diffstat (limited to 'contrib')
0 files changed, 0 insertions, 0 deletions