Add function to set machine number based on flags in header.
This commit is contained in:
parent
fde78edd7a
commit
c178919ba9
2 changed files with 20 additions and 2 deletions
|
@ -8,6 +8,8 @@
|
||||||
messages and add test for Maverick floating point support.
|
messages and add test for Maverick floating point support.
|
||||||
(elf32_arm_print_private_bfd_data): Handle
|
(elf32_arm_print_private_bfd_data): Handle
|
||||||
EF_ARM_MAVERICK_FLOAT flag.
|
EF_ARM_MAVERICK_FLOAT flag.
|
||||||
|
(elf32_arm_object_p): New function.
|
||||||
|
(elf_backend_object_p): Define.
|
||||||
|
|
||||||
2003-02-10 Alan Modra <amodra@bigpond.net.au>
|
2003-02-10 Alan Modra <amodra@bigpond.net.au>
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/* 32-bit ELF support for ARM
|
/* 32-bit ELF support for ARM
|
||||||
Copyright 1998, 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
|
Copyright 1998, 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
|
||||||
|
|
||||||
This file is part of BFD, the Binary File Descriptor library.
|
This file is part of BFD, the Binary File Descriptor library.
|
||||||
|
|
||||||
|
@ -86,6 +86,8 @@ static void arm_add_to_rel
|
||||||
#endif
|
#endif
|
||||||
static enum elf_reloc_type_class elf32_arm_reloc_type_class
|
static enum elf_reloc_type_class elf32_arm_reloc_type_class
|
||||||
PARAMS ((const Elf_Internal_Rela *));
|
PARAMS ((const Elf_Internal_Rela *));
|
||||||
|
static bfd_boolean elf32_arm_object_p
|
||||||
|
PARAMS ((bfd *));
|
||||||
|
|
||||||
#ifndef ELFARM_NABI_C_INCLUDED
|
#ifndef ELFARM_NABI_C_INCLUDED
|
||||||
static void record_arm_to_thumb_glue
|
static void record_arm_to_thumb_glue
|
||||||
|
@ -2108,6 +2110,20 @@ elf32_arm_relocate_section (output_bfd, info, input_bfd, input_section,
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Set the right machine number. */
|
||||||
|
|
||||||
|
static bfd_boolean
|
||||||
|
elf32_arm_object_p (abfd)
|
||||||
|
bfd *abfd;
|
||||||
|
{
|
||||||
|
/* XXX - we ought to examine a .note section here. */
|
||||||
|
|
||||||
|
if (elf_elfheader (abfd)->e_flags & EF_ARM_MAVERICK_FLOAT)
|
||||||
|
bfd_default_set_arch_mach (abfd, bfd_arch_arm, bfd_mach_arm_ep9312);
|
||||||
|
|
||||||
|
return TRUE;
|
||||||
|
}
|
||||||
|
|
||||||
/* Function to keep ARM specific flags in the ELF header. */
|
/* Function to keep ARM specific flags in the ELF header. */
|
||||||
static bfd_boolean
|
static bfd_boolean
|
||||||
elf32_arm_set_private_flags (abfd, flags)
|
elf32_arm_set_private_flags (abfd, flags)
|
||||||
|
@ -3641,7 +3657,6 @@ elf32_arm_reloc_type_class (rela)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
#define ELF_ARCH bfd_arch_arm
|
#define ELF_ARCH bfd_arch_arm
|
||||||
#define ELF_MACHINE_CODE EM_ARM
|
#define ELF_MACHINE_CODE EM_ARM
|
||||||
#define ELF_MAXPAGESIZE 0x8000
|
#define ELF_MAXPAGESIZE 0x8000
|
||||||
|
@ -3666,6 +3681,7 @@ elf32_arm_reloc_type_class (rela)
|
||||||
#define elf_backend_size_dynamic_sections elf32_arm_size_dynamic_sections
|
#define elf_backend_size_dynamic_sections elf32_arm_size_dynamic_sections
|
||||||
#define elf_backend_post_process_headers elf32_arm_post_process_headers
|
#define elf_backend_post_process_headers elf32_arm_post_process_headers
|
||||||
#define elf_backend_reloc_type_class elf32_arm_reloc_type_class
|
#define elf_backend_reloc_type_class elf32_arm_reloc_type_class
|
||||||
|
#define elf_backend_object_p elf32_arm_object_p
|
||||||
|
|
||||||
#define elf_backend_can_gc_sections 1
|
#define elf_backend_can_gc_sections 1
|
||||||
#define elf_backend_plt_readonly 1
|
#define elf_backend_plt_readonly 1
|
||||||
|
|
Loading…
Reference in a new issue