audk/MdeModulePkg/Universal/EbcDxe
Ard Biesheuvel 4a2aaff2fc MdeModulePkg/EbcDxe AARCH64: simplify interpreter entry point thunks
The prototypes of EbcInterpret() and ExecuteEbcImageEntryPoint() are
private to the AARCH64 implementation of EbcDxe, so we can shuffle
the arguments around a bit and make the assembler thunking glue a lot
simpler.

For ExecuteEbcImageEntryPoint(), this involves passing the EntryPoint
argument as the third parameter, rather than the first, which allows
us to do a tail call. For EbcInterpret(), instead of copying each
argument beyond #8 from one native stack frame to the next (before
another copy is made into the VM stack), pass a pointer to the
argument stack.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
Reviewed-by: Feng Tian <feng.tian@intel.com>
2016-09-02 07:59:22 +01:00
..
AArch64 MdeModulePkg/EbcDxe AARCH64: simplify interpreter entry point thunks 2016-09-02 07:59:22 +01:00
Ia32 MdeModulePkg EbcDxe: Convert Ia32/EbcLowLevel.asm to NASM 2016-06-28 09:51:58 +08:00
Ipf Add Missing invocations to VA_END() for VA_START(). 2012-02-01 06:06:08 +00:00
X64 MdeModulePkg EbcDxe: Convert X64/EbcLowLevel.asm to NASM 2016-06-28 09:51:58 +08:00
EbcDxe.inf MdeModulePkg/EbcDxe: Add AARCH64 EBC VM support 2016-08-26 11:52:47 +01:00
EbcDxe.uni MdeModulePkg: Convert all .uni files to utf-8 2015-12-15 04:56:23 +00:00
EbcDxeExtra.uni MdeModulePkg: Convert all .uni files to utf-8 2015-12-15 04:56:23 +00:00
EbcExecute.c 1) Add type cast for better coding style. 2014-08-07 08:54:34 +00:00
EbcExecute.h Clean up the private GUID definition in module Level. 2011-09-18 12:21:01 +00:00
EbcInt.c 1) Fix GCC version EBC interpreter bug. 2011-11-21 08:35:14 +00:00
EbcInt.h 1) Fix GCC version EBC interpreter bug. 2011-11-21 08:35:14 +00:00