Add BlockIO support to the emulator, still needs testing. Also update Emulator start code to only pass 2 args in place of 3. The 3rd argument is not needed. Still need a function as the BaseLib functoin does not have the correct calling conventions. Cleanup build script for binary shell case.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11718 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
andrewfish
2011-05-31 20:23:36 +00:00
parent 283d361e98
commit d59326d3a8
17 changed files with 3128 additions and 34 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -458,7 +458,6 @@ SecLoadFromCore (
(SWITCH_STACK_ENTRY_POINT) (UINTN) PeiCoreEntryPoint,
SecCoreData,
(VOID *)gPpiList,
NULL,
TopOfStack
);
//

View File

@@ -283,7 +283,6 @@ PeiSwitchStacks (
IN SWITCH_STACK_ENTRY_POINT EntryPoint,
IN VOID *Context1, OPTIONAL
IN VOID *Context2, OPTIONAL
IN VOID *Context3, OPTIONAL
IN VOID *NewStack
);

View File

@@ -16,7 +16,7 @@
#------------------------------------------------------------------------------
# Routine Description:
#
# Routine for switching stacks with 3 parameters EFI ABI
# Routine for switching stacks with 2 parameters EFI ABI
# Convert UNIX to EFI ABI
#
# Arguments:
@@ -24,8 +24,7 @@
# (rdi) EntryPoint - Entry point with new stack.
# (rsi) Context1 - Parameter1 for entry point. (rcx)
# (rdx) Context2 - Parameter2 for entry point. (rdx)
# (rcx) Context3 - Parameter3 for entry point. (r8)
# (r8) NewStack - The pointer to new stack.
# (rcx) NewStack - The pointer to new stack.
#
# Returns:
#
@@ -37,11 +36,11 @@ ASM_PFX(PeiSwitchStacks):
pushq $0 // tells gdb to stop unwinding frame
movq %rsp, %rbp
movq %r8, %rsp
movq %rcx, %rsp // update stack pointer
movq %rdi, %rax
movq %rsi, %rcx
movq %rcx, %r8
movq %rdi, %rax // entry point to %rax
movq %rsi, %rcx // Adjust Context1
// Context2 already in the rigth spot
#
# Reserve space for register parameters (rcx, rdx, r8 & r9) on the stack,