Lines 3686-3689
Link Here
|
3686 |
#define elf_backend_additional_program_headers \ |
3686 |
#define elf_backend_additional_program_headers \ |
3687 |
elf64_x86_64_additional_program_headers |
3687 |
elf64_x86_64_additional_program_headers |
3688 |
|
3688 |
|
|
|
3689 |
/* FreeBSD support. */ |
3690 |
|
3691 |
#undef TARGET_LITTLE_SYM |
3692 |
#define TARGET_LITTLE_SYM bfd_elf64_x86_64_freebsd_vec |
3693 |
#undef TARGET_LITTLE_NAME |
3694 |
#define TARGET_LITTLE_NAME "elf64-x86-64-freebsd" |
3695 |
|
3696 |
/* The kernel recognizes executables as valid only if they carry a |
3697 |
"FreeBSD" label in the ELF header. So we put this label on all |
3698 |
executables and (for simplicity) also all other object files. */ |
3699 |
|
3700 |
static void |
3701 |
elf_x86_64_post_process_headers (bfd *abfd, |
3702 |
struct bfd_link_info *info ATTRIBUTE_UNUSED) |
3703 |
{ |
3704 |
Elf_Internal_Ehdr *i_ehdrp; |
3705 |
|
3706 |
i_ehdrp = elf_elfheader (abfd); |
3707 |
|
3708 |
/* Put an ABI label supported by FreeBSD >= 4.1. */ |
3709 |
i_ehdrp->e_ident[EI_OSABI] = ELFOSABI_FREEBSD; |
3710 |
} |
3711 |
|
3712 |
#undef elf_backend_post_process_headers |
3713 |
#define elf_backend_post_process_headers elf_x86_64_post_process_headers |
3714 |
#undef elf64_bed |
3715 |
#define elf64_bed elf64_x86_64_fbsd_bed |
3716 |
|
3689 |
#include "elf64-target.h" |
3717 |
#include "elf64-target.h" |