Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 5436b5c8 authored by Will Deacon's avatar Will Deacon Committed by Catalin Marinas
Browse files

arm64: ELF: add support for big-endian executables



This patch adds support for the aarch64_be ELF format to the AArch64 ELF
loader.

Signed-off-by: default avatarWill Deacon <will.deacon@arm.com>
Signed-off-by: default avatarCatalin Marinas <catalin.marinas@arm.com>
parent c194520a
Loading
Loading
Loading
Loading
+13 −0
Original line number Diff line number Diff line
@@ -90,11 +90,24 @@ typedef struct user_fpsimd_state elf_fpregset_t;
 * These are used to set parameters in the core dumps.
 */
#define ELF_CLASS	ELFCLASS64
#ifdef __AARCH64EB__
#define ELF_DATA	ELFDATA2MSB
#else
#define ELF_DATA	ELFDATA2LSB
#endif
#define ELF_ARCH	EM_AARCH64

/*
 * This yields a string that ld.so will use to load implementation
 * specific libraries for optimization.  This is more specific in
 * intent than poking at uname or /proc/cpuinfo.
 */
#define ELF_PLATFORM_SIZE	16
#ifdef __AARCH64EB__
#define ELF_PLATFORM		("aarch64_be")
#else
#define ELF_PLATFORM		("aarch64")
#endif

/*
 * This is used to ensure we don't load something for the wrong architecture.