core: simplify pm_call usage
authorH. Peter Anvin <hpa@zytor.com>
Thu, 14 May 2009 00:32:29 +0000 (17:32 -0700)
committerH. Peter Anvin <hpa@zytor.com>
Thu, 14 May 2009 00:32:29 +0000 (17:32 -0700)
commit8d08421d2bd72fe1ca4532405e4282461eb68f30
treee1086aa612f9ba86e93d9d49bbea1e21e05e586d
parentb7602e0ed6dee93bc8c4e3ea6d3ea7ddf7082602
core: simplify pm_call usage

Simplify the pm_call usage:

- pm_call now saves and restores all registers
  callees that want to return values in registers can mess with
  the frame on the stack
- the PM function now enters with EAX = EBP = RM stack
  (EAX for the use of C code, EBP for assembly)
- the RM stack frame matches com32sys_t
- pmcall.inc defined macros for the stack frame based on EBP

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
core/bcopy32.inc
core/head.inc
core/pm.inc
core/pmcall.inc [new file with mode: 0644]
core/rllpack.inc