diff options
author | Jose E. Marchesi <jose.marchesi@oracle.com> | 2019-05-23 19:33:41 +0200 |
---|---|---|
committer | Jose E. Marchesi <jose.marchesi@oracle.com> | 2019-05-23 19:33:41 +0200 |
commit | fd0de36e274c8141a5dd4579cd04856dc88370da (patch) | |
tree | 57c7a0131ce2a1a077f811e6f1ba471034d9bf54 /bfd/config.bfd | |
parent | 8ebe62124023224eafd1b82c8bc2325962711ef8 (diff) | |
download | gdb-fd0de36e274c8141a5dd4579cd04856dc88370da.zip gdb-fd0de36e274c8141a5dd4579cd04856dc88370da.tar.gz gdb-fd0de36e274c8141a5dd4579cd04856dc88370da.tar.bz2 |
bfd: add support for eBPF
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.
Diffstat (limited to 'bfd/config.bfd')
-rw-r--r-- | bfd/config.bfd | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/bfd/config.bfd b/bfd/config.bfd index 8977d2a..562c331 100644 --- a/bfd/config.bfd +++ b/bfd/config.bfd @@ -480,6 +480,12 @@ case "${targ}" in targ_defvec=d30v_elf32_vec ;; + bpf-*-none) + targ_defvec=bpf_elf64_le_vec + targ_selvecs=bpf_elf64_be_vec + targ_underscore=yes + ;; + epiphany-*-*) targ_defvec=epiphany_elf32_vec targ_underscore=yes @@ -1420,6 +1426,12 @@ case "${targ}" in ;; # END OF targmatch.h + bpf-*-*) + echo "*** Configuration $targ is not fully supported." >&2 + echo "*** Use bpf or bpf-*-none as the target instead." >&2 + exit 1 + ;; + *) echo 1>&2 "*** BFD does not support target ${targ}." echo 1>&2 "*** Look in bfd/config.bfd for supported targets." |