]> git.proxmox.com Git - mirror_edk2.git/blame - EdkModulePkg/Universal/Ebc/Dxe/Ia32/EbcLowLevel.S
1. Advance IP in case of Break(3) in breakpoint exception
[mirror_edk2.git] / EdkModulePkg / Universal / Ebc / Dxe / Ia32 / EbcLowLevel.S
CommitLineData
a3d0b549 1#****************************************************************************
2#*
3#* Copyright (c) 2006, Intel Corporation
4#* All rights reserved. This program and the accompanying materials
06a92437 5#* are licensed and made available under the terms and conditions of the BSD License
a3d0b549 6#* which accompanies this distribution. The full text of the license may be found at
7#* http://opensource.org/licenses/bsd-license.php
8#*
9#* THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
10#* WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
11#*
12#****************************************************************************
73ebf379 13.globl ASM_PFX(CopyMem)
14
0dce6dc1 15.globl ASM_PFX(EbcLLCALLEXNative)
16ASM_PFX(EbcLLCALLEXNative):
73ebf379 17 push %ebp\r
18 push %ebx\r
19 mov %esp,%ebp\r
20 mov 0xc(%esp),%ecx\r
21 mov 0x14(%esp),%eax\r
22 mov 0x10(%esp),%edx\r
23 sub %edx,%eax\r
24 sub %eax,%esp\r
25 mov %esp,%ebx\r
26 push %ecx\r
27 push %eax\r
28 push %edx\r
29 push %ebx\r
30 call ASM_PFX(CopyMem)\r
31 pop %eax\r
32 pop %eax\r
33 pop %eax\r
34 pop %ecx\r
35 call *%ecx\r
36 mov %ebp,%esp\r
37 mov %ebp,%esp\r
38 pop %ebx\r
39 pop %ebp\r
40 ret \r
a3d0b549 41
0dce6dc1 42.globl ASM_PFX(EbcLLGetEbcEntryPoint)
43ASM_PFX(EbcLLGetEbcEntryPoint):
a3d0b549 44 ret
45
0dce6dc1 46.globl ASM_PFX(EbcLLGetStackPointer)
47ASM_PFX(EbcLLGetStackPointer):
a3d0b549 48 mov %esp,%eax
49 add $0x4,%eax
50 ret
51
0dce6dc1 52.globl ASM_PFX(EbcLLGetReturnValue)
53ASM_PFX(EbcLLGetReturnValue):
a3d0b549 54 ret