binutils-gdb/bfd
Maciej W. Rozycki 38bf472a15 MIPS: Add Imagination interAptiv MR2 MIPS32r3 processor support
Add support for the Imagination interAptiv MR2 MIPS32r3 processor with
the MIPS16e2 ASE as per documentation, including in particular:

1. Support for implementation-specific interAptiv MR2 COPYW and UCOPYW
   MIPS16e2 instructions[1], for assembly and disassembly,

2. Support for implementation-specific interAptiv MR2 SAVE and RESTORE
   regular MIPS instructions[2], for assembly and disassembly,

3. ELF binary file annotation for the interAptiv MR2 MIPS architecture
   extension.

4. Support for interAptiv MR2 architecture selection for assembly, in
   the form of the `-march=interaptiv-mr2' command-line option and its
   corresponding `arch=interaptiv-mr2' setting for the `.set' and
   `.module' pseudo-ops.

5. Support for interAptiv MR2 architecture selection for disassembly,
   in the form of the `mips:interaptiv-mr2' target architecture, for
   use e.g. with the `-m' command-line option for `objdump'.

Parts of this change by Matthew Fortune and Andrew Bennett.

References:

[1] "MIPS32 interAptiv Multiprocessing System Software User's Manual",
    Imagination Technologies Ltd., Document Number: MD00904, Revision
    02.01, June 15, 2016, Section 24.3 "MIPS16e2 Implementation Specific
    Instructions", pp. 878-883

[2] same, Chapter 25 "Implementation-specific Instructions", pp. 911-917

	include/
	* elf/mips.h (E_MIPS_MACH_IAMR2): New macro.
	(AFL_EXT_INTERAPTIV_MR2): Likewise.
	* opcode/mips.h: Document new operand codes defined.
	(INSN_INTERAPTIV_MR2): New macro.
	(INSN_CHIP_MASK): Adjust accordingly.
	(CPU_INTERAPTIV_MR2): New macro.
	(cpu_is_member) <CPU_INTERAPTIV_MR2>: New case.
	(MIPS16_ALL_ARGS): Rename to...
	(MIPS_SVRS_ALL_ARGS): ... this.
	(MIPS16_ALL_STATICS): Rename to...
	(MIPS_SVRS_ALL_STATICS): ... this.

	bfd/
	* archures.c (bfd_mach_mips_interaptiv_mr2): New macro.
	* cpu-mips.c (I_interaptiv_mr2): New enum value.
	(arch_info_struct): Add "mips:interaptiv-mr2" entry.
	* elfxx-mips.c (_bfd_elf_mips_mach) <E_MIPS_MACH_IAMR2>: New
	case.
	(mips_set_isa_flags) <bfd_mach_mips_interaptiv_mr2>: Likewise.
	(bfd_mips_isa_ext) <bfd_mach_mips_interaptiv_mr2>: Likewise.
	(print_mips_isa_ext) <AFL_EXT_INTERAPTIV_MR2>: Likewise.
	(mips_mach_extensions): Add `bfd_mach_mipsisa32r3' and
	`bfd_mach_mips_interaptiv_mr2' entries.
	* bfd-in2.h: Regenerate.

	opcodes/
	* mips-formats.h (INT_BIAS): New macro.
	(INT_ADJ): Redefine in INT_BIAS terms.
	* mips-dis.c (mips_arch_choices): Add "interaptiv-mr2" entry.
	(mips_print_save_restore): New function.
	(print_insn_arg) <OP_SAVE_RESTORE_LIST>: Update comment.
	(validate_insn_args) <OP_SAVE_RESTORE_LIST>: Remove `abort'
	call.
	(print_insn_args): Handle OP_SAVE_RESTORE_LIST.
	(print_mips16_insn_arg): Call `mips_print_save_restore' for
	OP_SAVE_RESTORE_LIST handling, factored out from here.
	* mips-opc.c (decode_mips_operand) <'-'> <'m'>: New case.
	(RD_31, RD_SP, WR_SP, MOD_SP, IAMR2): New macros.
	(mips_builtin_opcodes): Add "restore" and "save" entries.
	* mips16-opc.c (decode_mips16_operand) <'n', 'o'>: New cases.
	(IAMR2): New macro.
	(mips16_opcodes): Add "copyw" and "ucopyw" entries.

	binutils/
	* readelf.c (get_machine_flags) <E_MIPS_MACH_IAMR2>: New case.
	(print_mips_isa_ext) <AFL_EXT_INTERAPTIV_MR2>: Likewise.
	* NEWS: Mention Imagination interAptiv MR2 processor support.

	gas/
	* config/tc-mips.c (validate_mips_insn): Handle
	OP_SAVE_RESTORE_LIST specially.
	(mips_encode_save_restore, mips16_encode_save_restore): New
	functions.
	(match_save_restore_list_operand): Factor out SAVE/RESTORE
	operand insertion into the instruction word or halfword to these
	new functions.
	(mips_cpu_info_table): Add "interaptiv-mr2" entry.

	* doc/c-mips.texi (MIPS Options): Add `interaptiv-mr2' to the
	`-march=' argument list.
