fd0de36e27
This patch adds support to BFD for elf64-bpf, in both little-endian and big-endian variants. bfd/ChangeLog: 2019-05-23 Jose E. Marchesi <jose.marchesi@oracle.com> * configure.ac: Add bpf_elf64_le_vec and bpf_elf64_be_vec. * configure: Regenerated. * Makefile.am (ALL_MACHINES): Add cpu-bpf.lo. (ALL_MACHINES_CFILES): Add cpu-bpf.c. (BFD64_BACKENDS): Add elf64-bpf.lo. (BFD64_BACKENDS_CFILES): Add elf64-bpf.c. * Makefile.in (SOURCE_HFILES): Regenerate. * config.bfd (targ_cpu): Handle bpf-*-* targets. * cpu-bpf.c: New file. * elf64-bpf.c: Likewise. * targets.c (_bfd_target_vector): Add bpf_elf64_be_vec and bpf_elf64_le_vec. * archures.c: Define architecture bfd_arch_bpf and machine bfd_arch_bpf. * reloc.c: Define BFD relocations used by the BPF target. * bfd-in2.h: Regenerated. * libbfd.h: Likewise.
42 lines
1.5 KiB
C
42 lines
1.5 KiB
C
/* BFD support for the BPF processor.
|
|
Copyright (C) 2019 Free Software Foundation, Inc.
|
|
Contributed by Oracle Inc.
|
|
|
|
This file is part of BFD, the Binary File Descriptor library.
|
|
|
|
This program is free software; you can redistribute it and/or modify
|
|
it under the terms of the GNU General Public License as published by
|
|
the Free Software Foundation; either version 3 of the License, or
|
|
(at your option) any later version.
|
|
|
|
This program is distributed in the hope that it will be useful,
|
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
GNU General Public License for more details.
|
|
|
|
You should have received a copy of the GNU General Public License
|
|
along with this program; if not, write to the Free Software
|
|
Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston,
|
|
MA 02110-1301, USA. */
|
|
|
|
#include "sysdep.h"
|
|
#include "bfd.h"
|
|
#include "libbfd.h"
|
|
|
|
const bfd_arch_info_type bfd_bpf_arch =
|
|
{
|
|
64, /* Bits per word */
|
|
64, /* Bits per address. */
|
|
8, /* Bits per byte. */
|
|
bfd_arch_bpf, /* Architecture. */
|
|
bfd_mach_bpf, /* Machine. */
|
|
"bpf", /* Architecture name. */
|
|
"bpf", /* Machine name. */
|
|
3, /* Section align power. */
|
|
TRUE, /* The default ? */
|
|
bfd_default_compatible, /* Architecture comparison fn. */
|
|
bfd_default_scan, /* String to architecture convert fn. */
|
|
bfd_arch_default_fill, /* Default fill. */
|
|
NULL /* Next in list. */
|
|
};
|