TianoCore EDK2 master
|
Go to the source code of this file.
Functions | |
UINT16 | ThumbMovtImmediateAddress (IN UINT16 *Instruction) |
VOID | ThumbMovtImmediatePatch (IN OUT UINT16 *Instruction, IN UINT16 Address) |
UINT32 | ThumbMovwMovtImmediateAddress (IN UINT16 *Instructions) |
VOID | ThumbMovwMovtImmediatePatch (IN OUT UINT16 *Instructions, IN UINT32 Address) |
RETURN_STATUS | PeCoffLoaderRelocateImageEx (IN UINT16 *Reloc, IN OUT CHAR8 *Fixup, IN OUT CHAR8 **FixupData, IN UINT64 Adjust) |
BOOLEAN | PeCoffLoaderImageFormatSupported (IN UINT16 Machine) |
RETURN_STATUS | PeHotRelocateImageEx (IN UINT16 *Reloc, IN OUT CHAR8 *Fixup, IN OUT CHAR8 **FixupData, IN UINT64 Adjust) |
Specific relocation fixups for ARM architecture.
Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.
Portions copyright (c) 2008 - 2010, Apple Inc. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent
Definition in file PeCoffLoaderEx.c.
BOOLEAN PeCoffLoaderImageFormatSupported | ( | IN UINT16 | Machine | ) |
Returns TRUE if the machine type of PE/COFF image is supported. Supported does not mean the image can be executed it means the PE/COFF loader supports loading and relocating of the image type. It's up to the caller to support the entry point.
Machine | Machine type from the PE Header. |
Definition at line 179 of file PeCoffLoaderEx.c.
RETURN_STATUS PeCoffLoaderRelocateImageEx | ( | IN UINT16 * | Reloc, |
IN OUT CHAR8 * | Fixup, | ||
IN OUT CHAR8 ** | FixupData, | ||
IN UINT64 | Adjust | ||
) |
Performs an ARM-based specific relocation fixup and is a no-op on other instruction sets.
Reloc | The pointer to the relocation record. |
Fixup | The pointer to the address to fix up. |
FixupData | The pointer to a buffer to log the fixups. |
Adjust | The offset to adjust the fixup. |
Definition at line 131 of file PeCoffLoaderEx.c.
RETURN_STATUS PeHotRelocateImageEx | ( | IN UINT16 * | Reloc, |
IN OUT CHAR8 * | Fixup, | ||
IN OUT CHAR8 ** | FixupData, | ||
IN UINT64 | Adjust | ||
) |
Performs an ARM-based specific re-relocation fixup and is a no-op on other instruction sets. This is used to re-relocated the image into the EFI virtual space for runtime calls.
Reloc | The pointer to the relocation record. |
Fixup | The pointer to the address to fix up. |
FixupData | The pointer to a buffer to log the fixups. |
Adjust | The offset to adjust the fixup. |
Definition at line 204 of file PeCoffLoaderEx.c.
UINT16 ThumbMovtImmediateAddress | ( | IN UINT16 * | Instruction | ) |
Pass in a pointer to an ARM MOVT or MOVW immediate instruciton and return the immediate data encoded in the instruction.
Instruction | Pointer to ARM MOVT or MOVW immediate instruction |
Definition at line 23 of file PeCoffLoaderEx.c.
Update an ARM MOVT or MOVW immediate instruction immediate data.
Instruction | Pointer to ARM MOVT or MOVW immediate instruction |
Address | New addres to patch into the instruction |
Definition at line 52 of file PeCoffLoaderEx.c.
UINT32 ThumbMovwMovtImmediateAddress | ( | IN UINT16 * | Instructions | ) |
Pass in a pointer to an ARM MOVW/MOVT instruciton pair and return the immediate data encoded in the two` instruction.
Instructions | Pointer to ARM MOVW/MOVT insturction pair |
Definition at line 83 of file PeCoffLoaderEx.c.
Update an ARM MOVW/MOVT immediate instruction instruction pair.
Instructions | Pointer to ARM MOVW/MOVT instruction pair |
Address | New addres to patch into the instructions |
Definition at line 103 of file PeCoffLoaderEx.c.