2017-06-28 02:07:36 +01:00
..
doc Add support for the WebAssembly backend to the BFD library. 2017-03-27 13:41:39 +01:00
hosts
po Regen SRC-POTFILES.in 2017-04-07 00:17:09 +09:30
.gitignore
acinclude.m4
aclocal.m4
aix5ppc-core.c
aix386-core.c
aout0.c
aout32.c
aout64.c
aout-adobe.c Rewrite __start and __stop symbol handling 2017-06-16 23:38:28 +09:30
aout-arm.c
aout-cris.c Use %A and %B in more error messages 2017-04-13 17:07:24 +09:30
aout-ns32k.c
aout-sparcle.c
aout-target.h Rewrite __start and __stop symbol handling 2017-06-16 23:38:28 +09:30
aout-tic30.c Rewrite __start and __stop symbol handling 2017-06-16 23:38:28 +09:30
aoutf1.h
aoutx.h binutils: support for the SPARC M8 processor 2017-05-19 09:27:08 -07:00
arc-got.h [ARC] Fixed TLS for IE model. 2017-06-08 19:00:36 +02:00
arc-plt.def
arc-plt.h
archive64.c
archive.c Use %A and %B in more error messages 2017-04-13 17:07:24 +09:30
archures.c MIPS: Add Imagination interAptiv MR2 MIPS32r3 processor support 2017-06-28 02:07:36 +01:00
armnetbsd.c
bfd-in2.h MIPS: Add Imagination interAptiv MR2 MIPS32r3 processor support 2017-06-28 02:07:36 +01:00
bfd-in.h
bfd.c bfd: new BFD target entry point _bfd_set_reloc. 2017-05-10 18:45:30 +02:00
bfd.m4
bfdio.c Add bfd_get_file_size to get archive element size 2017-05-30 06:34:40 -07:00
bfdwin.c
binary.c Rewrite __start and __stop symbol handling 2017-06-16 23:38:28 +09:30
bout.c Rewrite __start and __stop symbol handling 2017-06-16 23:38:28 +09:30
cache.c
cf-i386lynx.c
cf-sparclynx.c
ChangeLog MIPS: Add Imagination interAptiv MR2 MIPS32r3 processor support 2017-06-28 02:07:36 +01:00
ChangeLog-0001
ChangeLog-0203
ChangeLog-2004
ChangeLog-2005
ChangeLog-2006
ChangeLog-2007
ChangeLog-2008
ChangeLog-2009
ChangeLog-2010
ChangeLog-2011
ChangeLog-2012
ChangeLog-2013
ChangeLog-2014
ChangeLog-2015
ChangeLog-2016
ChangeLog-9193
ChangeLog-9495
ChangeLog-9697
ChangeLog-9899
cisco-core.c
coff64-rs6000.c Rewrite __start and __stop symbol handling 2017-06-16 23:38:28 +09:30
coff-alpha.c Rewrite __start and __stop symbol handling 2017-06-16 23:38:28 +09:30
coff-apollo.c
coff-arm.c Rewrite bfd error handler 2017-04-13 17:07:24 +09:30
coff-aux.c
coff-bfd.c
coff-bfd.h Improve the speed of scanning PE binaries for line number information. 2017-03-29 12:27:44 +01:00
coff-go32.c
coff-h8300.c
coff-h8500.c
coff-i386.c
coff-i860.c
coff-i960.c
coff-ia64.c
coff-m68k.c
coff-m88k.c
coff-mcore.c Rewrite bfd error handler 2017-04-13 17:07:24 +09:30
coff-mips.c Rewrite __start and __stop symbol handling 2017-06-16 23:38:28 +09:30
coff-ppc.c Rewrite bfd error handler 2017-04-13 17:07:24 +09:30
coff-rs6000.c Rewrite __start and __stop symbol handling 2017-06-16 23:38:28 +09:30
coff-sh.c Fix addrss violation when processing a corrupt SH COFF binary. 2017-06-21 16:36:44 +01:00
coff-sparc.c
coff-stgo32.c
coff-svm68k.c
coff-tic4x.c Use %A and %B in more error messages 2017-04-13 17:07:24 +09:30
coff-tic30.c
coff-tic54x.c
coff-tic80.c Rewrite bfd error handler 2017-04-13 17:07:24 +09:30
coff-u68k.c
coff-w65.c
coff-we32k.c
coff-x86_64.c
coff-z8k.c
coff-z80.c
coffcode.h Rewrite __start and __stop symbol handling 2017-06-16 23:38:28 +09:30
coffgen.c Use %A and %B in more error messages 2017-04-13 17:07:24 +09:30
cofflink.c Use %A and %B in more error messages 2017-04-13 17:07:24 +09:30
coffswap.h Use %A and %B in more error messages 2017-04-13 17:07:24 +09:30
compress.c Check file size before getting section contents 2017-06-26 09:30:20 -07:00
config.bfd Correct target_underscore for cris 2017-06-19 16:05:09 +09:30
config.in
configure ld: Support ELF GNU program properties 2017-04-03 08:08:27 -07:00
configure.ac ld: Support ELF GNU program properties 2017-04-03 08:08:27 -07:00
configure.com
configure.host
COPYING
corefile.c
cpu-aarch64.c
cpu-alpha.c
cpu-arc.c [ARC] Implement compatible function for ARC BFD architectures 2017-05-30 16:51:14 +03:00
cpu-arm.c Use %A and %B in more error messages 2017-04-13 17:07:24 +09:30
cpu-avr.c
cpu-bfin.c
cpu-cr16.c
cpu-cr16c.c
cpu-cris.c
cpu-crx.c
cpu-d10v.c
cpu-d30v.c
cpu-dlx.c
cpu-epiphany.c
cpu-fr30.c
cpu-frv.c
cpu-ft32.c
cpu-h8300.c
cpu-h8500.c
cpu-hppa.c
cpu-i370.c
cpu-i386.c
cpu-i860.c
cpu-i960.c
cpu-ia64-opc.c
cpu-ia64.c
cpu-iamcu.c
cpu-ip2k.c
cpu-iq2000.c
cpu-k1om.c
cpu-l1om.c
cpu-lm32.c
cpu-m9s12x.c
cpu-m9s12xg.c
cpu-m32c.c
cpu-m32r.c
cpu-m68hc11.c
cpu-m68hc12.c
cpu-m68k.c
cpu-m88k.c
cpu-m10200.c
cpu-m10300.c
cpu-mcore.c
cpu-mep.c
cpu-metag.c
cpu-microblaze.c
cpu-mips.c MIPS: Add Imagination interAptiv MR2 MIPS32r3 processor support 2017-06-28 02:07:36 +01:00
cpu-mmix.c
cpu-moxie.c
cpu-msp430.c
cpu-mt.c
cpu-nds32.c
cpu-nios2.c
cpu-ns32k.c
cpu-or1k.c
cpu-pdp11.c
cpu-pj.c
cpu-plugin.c
cpu-powerpc.c
cpu-pru.c
cpu-riscv.c
cpu-rl78.c
cpu-rs6000.c
cpu-rx.c
cpu-s390.c
cpu-score.c
cpu-sh.c
cpu-sparc.c binutils: support for the SPARC M8 processor 2017-05-19 09:27:08 -07:00
cpu-spu.c
cpu-tic4x.c
cpu-tic6x.c
cpu-tic30.c
cpu-tic54x.c
cpu-tic80.c
cpu-tilegx.c
cpu-tilepro.c
cpu-v850_rh850.c
cpu-v850.c
cpu-vax.c
cpu-visium.c
cpu-w65.c
cpu-wasm32.c Add minimal support for WebAssembly backend to the BFD library. 2017-03-27 11:39:50 +01:00
cpu-we32k.c
cpu-xc16x.c
cpu-xgate.c
cpu-xstormy16.c
cpu-xtensa.c
cpu-z8k.c
cpu-z80.c
demo64.c
dep-in.sed
development.sh
dwarf1.c
dwarf2.c PR 21409, segfault in _bfd_dwarf2_find_nearest_line 2017-04-23 20:33:13 +09:30
ecoff.c
ecofflink.c
ecoffswap.h
elf32-am33lin.c
elf32-arc.c [ARC] Corrected conditions for dynamic sections creation. 2017-06-08 19:00:37 +02:00
elf32-arm.c [ARM] Add linker support for ARMv8-R 2017-06-24 10:48:08 +01:00
elf32-avr.c Fix PR 13402 2017-06-27 14:47:02 +05:30
elf32-avr.h
elf32-bfin.c Don't compare boolean values against TRUE or FALSE 2017-05-18 14:59:33 +09:30
elf32-cr16.c Rename non_ir_ref to non_ir_ref_regular 2017-05-16 10:35:02 +09:30
elf32-cr16c.c
elf32-cris.c Rename non_ir_ref to non_ir_ref_regular 2017-05-16 10:35:02 +09:30
elf32-crx.c
elf32-d10v.c Rename non_ir_ref to non_ir_ref_regular 2017-05-16 10:35:02 +09:30
elf32-d30v.c
elf32-dlx.c Rename non_ir_ref to non_ir_ref_regular 2017-05-16 10:35:02 +09:30
elf32-dlx.h
elf32-epiphany.c
elf32-fr30.c Rename non_ir_ref to non_ir_ref_regular 2017-05-16 10:35:02 +09:30
elf32-frv.c Rename non_ir_ref to non_ir_ref_regular 2017-05-16 10:35:02 +09:30
elf32-ft32.c
elf32-gen.c
elf32-h8300.c
elf32-hppa.c Rename non_ir_ref to non_ir_ref_regular 2017-05-16 10:35:02 +09:30
elf32-hppa.h
elf32-i370.c Rename non_ir_ref to non_ir_ref_regular 2017-05-16 10:35:02 +09:30
elf32-i386.c x86: Resolve local undefined weak symbol to 0 2017-06-22 12:53:39 -07:00
elf32-i860.c
elf32-i960.c
elf32-ip2k.c
elf32-iq2000.c Rename non_ir_ref to non_ir_ref_regular 2017-05-16 10:35:02 +09:30
elf32-lm32.c Rename non_ir_ref to non_ir_ref_regular 2017-05-16 10:35:02 +09:30
elf32-m32c.c Rename non_ir_ref to non_ir_ref_regular 2017-05-16 10:35:02 +09:30
elf32-m32r.c Rename non_ir_ref to non_ir_ref_regular 2017-05-16 10:35:02 +09:30
elf32-m68hc1x.c Rename non_ir_ref to non_ir_ref_regular 2017-05-16 10:35:02 +09:30
elf32-m68hc1x.h
elf32-m68hc11.c
elf32-m68hc12.c
elf32-m68k.c Don't compare boolean values against TRUE or FALSE 2017-05-18 14:59:33 +09:30
elf32-m88k.c
elf32-mcore.c Rename non_ir_ref to non_ir_ref_regular 2017-05-16 10:35:02 +09:30
elf32-mep.c Wrap long lines 2017-04-13 17:07:25 +09:30
elf32-metag.c Rename non_ir_ref to non_ir_ref_regular 2017-05-16 10:35:02 +09:30
elf32-metag.h
elf32-microblaze.c Rename non_ir_ref to non_ir_ref_regular 2017-05-16 10:35:02 +09:30
elf32-mips.c
elf32-moxie.c Rename non_ir_ref to non_ir_ref_regular 2017-05-16 10:35:02 +09:30
elf32-msp430.c Rename non_ir_ref to non_ir_ref_regular 2017-05-16 10:35:02 +09:30
elf32-mt.c Rename non_ir_ref to non_ir_ref_regular 2017-05-16 10:35:02 +09:30
elf32-nds32.c Don't compare boolean values against TRUE or FALSE 2017-05-18 14:59:33 +09:30
elf32-nds32.h
elf32-nios2.c Rename non_ir_ref to non_ir_ref_regular 2017-05-16 10:35:02 +09:30
elf32-nios2.h
elf32-or1k.c Rename non_ir_ref to non_ir_ref_regular 2017-05-16 10:35:02 +09:30
elf32-pj.c
elf32-ppc.c Rename non_ir_ref to non_ir_ref_regular 2017-05-16 10:35:02 +09:30
elf32-ppc.h
elf32-pru.c
elf32-rl78.c Rename non_ir_ref to non_ir_ref_regular 2017-05-16 10:35:02 +09:30
elf32-rx.c Use %A and %B in more error messages 2017-04-13 17:07:24 +09:30
elf32-rx.h
elf32-s390.c S/390: Return with an error for broken tls rewrites 2017-06-12 10:54:55 +02:00
elf32-score7.c bfd: remove unused local variables in elf32-score, elf32-score7 and elfxx-mips 2017-06-06 00:33:20 -07:00
elf32-score.c bfd: remove unused local variables in elf32-score, elf32-score7 and elfxx-mips 2017-06-06 00:33:20 -07:00
elf32-score.h
elf32-sh64-com.c
elf32-sh64.c Use %A and %B in more error messages 2017-04-13 17:07:24 +09:30
elf32-sh64.h
elf32-sh-relocs.h
elf32-sh-symbian.c
elf32-sh.c Fix address violation bug when disassembling a corrupt SH binary. 2017-06-14 17:01:54 +01:00
elf32-sparc.c binutils: support for the SPARC M8 processor 2017-05-19 09:27:08 -07:00
elf32-spu.c Rewrite bfd error handler 2017-04-13 17:07:24 +09:30
elf32-spu.h
elf32-tic6x.c Rename non_ir_ref to non_ir_ref_regular 2017-05-16 10:35:02 +09:30
elf32-tic6x.h
elf32-tilegx.c
elf32-tilegx.h
elf32-tilepro.c Don't compare boolean values against TRUE or FALSE 2017-05-18 14:59:33 +09:30
elf32-tilepro.h
elf32-v850.c Fix address violations when atempting to parse fuzzed binaries. 2017-06-26 15:25:08 +01:00
elf32-vax.c Rename non_ir_ref to non_ir_ref_regular 2017-05-16 10:35:02 +09:30
elf32-visium.c Use %A and %B in more error messages 2017-04-13 17:07:24 +09:30
elf32-wasm32.c Add support for the WebAssembly file format and the wasm32 ELF conversion to gas and the binutils. 2017-03-30 10:57:21 +01:00
elf32-xc16x.c
elf32-xgate.c
elf32-xgate.h
elf32-xstormy16.c Rename non_ir_ref to non_ir_ref_regular 2017-05-16 10:35:02 +09:30
elf32-xtensa.c xtensa: don't expect XCHAL_* macros to be constant 2017-06-14 11:05:50 -07:00
elf32.c
elf64-alpha.c Rename non_ir_ref to non_ir_ref_regular 2017-05-16 10:35:02 +09:30
elf64-gen.c
elf64-hppa.c Rename non_ir_ref to non_ir_ref_regular 2017-05-16 10:35:02 +09:30
elf64-hppa.h
elf64-ia64-vms.c Rename non_ir_ref to non_ir_ref_regular 2017-05-16 10:35:02 +09:30
elf64-mips.c ELF/BFD: Hold the number of internal static relocs in `->reloc_count' 2017-06-06 01:34:23 +01:00
elf64-mmix.c Rename non_ir_ref to non_ir_ref_regular 2017-05-16 10:35:02 +09:30
elf64-ppc.c PowerPC64 localentry:0 plt calls 2017-06-21 22:45:15 +09:30
elf64-ppc.h PPC64_OPT_LOCALENTRY 2017-06-01 22:47:32 +09:30
elf64-s390.c S/390: Fix testsuite segfault added with recent pgste patch. 2017-06-26 11:01:58 +02:00
elf64-sh64.c Rename non_ir_ref to non_ir_ref_regular 2017-05-16 10:35:02 +09:30
elf64-sparc.c bfd: fix the deletion of relocs in sparc64 2017-05-10 18:45:30 +02:00
elf64-tilegx.c
elf64-tilegx.h
elf64-x86-64.c x86-64: Move the error_alignment label forward 2017-06-22 14:26:09 -07:00
elf64.c
elf-attrs.c
elf-bfd.h Rewrite __start and __stop symbol handling 2017-06-16 23:38:28 +09:30
elf-eh-frame.c Constify elf_backend_eh_frame_address_size 2017-04-27 12:03:39 +09:30
elf-hppa.h
elf-ifunc.c
elf-linux-core.h
elf-m10200.c
elf-m10300.c Don't compare boolean values against TRUE or FALSE 2017-05-18 14:59:33 +09:30
elf-nacl.c
elf-nacl.h
elf-properties.c Check the DYNAMIC bit for input shared objects 2017-06-19 20:30:20 -07:00
elf-s390-common.c S/390: Fix ifunc missing runtime reloc 2017-05-08 19:43:20 +02:00
elf-s390.h S/390: Add support for pgste marker 2017-06-23 08:00:46 +02:00
elf-strtab.c
elf-vxworks.c
elf-vxworks.h
elf.c fix out-of-bounds access in elf.c:find_link 2017-06-25 10:29:57 +09:30
elfcode.h Use %A and %B in more error messages 2017-04-13 17:07:24 +09:30
elfcore.h
elflink.c Don't attach linker created section to --just-syms bfd 2017-06-26 09:10:22 +09:30
elfn32-mips.c
elfnn-aarch64.c [AArch64] Use SYMBOL_REFERENCES_LOCAL in one symbol check 2017-06-16 14:20:38 +01:00
elfnn-ia64.c Rename non_ir_ref to non_ir_ref_regular 2017-05-16 10:35:02 +09:30
elfnn-riscv.c RISC-V: Use pc-relative relocation for FDE initial location 2017-06-26 18:26:40 -07:00
elfxx-aarch64.c Rename R_AARCH64_TLSDESC_LD64_LO12_NC to R_AARCH64_TLSDESC_LD64_LO12 and R_AARCH64_TLSDESC_ADD_LO12_NC to R_AARCH64_TLSDESC_ADD_LO12. 2017-03-13 09:58:04 +00:00
elfxx-aarch64.h
elfxx-ia64.c
elfxx-ia64.h
elfxx-mips.c MIPS: Add Imagination interAptiv MR2 MIPS32r3 processor support 2017-06-28 02:07:36 +01:00
elfxx-mips.h Constify elf_backend_eh_frame_address_size 2017-04-27 12:03:39 +09:30
elfxx-riscv.c RISC-V: Use pc-relative relocation for FDE initial location 2017-06-26 18:26:40 -07:00
elfxx-riscv.h
elfxx-sparc.c binutils: support for the SPARC M8 processor 2017-05-19 09:27:08 -07:00
elfxx-sparc.h Port the bug fix for PR 19704 (Missing dynamic relocation against undefined weak symbol) to the SPARC architecture. 2017-04-10 12:46:30 +01:00
elfxx-target.h Rewrite __start and __stop symbol handling 2017-06-16 23:38:28 +09:30
elfxx-tilegx.c Don't compare boolean values against TRUE or FALSE 2017-05-18 14:59:33 +09:30
elfxx-tilegx.h
epoc-pe-arm.c
epoc-pei-arm.c
format.c
freebsd.h
gen-aout.c
genlink.h
go32stub.h
hash.c
host-aout.c
hp300bsd.c
hp300hpux.c
hppabsd-core.c
hpux-core.c Use %A and %B in more error messages 2017-04-13 17:07:24 +09:30
i386aout.c
i386bsd.c
i386dynix.c
i386freebsd.c
i386linux.c
i386lynx.c
i386mach3.c
i386msdos.c Rewrite __start and __stop symbol handling 2017-06-16 23:38:28 +09:30
i386netbsd.c
i386os9k.c Rewrite __start and __stop symbol handling 2017-06-16 23:38:28 +09:30
ieee.c Fix address violation when parsing a corrupt IEEE binary. 2017-06-21 10:54:04 +01:00
ihex.c Rewrite __start and __stop symbol handling 2017-06-16 23:38:28 +09:30
init.c
irix-core.c
libaout.h
libbfd-in.h Rewrite __start and __stop symbol handling 2017-06-16 23:38:28 +09:30
libbfd.c Warning fix 2017-06-27 14:46:52 +09:30
libbfd.h RISC-V: Use pc-relative relocation for FDE initial location 2017-06-26 18:26:40 -07:00
libcoff-in.h
libcoff.h
libecoff.h
libhppa.h
libieee.h Fix access violation when parsing a corrupt IEEE binary. 2017-06-19 14:06:53 +01:00
libnlm.h
liboasys.h
libpei.h
libxcoff.h
linker.c Rewrite __start and __stop symbol handling 2017-06-16 23:38:28 +09:30
lynx-core.c
m68k4knetbsd.c
m68klinux.c
m68knetbsd.c
m88kmach3.c
m88kopenbsd.c
mach-o-aarch64.c
mach-o-arm.c
mach-o-i386.c
mach-o-target.c Rewrite __start and __stop symbol handling 2017-06-16 23:38:28 +09:30
mach-o-x86-64.c
mach-o.c Don't compare boolean values against TRUE or FALSE 2017-05-18 14:59:33 +09:30
mach-o.h
MAINTAINERS
Makefile.am ld: Support ELF GNU program properties 2017-04-03 08:08:27 -07:00
Makefile.in ld: Support ELF GNU program properties 2017-04-03 08:08:27 -07:00
makefile.vms
mep-relocs.pl
merge.c Use %A and %B in more error messages 2017-04-13 17:07:24 +09:30
mipsbsd.c
mmo.c Rewrite __start and __stop symbol handling 2017-06-16 23:38:28 +09:30
netbsd-core.c
netbsd.h
newsos3.c
nlm32-alpha.c
nlm32-i386.c
nlm32-ppc.c
nlm32-sparc.c
nlm32.c
nlm64.c
nlm-target.h Rewrite __start and __stop symbol handling 2017-06-16 23:38:28 +09:30
nlm.c
nlmcode.h
nlmswap.h
ns32k.h
ns32knetbsd.c
oasys.c Rewrite __start and __stop symbol handling 2017-06-16 23:38:28 +09:30
opncls.c Fix address violations when atempting to parse fuzzed binaries. 2017-06-26 15:25:08 +01:00
osf-core.c
pc532-mach.c
pdp11.c Use %A and %B in more error messages 2017-04-13 17:07:24 +09:30
pe-arm-wince.c
pe-arm.c
pe-i386.c
pe-mcore.c
pe-mips.c
pe-ppc.c
pe-sh.c
pe-x86_64.c
pef-traceback.h
pef.c Rewrite __start and __stop symbol handling 2017-06-16 23:38:28 +09:30
pef.h
pei-arm-wince.c
pei-arm.c
pei-i386.c
pei-ia64.c
pei-mcore.c
pei-mips.c
pei-ppc.c
pei-sh.c
pei-x86_64.c
peicode.h
peXXigen.c Handle printing information about PE format files which have 0 as the value of the HInt Table in the import tables structure. 2017-06-06 15:06:02 +01:00
plugin.c Rewrite __start and __stop symbol handling 2017-06-16 23:38:28 +09:30
plugin.h
PORTING
ppcboot.c Rewrite __start and __stop symbol handling 2017-06-16 23:38:28 +09:30
ptrace-core.c
README
reloc16.c
reloc.c RISC-V: Use pc-relative relocation for FDE initial location 2017-06-26 18:26:40 -07:00
riscix.c
rs6000-core.c Use %A and %B in more error messages 2017-04-13 17:07:24 +09:30
sco5-core.c
section.c PR 21414, null pointer deref of _bfd_elf_large_com_section sym 2017-04-23 20:33:34 +09:30
simple.c
som.c Fix address violation parsing a corrupt SOM binary. 2017-06-22 10:33:56 +01:00
som.h
sparclinux.c
sparclynx.c
sparcnetbsd.c
srec.c Rewrite __start and __stop symbol handling 2017-06-16 23:38:28 +09:30
stab-syms.c
stabs.c
stamp-h.in
sunos.c
syms.c
sysdep.h
targets.c Rewrite __start and __stop symbol handling 2017-06-16 23:38:28 +09:30
targmatch.sed
tekhex.c Remove debugging accidentally left in tekhex.c. 2017-06-27 12:11:22 +01:00
TODO
trad-core.c
vax1knetbsd.c
vaxbsd.c
vaxnetbsd.c
verilog.c
versados.c Rewrite __start and __stop symbol handling 2017-06-16 23:38:28 +09:30
version.h Automatic date update in version.in 2017-06-28 00:00:40 +00:00
version.m4
vms-alpha.c Fix address violation parsing a corrupt Alpha VMS binary file. 2017-06-21 15:21:11 +01:00
vms-lib.c Don't compare boolean values against TRUE or FALSE 2017-05-18 14:59:33 +09:30
vms-misc.c Fix address violation parsing a corrupt Alpha VMS binary file. 2017-06-21 15:21:11 +01:00
vms.h Fix address violation parsing a corrupt Alpha VMS binary file. 2017-06-21 15:21:11 +01:00
warning.m4
wasm-module.c Add support for the WebAssembly backend to the BFD library. 2017-03-27 13:41:39 +01:00
wasm-module.h Add support for the WebAssembly backend to the BFD library. 2017-03-27 13:41:39 +01:00
xcofflink.c Use %A and %B in more error messages 2017-04-13 17:07:24 +09:30
xsym.c Rewrite __start and __stop symbol handling 2017-06-16 23:38:28 +09:30
xsym.h
xtensa-isa.c
xtensa-modules.c

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

BFD is an object file library.  It permits applications to use the
same routines to process object files regardless of their format.

BFD is used by the GNU debugger, assembler, linker, and the binary
utilities.

The documentation on using BFD is scanty and may be occasionally
incorrect.  Pointers to documentation problems, or an entirely
rewritten manual, would be appreciated.

There is some BFD internals documentation in doc/bfdint.texi which may
help programmers who want to modify BFD.

BFD is normally built as part of another package.  See the build
instructions for that package, probably in a README file in the
appropriate directory.

BFD supports the following configure options:

  --target=TARGET
	The default target for which to build the library.  TARGET is
	a configuration target triplet, such as sparc-sun-solaris.
  --enable-targets=TARGET,TARGET,TARGET...
	Additional targets the library should support.  To include
	support for all known targets, use --enable-targets=all.
  --enable-64-bit-bfd
	Include support for 64 bit targets.  This is automatically
	turned on if you explicitly request a 64 bit target, but not
	for --enable-targets=all.  This requires a compiler with a 64
	bit integer type, such as gcc.
  --enable-shared
	Build BFD as a shared library.
  --with-mmap
	Use mmap when accessing files.  This is faster on some hosts,
	but slower on others.  It may not work on all hosts.

Report bugs with BFD to bug-binutils@gnu.org.

Patches are encouraged.  When sending patches, always send the output
of diff -u or diff -c from the original file to the new file.  Do not
send default diff output.  Do not make the diff from the new file to
the original file.  Remember that any patch must not break other
systems.  Remember that BFD must support cross compilation from any
host to any target, so patches which use ``#ifdef HOST'' are not
acceptable.  Please also read the ``Reporting Bugs'' section of the
gcc manual.

Bug reports without patches will be remembered, but they may never get
fixed until somebody volunteers to fix them.

Copyright (C) 2012-2017 Free Software Foundation, Inc.

Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright
notice and this notice are preserved.