Rename to elf_check_machine to match ELF_MACHINE. Remove the unnecessary definition for loongarch64. Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
47 lines
1.5 KiB
C
47 lines
1.5 KiB
C
/*
|
|
* This program is free software; you can redistribute it and/or modify
|
|
* it under the terms of the GNU General Public License version 2 as
|
|
* published by the Free Software Foundation, or (at your option) any
|
|
* later version. See the COPYING file in the top-level directory.
|
|
*/
|
|
|
|
#ifndef I386_TARGET_ELF_H
|
|
#define I386_TARGET_ELF_H
|
|
|
|
#include "target_ptrace.h"
|
|
|
|
#define ELF_CLASS ELFCLASS32
|
|
#define ELF_MACHINE EM_386
|
|
#define EXSTACK_DEFAULT true
|
|
#define VDSO_HEADER "vdso.c.inc"
|
|
|
|
#define HAVE_ELF_HWCAP 1
|
|
#define HAVE_ELF_PLATFORM 1
|
|
#define HAVE_ELF_CORE_DUMP 1
|
|
|
|
/*
|
|
* See linux kernel: arch/x86/include/asm/elf.h, where elf_gregset_t
|
|
* is mapped to struct user_regs_struct via sizeof.
|
|
*/
|
|
typedef struct target_elf_gregset_t {
|
|
struct target_user_regs_struct pt;
|
|
} target_elf_gregset_t;
|
|
|
|
/*
|
|
* This is used to ensure we don't load something for the wrong architecture.
|
|
*/
|
|
#define elf_check_machine(x) ((x) == EM_386 || (x) == EM_486)
|
|
|
|
/*
|
|
* i386 is the only target which supplies AT_SYSINFO for the vdso.
|
|
* All others only supply AT_SYSINFO_EHDR.
|
|
*/
|
|
#define DLINFO_ARCH_ITEMS (vdso_info != NULL)
|
|
#define ARCH_DLINFO \
|
|
do { \
|
|
if (vdso_info) { \
|
|
NEW_AUX_ENT(AT_SYSINFO, vdso_info->entry); \
|
|
} \
|
|
} while (0)
|
|
|
|
#endif
|