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

Commit 4a2e034e authored by Ard Biesheuvel's avatar Ard Biesheuvel Committed by Catalin Marinas
Browse files

arm64: make asm/elf.h available to asm files



This reshuffles some code in asm/elf.h and puts a #ifndef __ASSEMBLY__
around its C definitions so that the CPP defines can be used in asm
source files as well.

Acked-by: default avatarMark Rutland <mark.rutland@arm.com>
Signed-off-by: default avatarArd Biesheuvel <ard.biesheuvel@linaro.org>
Signed-off-by: default avatarCatalin Marinas <catalin.marinas@arm.com>
parent 2bf31a4a
Loading
Loading
Loading
Loading
+13 −9
Original line number Original line Diff line number Diff line
@@ -24,15 +24,6 @@
#include <asm/ptrace.h>
#include <asm/ptrace.h>
#include <asm/user.h>
#include <asm/user.h>


typedef unsigned long elf_greg_t;

#define ELF_NGREG (sizeof(struct user_pt_regs) / sizeof(elf_greg_t))
#define ELF_CORE_COPY_REGS(dest, regs)	\
	*(struct user_pt_regs *)&(dest) = (regs)->user_regs;

typedef elf_greg_t elf_gregset_t[ELF_NGREG];
typedef struct user_fpsimd_state elf_fpregset_t;

/*
/*
 * AArch64 static relocation types.
 * AArch64 static relocation types.
 */
 */
@@ -127,6 +118,17 @@ typedef struct user_fpsimd_state elf_fpregset_t;
 */
 */
#define ELF_ET_DYN_BASE	(2 * TASK_SIZE_64 / 3)
#define ELF_ET_DYN_BASE	(2 * TASK_SIZE_64 / 3)


#ifndef __ASSEMBLY__

typedef unsigned long elf_greg_t;

#define ELF_NGREG (sizeof(struct user_pt_regs) / sizeof(elf_greg_t))
#define ELF_CORE_COPY_REGS(dest, regs)	\
	*(struct user_pt_regs *)&(dest) = (regs)->user_regs;

typedef elf_greg_t elf_gregset_t[ELF_NGREG];
typedef struct user_fpsimd_state elf_fpregset_t;

/*
/*
 * When the program starts, a1 contains a pointer to a function to be
 * When the program starts, a1 contains a pointer to a function to be
 * registered with atexit, as per the SVR4 ABI.  A value of 0 means we have no
 * registered with atexit, as per the SVR4 ABI.  A value of 0 means we have no
@@ -186,4 +188,6 @@ extern int aarch32_setup_vectors_page(struct linux_binprm *bprm,


#endif /* CONFIG_COMPAT */
#endif /* CONFIG_COMPAT */


#endif /* !__ASSEMBLY__ */

#endif
#endif