audk/MdeModulePkg/Universal/EbcDxe/AArch64
Ard Biesheuvel 4d1f5a214b MdeModulePkg/EbcDxe AARCH64: use a fixed size thunk structure
The thunk generation is needlessly complex, given that it attempts to
deal with variable length instructions, which don't exist on AArch64.

So replace it with a simple template coded in assembler, with a matching
struct definition in C. That way, we can create and manipulate the thunks
easily without looping over the instructions looking for 'magic' numbers.

Also, use x16 rather than x9, since it is the architectural register to
use for thunks/veneers.

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:21 +01:00
..
EbcLowLevel.S MdeModulePkg/EbcDxe AARCH64: use a fixed size thunk structure 2016-09-02 07:59:21 +01:00
EbcSupport.c MdeModulePkg/EbcDxe AARCH64: use a fixed size thunk structure 2016-09-02 07:59:21 +01:00