From fe944acf8f858cfe6bcfd00670a88847a464717c Mon Sep 17 00:00:00 2001 From: "Francois H. Theron" Date: Mon, 30 Apr 2018 17:02:59 +0100 Subject: This patch adds support to objdump for disassembly of NFP (Netronome Flow Processor) ELF files (.nffw) as well as some basic readelf support. bfd * Makefile.am: Added NFP files to build. * archures.c: Added bfd_arch_nfp * config.bfd: Added NFP support. * configure.ac: Added NFP support. * cpu-nfp.c: New, for NFP support. * elf-bfd.h: Added elf_section_info() * elf64-nfp.c: New, for NFP support. * po/SRC-POTFILES.in: Added NFP source files. * targets.c: Added nfp_elf64_vec * bfd-in2.h: Regenerate. * Makefile.in: Regenerate. * configure: Regenerate. binutils* readelf.c: Very basic support for EM_NFP and its section types. * testsuite/binutils-all/nfp: New directory. * testsuite/binutils-all/nfp/objdump.exp: New file. Run new tests. * testsuite/binutils-all/nfp/test2_ctx8.d: New file. * testsuite/binutils-all/nfp/test2_no-pc_ctx4.d: New file. * testsuite/binutils-all/nfp/test1.d: New file. * testsuite/binutils-all/nfp/nfp6000.nffw: New file. * testsuite/binutils-all/nfp/test2_nfp6000.nffw: New file. * NEWS: Mention the new support. include * dis-asm.h: Added print_nfp_disassembler_options prototype. * elf/common.h: Added EM_NFP, officially assigned. See Google Group Generic System V Application Binary Interface. * elf/nfp.h: New, for NFP support. * opcode/nfp.h: New, for NFP support. opcodes Makefile.am: Added nfp-dis.c. configure.ac: Added bfd_nfp_arch. disassemble.h: Added print_insn_nfp prototype. disassemble.c: Added ARCH_nfp and call to print_insn_nfp nfp-dis.c: New, for NFP support. po/POTFILES.in: Added nfp-dis.c to the list. Makefile.in: Regenerate. configure: Regenerate. --- opcodes/disassemble.c | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'opcodes/disassemble.c') diff --git a/opcodes/disassemble.c b/opcodes/disassemble.c index 4cb90f1..100ccd3 100644 --- a/opcodes/disassemble.c +++ b/opcodes/disassemble.c @@ -64,6 +64,7 @@ #define ARCH_mt #define ARCH_msp430 #define ARCH_nds32 +#define ARCH_nfp #define ARCH_nios2 #define ARCH_ns32k #define ARCH_or1k @@ -275,6 +276,11 @@ disassembler (enum bfd_architecture a, disassemble = print_insn_nds32; break; #endif +#ifdef ARCH_nfp + case bfd_arch_nfp: + disassemble = print_insn_nfp; + break; +#endif #ifdef ARCH_ns32k case bfd_arch_ns32k: disassemble = print_insn_ns32k; @@ -537,6 +543,9 @@ disassembler_usage (FILE *stream ATTRIBUTE_UNUSED) #ifdef ARCH_mips print_mips_disassembler_options (stream); #endif +#ifdef ARCH_nfp + print_nfp_disassembler_options (stream); +#endif #ifdef ARCH_powerpc print_ppc_disassembler_options (stream); #endif -- cgit v1.1