From 968cf8f21f0da69266c26e7d49d24e6ace80daee Mon Sep 17 00:00:00 2001 From: christos Date: Sat, 15 Aug 2015 10:24:36 +0000 Subject: [PATCH] import new gdb --- external/gpl3/gdb/dist/config/ChangeLog | 15 + external/gpl3/gdb/dist/config/mt-nios2-elf | 5 + external/gpl3/gdb/dist/config/plugins.m4 | 26 +- external/gpl3/gdb/dist/cpu/ChangeLog | 30 + external/gpl3/gdb/dist/cpu/or1k.cpu | 131 ++ external/gpl3/gdb/dist/cpu/or1kcommon.cpu | 360 ++++++ external/gpl3/gdb/dist/cpu/or1korbis.cpu | 1145 +++++++++++++++++ external/gpl3/gdb/dist/etc/ChangeLog | 19 + external/gpl3/gdb/dist/etc/Makefile.in | 182 +-- external/gpl3/gdb/dist/include/ChangeLog | 182 ++- external/gpl3/gdb/dist/include/MAINTAINERS | 2 +- external/gpl3/gdb/dist/include/alloca-conf.h | 2 +- external/gpl3/gdb/dist/include/ansidecl.h | 143 +- external/gpl3/gdb/dist/include/aout/ChangeLog | 10 +- external/gpl3/gdb/dist/include/aout/adobe.h | 2 +- external/gpl3/gdb/dist/include/aout/aout64.h | 2 +- external/gpl3/gdb/dist/include/aout/ar.h | 2 +- external/gpl3/gdb/dist/include/aout/dynix3.h | 2 +- external/gpl3/gdb/dist/include/aout/encap.h | 2 +- external/gpl3/gdb/dist/include/aout/host.h | 2 +- external/gpl3/gdb/dist/include/aout/hp.h | 2 +- .../gpl3/gdb/dist/include/aout/hp300hpux.h | 3 +- external/gpl3/gdb/dist/include/aout/hppa.h | 2 +- external/gpl3/gdb/dist/include/aout/ranlib.h | 2 +- external/gpl3/gdb/dist/include/aout/reloc.h | 2 +- external/gpl3/gdb/dist/include/aout/stab.def | 3 +- .../gpl3/gdb/dist/include/aout/stab_gnu.h | 2 +- external/gpl3/gdb/dist/include/aout/sun4.h | 2 +- external/gpl3/gdb/dist/include/bfdlink.h | 39 +- external/gpl3/gdb/dist/include/binary-io.h | 2 +- external/gpl3/gdb/dist/include/bout.h | 2 +- external/gpl3/gdb/dist/include/cgen/ChangeLog | 10 +- .../gpl3/gdb/dist/include/cgen/basic-modes.h | 2 +- .../gpl3/gdb/dist/include/cgen/basic-ops.h | 2 +- external/gpl3/gdb/dist/include/cgen/bitset.h | 2 +- external/gpl3/gdb/dist/include/coff/ChangeLog | 44 +- external/gpl3/gdb/dist/include/coff/alpha.h | 2 +- external/gpl3/gdb/dist/include/coff/apollo.h | 2 +- external/gpl3/gdb/dist/include/coff/arm.h | 3 +- .../gpl3/gdb/dist/include/coff/aux-coff.h | 2 +- external/gpl3/gdb/dist/include/coff/ecoff.h | 2 +- .../gpl3/gdb/dist/include/coff/external.h | 2 +- external/gpl3/gdb/dist/include/coff/go32exe.h | 2 +- external/gpl3/gdb/dist/include/coff/h8300.h | 2 +- external/gpl3/gdb/dist/include/coff/h8500.h | 2 +- external/gpl3/gdb/dist/include/coff/i386.h | 2 +- external/gpl3/gdb/dist/include/coff/i860.h | 2 +- external/gpl3/gdb/dist/include/coff/i960.h | 2 +- external/gpl3/gdb/dist/include/coff/ia64.h | 2 +- .../gpl3/gdb/dist/include/coff/internal.h | 127 +- external/gpl3/gdb/dist/include/coff/m68k.h | 2 +- external/gpl3/gdb/dist/include/coff/m88k.h | 2 +- external/gpl3/gdb/dist/include/coff/mcore.h | 2 +- external/gpl3/gdb/dist/include/coff/mips.h | 2 +- external/gpl3/gdb/dist/include/coff/mipspe.h | 2 +- external/gpl3/gdb/dist/include/coff/pe.h | 161 ++- external/gpl3/gdb/dist/include/coff/powerpc.h | 2 +- external/gpl3/gdb/dist/include/coff/rs6000.h | 2 +- external/gpl3/gdb/dist/include/coff/rs6k64.h | 2 +- external/gpl3/gdb/dist/include/coff/sh.h | 2 +- external/gpl3/gdb/dist/include/coff/sparc.h | 2 +- external/gpl3/gdb/dist/include/coff/ti.h | 3 +- external/gpl3/gdb/dist/include/coff/tic30.h | 2 +- external/gpl3/gdb/dist/include/coff/tic4x.h | 2 +- external/gpl3/gdb/dist/include/coff/tic54x.h | 2 +- external/gpl3/gdb/dist/include/coff/tic80.h | 2 +- external/gpl3/gdb/dist/include/coff/w65.h | 2 +- external/gpl3/gdb/dist/include/coff/we32k.h | 2 +- external/gpl3/gdb/dist/include/coff/x86_64.h | 2 +- external/gpl3/gdb/dist/include/coff/xcoff.h | 3 +- external/gpl3/gdb/dist/include/coff/z80.h | 2 +- external/gpl3/gdb/dist/include/coff/z8k.h | 2 +- external/gpl3/gdb/dist/include/demangle.h | 14 +- external/gpl3/gdb/dist/include/dis-asm.h | 7 +- external/gpl3/gdb/dist/include/dwarf2.def | 20 +- external/gpl3/gdb/dist/include/dwarf2.h | 8 +- external/gpl3/gdb/dist/include/dyn-string.h | 3 +- external/gpl3/gdb/dist/include/elf/ChangeLog | 114 +- external/gpl3/gdb/dist/include/elf/aarch64.h | 84 +- external/gpl3/gdb/dist/include/elf/alpha.h | 2 +- external/gpl3/gdb/dist/include/elf/arc.h | 2 +- external/gpl3/gdb/dist/include/elf/arm.h | 20 +- external/gpl3/gdb/dist/include/elf/avr.h | 24 +- external/gpl3/gdb/dist/include/elf/bfin.h | 2 +- external/gpl3/gdb/dist/include/elf/common.h | 19 +- external/gpl3/gdb/dist/include/elf/cr16.h | 2 +- external/gpl3/gdb/dist/include/elf/cr16c.h | 2 +- external/gpl3/gdb/dist/include/elf/cris.h | 2 +- external/gpl3/gdb/dist/include/elf/crx.h | 2 +- external/gpl3/gdb/dist/include/elf/d10v.h | 2 +- external/gpl3/gdb/dist/include/elf/d30v.h | 2 +- external/gpl3/gdb/dist/include/elf/dlx.h | 2 +- external/gpl3/gdb/dist/include/elf/dwarf.h | 2 +- external/gpl3/gdb/dist/include/elf/epiphany.h | 2 +- external/gpl3/gdb/dist/include/elf/external.h | 3 +- external/gpl3/gdb/dist/include/elf/fr30.h | 2 +- external/gpl3/gdb/dist/include/elf/frv.h | 2 +- external/gpl3/gdb/dist/include/elf/h8.h | 2 +- external/gpl3/gdb/dist/include/elf/hppa.h | 3 +- external/gpl3/gdb/dist/include/elf/i370.h | 2 +- external/gpl3/gdb/dist/include/elf/i386.h | 3 +- external/gpl3/gdb/dist/include/elf/i860.h | 2 +- external/gpl3/gdb/dist/include/elf/i960.h | 2 +- external/gpl3/gdb/dist/include/elf/ia64.h | 3 +- external/gpl3/gdb/dist/include/elf/internal.h | 3 +- external/gpl3/gdb/dist/include/elf/ip2k.h | 2 +- external/gpl3/gdb/dist/include/elf/iq2000.h | 2 +- external/gpl3/gdb/dist/include/elf/lm32.h | 2 +- external/gpl3/gdb/dist/include/elf/m32c.h | 2 +- external/gpl3/gdb/dist/include/elf/m32r.h | 3 +- external/gpl3/gdb/dist/include/elf/m68hc11.h | 2 +- external/gpl3/gdb/dist/include/elf/m68k.h | 3 +- external/gpl3/gdb/dist/include/elf/mcore.h | 2 +- external/gpl3/gdb/dist/include/elf/mep.h | 3 +- external/gpl3/gdb/dist/include/elf/metag.h | 2 +- .../gpl3/gdb/dist/include/elf/microblaze.h | 2 +- external/gpl3/gdb/dist/include/elf/mips.h | 145 ++- external/gpl3/gdb/dist/include/elf/mmix.h | 2 +- external/gpl3/gdb/dist/include/elf/mn10200.h | 2 +- external/gpl3/gdb/dist/include/elf/mn10300.h | 2 +- external/gpl3/gdb/dist/include/elf/moxie.h | 2 +- external/gpl3/gdb/dist/include/elf/msp430.h | 2 +- external/gpl3/gdb/dist/include/elf/mt.h | 2 +- external/gpl3/gdb/dist/include/elf/nds32.h | 33 +- external/gpl3/gdb/dist/include/elf/nios2.h | 9 +- external/gpl3/gdb/dist/include/elf/or1k.h | 65 + external/gpl3/gdb/dist/include/elf/pj.h | 2 +- external/gpl3/gdb/dist/include/elf/ppc.h | 3 +- external/gpl3/gdb/dist/include/elf/ppc64.h | 6 +- .../gpl3/gdb/dist/include/elf/reloc-macros.h | 2 +- external/gpl3/gdb/dist/include/elf/rl78.h | 3 +- external/gpl3/gdb/dist/include/elf/rx.h | 2 +- external/gpl3/gdb/dist/include/elf/s390.h | 2 +- external/gpl3/gdb/dist/include/elf/score.h | 2 +- external/gpl3/gdb/dist/include/elf/sh.h | 3 +- external/gpl3/gdb/dist/include/elf/sparc.h | 29 +- external/gpl3/gdb/dist/include/elf/spu.h | 2 +- .../gpl3/gdb/dist/include/elf/tic6x-attrs.h | 3 +- external/gpl3/gdb/dist/include/elf/tic6x.h | 3 +- external/gpl3/gdb/dist/include/elf/tilegx.h | 2 +- external/gpl3/gdb/dist/include/elf/tilepro.h | 2 +- external/gpl3/gdb/dist/include/elf/v850.h | 2 +- external/gpl3/gdb/dist/include/elf/vax.h | 2 +- external/gpl3/gdb/dist/include/elf/visium.h | 51 + external/gpl3/gdb/dist/include/elf/vxworks.h | 3 +- external/gpl3/gdb/dist/include/elf/x86-64.h | 6 +- external/gpl3/gdb/dist/include/elf/xc16x.h | 2 +- external/gpl3/gdb/dist/include/elf/xgate.h | 2 +- .../gpl3/gdb/dist/include/elf/xstormy16.h | 2 +- external/gpl3/gdb/dist/include/elf/xtensa.h | 2 +- external/gpl3/gdb/dist/include/fibheap.h | 3 +- external/gpl3/gdb/dist/include/filenames.h | 2 +- external/gpl3/gdb/dist/include/floatformat.h | 3 +- external/gpl3/gdb/dist/include/fnmatch.h | 2 +- external/gpl3/gdb/dist/include/fopen-bin.h | 2 +- external/gpl3/gdb/dist/include/fopen-same.h | 2 +- external/gpl3/gdb/dist/include/fopen-vms.h | 2 +- external/gpl3/gdb/dist/include/gcc-c-fe.def | 197 +++ .../gpl3/gdb/dist/include/gcc-c-interface.h | 220 ++++ .../gpl3/gdb/dist/include/gcc-interface.h | 127 ++ external/gpl3/gdb/dist/include/gdb/ChangeLog | 25 +- external/gpl3/gdb/dist/include/gdb/callback.h | 8 +- external/gpl3/gdb/dist/include/gdb/fileio.h | 2 +- .../gpl3/gdb/dist/include/gdb/gdb-index.h | 2 +- .../gpl3/gdb/dist/include/gdb/remote-sim.h | 6 +- .../gdb/dist/include/gdb/section-scripts.h | 50 + .../gpl3/gdb/dist/include/gdb/signals.def | 2 +- external/gpl3/gdb/dist/include/gdb/signals.h | 2 +- external/gpl3/gdb/dist/include/gdb/sim-arm.h | 2 +- external/gpl3/gdb/dist/include/gdb/sim-bfin.h | 2 +- external/gpl3/gdb/dist/include/gdb/sim-cr16.h | 2 +- external/gpl3/gdb/dist/include/gdb/sim-d10v.h | 2 +- external/gpl3/gdb/dist/include/gdb/sim-frv.h | 2 +- .../gpl3/gdb/dist/include/gdb/sim-h8300.h | 2 +- external/gpl3/gdb/dist/include/gdb/sim-lm32.h | 2 +- external/gpl3/gdb/dist/include/gdb/sim-m32c.h | 2 +- external/gpl3/gdb/dist/include/gdb/sim-ppc.h | 2 +- external/gpl3/gdb/dist/include/gdb/sim-rl78.h | 2 +- external/gpl3/gdb/dist/include/gdb/sim-rx.h | 2 +- external/gpl3/gdb/dist/include/gdb/sim-sh.h | 2 +- external/gpl3/gdb/dist/include/getopt.h | 3 +- external/gpl3/gdb/dist/include/hashtab.h | 3 +- external/gpl3/gdb/dist/include/hp-symtab.h | 2 +- external/gpl3/gdb/dist/include/ieee.h | 2 +- external/gpl3/gdb/dist/include/leb128.h | 2 +- external/gpl3/gdb/dist/include/libiberty.h | 63 +- external/gpl3/gdb/dist/include/longlong.h | 25 +- external/gpl3/gdb/dist/include/lto-symtab.h | 2 +- .../gpl3/gdb/dist/include/mach-o/ChangeLog | 39 +- external/gpl3/gdb/dist/include/mach-o/arm.h | 3 +- .../gpl3/gdb/dist/include/mach-o/codesign.h | 3 +- .../gpl3/gdb/dist/include/mach-o/external.h | 21 +- .../gpl3/gdb/dist/include/mach-o/loader.h | 77 +- external/gpl3/gdb/dist/include/mach-o/reloc.h | 3 +- .../gpl3/gdb/dist/include/mach-o/unwind.h | 199 +++ .../gpl3/gdb/dist/include/mach-o/x86-64.h | 3 +- external/gpl3/gdb/dist/include/md5.h | 2 +- external/gpl3/gdb/dist/include/nlm/ChangeLog | 10 +- .../gpl3/gdb/dist/include/nlm/alpha-ext.h | 2 +- external/gpl3/gdb/dist/include/nlm/common.h | 2 +- external/gpl3/gdb/dist/include/nlm/external.h | 2 +- external/gpl3/gdb/dist/include/nlm/i386-ext.h | 2 +- external/gpl3/gdb/dist/include/nlm/internal.h | 2 +- external/gpl3/gdb/dist/include/nlm/ppc-ext.h | 2 +- .../gpl3/gdb/dist/include/nlm/sparc32-ext.h | 2 +- external/gpl3/gdb/dist/include/oasys.h | 2 +- external/gpl3/gdb/dist/include/objalloc.h | 2 +- external/gpl3/gdb/dist/include/obstack.h | 4 +- .../gpl3/gdb/dist/include/opcode/ChangeLog | 196 ++- .../gpl3/gdb/dist/include/opcode/aarch64.h | 11 +- external/gpl3/gdb/dist/include/opcode/alpha.h | 2 +- external/gpl3/gdb/dist/include/opcode/arc.h | 3 +- external/gpl3/gdb/dist/include/opcode/arm.h | 11 +- external/gpl3/gdb/dist/include/opcode/avr.h | 44 +- external/gpl3/gdb/dist/include/opcode/bfin.h | 2 +- external/gpl3/gdb/dist/include/opcode/cgen.h | 3 +- .../gpl3/gdb/dist/include/opcode/convex.h | 2 +- external/gpl3/gdb/dist/include/opcode/cr16.h | 2 +- external/gpl3/gdb/dist/include/opcode/cris.h | 2 +- external/gpl3/gdb/dist/include/opcode/crx.h | 2 +- external/gpl3/gdb/dist/include/opcode/d10v.h | 3 +- external/gpl3/gdb/dist/include/opcode/d30v.h | 3 +- external/gpl3/gdb/dist/include/opcode/dlx.h | 2 +- external/gpl3/gdb/dist/include/opcode/h8300.h | 2 +- external/gpl3/gdb/dist/include/opcode/hppa.h | 4 +- external/gpl3/gdb/dist/include/opcode/i370.h | 3 +- external/gpl3/gdb/dist/include/opcode/i386.h | 4 +- external/gpl3/gdb/dist/include/opcode/i860.h | 3 +- external/gpl3/gdb/dist/include/opcode/i960.h | 2 +- external/gpl3/gdb/dist/include/opcode/ia64.h | 3 +- .../gpl3/gdb/dist/include/opcode/m68hc11.h | 3 +- external/gpl3/gdb/dist/include/opcode/m68k.h | 3 +- external/gpl3/gdb/dist/include/opcode/m88k.h | 3 +- external/gpl3/gdb/dist/include/opcode/metag.h | 2 +- external/gpl3/gdb/dist/include/opcode/mips.h | 193 ++- external/gpl3/gdb/dist/include/opcode/mmix.h | 2 +- .../gpl3/gdb/dist/include/opcode/mn10200.h | 2 +- .../gpl3/gdb/dist/include/opcode/mn10300.h | 2 +- external/gpl3/gdb/dist/include/opcode/moxie.h | 10 +- .../gdb/dist/include/opcode/msp430-decode.h | 2 +- .../gpl3/gdb/dist/include/opcode/msp430.h | 5 +- external/gpl3/gdb/dist/include/opcode/nds32.h | 12 +- external/gpl3/gdb/dist/include/opcode/nios2.h | 426 +----- .../gpl3/gdb/dist/include/opcode/nios2r1.h | 474 +++++++ external/gpl3/gdb/dist/include/opcode/np1.h | 2 +- external/gpl3/gdb/dist/include/opcode/ns32k.h | 2 +- external/gpl3/gdb/dist/include/opcode/pdp11.h | 2 +- external/gpl3/gdb/dist/include/opcode/pj.h | 2 +- external/gpl3/gdb/dist/include/opcode/pn.h | 2 +- external/gpl3/gdb/dist/include/opcode/ppc.h | 3 +- external/gpl3/gdb/dist/include/opcode/pyr.h | 2 +- external/gpl3/gdb/dist/include/opcode/rl78.h | 3 +- external/gpl3/gdb/dist/include/opcode/rx.h | 3 +- external/gpl3/gdb/dist/include/opcode/s390.h | 2 +- .../gdb/dist/include/opcode/score-datadep.h | 2 +- .../gpl3/gdb/dist/include/opcode/score-inst.h | 2 +- external/gpl3/gdb/dist/include/opcode/sparc.h | 23 +- .../gpl3/gdb/dist/include/opcode/spu-insns.h | 2 +- external/gpl3/gdb/dist/include/opcode/spu.h | 2 +- external/gpl3/gdb/dist/include/opcode/tahoe.h | 2 +- external/gpl3/gdb/dist/include/opcode/tic30.h | 2 +- external/gpl3/gdb/dist/include/opcode/tic4x.h | 2 +- .../gpl3/gdb/dist/include/opcode/tic54x.h | 2 +- .../include/opcode/tic6x-control-registers.h | 3 +- .../dist/include/opcode/tic6x-insn-formats.h | 2 +- .../dist/include/opcode/tic6x-opcode-table.h | 2 +- external/gpl3/gdb/dist/include/opcode/tic6x.h | 2 +- external/gpl3/gdb/dist/include/opcode/tic80.h | 2 +- .../gpl3/gdb/dist/include/opcode/tilegx.h | 2 +- .../gpl3/gdb/dist/include/opcode/tilepro.h | 2 +- external/gpl3/gdb/dist/include/opcode/v850.h | 2 +- external/gpl3/gdb/dist/include/opcode/vax.h | 2 +- .../gpl3/gdb/dist/include/opcode/visium.h | 337 +++++ external/gpl3/gdb/dist/include/opcode/xgate.h | 2 +- external/gpl3/gdb/dist/include/os9k.h | 2 +- external/gpl3/gdb/dist/include/partition.h | 2 +- external/gpl3/gdb/dist/include/plugin-api.h | 2 +- external/gpl3/gdb/dist/include/progress.h | 2 +- external/gpl3/gdb/dist/include/safe-ctype.h | 2 +- external/gpl3/gdb/dist/include/sha1.h | 3 +- .../gpl3/gdb/dist/include/simple-object.h | 2 +- external/gpl3/gdb/dist/include/som/ChangeLog | 10 +- external/gpl3/gdb/dist/include/som/aout.h | 2 +- external/gpl3/gdb/dist/include/som/clock.h | 2 +- external/gpl3/gdb/dist/include/som/internal.h | 2 +- external/gpl3/gdb/dist/include/som/lst.h | 2 +- external/gpl3/gdb/dist/include/som/reloc.h | 2 +- external/gpl3/gdb/dist/include/sort.h | 2 +- external/gpl3/gdb/dist/include/splay-tree.h | 3 +- external/gpl3/gdb/dist/include/symcat.h | 2 +- .../gpl3/gdb/dist/include/timeval-utils.h | 2 +- external/gpl3/gdb/dist/include/vms/ChangeLog | 10 +- external/gpl3/gdb/dist/include/vms/dcx.h | 2 +- external/gpl3/gdb/dist/include/vms/dmt.h | 2 +- external/gpl3/gdb/dist/include/vms/dsc.h | 2 +- external/gpl3/gdb/dist/include/vms/dst.h | 2 +- external/gpl3/gdb/dist/include/vms/eeom.h | 2 +- external/gpl3/gdb/dist/include/vms/egps.h | 2 +- external/gpl3/gdb/dist/include/vms/egsd.h | 2 +- external/gpl3/gdb/dist/include/vms/egst.h | 2 +- external/gpl3/gdb/dist/include/vms/egsy.h | 2 +- external/gpl3/gdb/dist/include/vms/eiaf.h | 2 +- external/gpl3/gdb/dist/include/vms/eicp.h | 2 +- external/gpl3/gdb/dist/include/vms/eidc.h | 2 +- external/gpl3/gdb/dist/include/vms/eiha.h | 2 +- external/gpl3/gdb/dist/include/vms/eihd.h | 2 +- external/gpl3/gdb/dist/include/vms/eihi.h | 2 +- external/gpl3/gdb/dist/include/vms/eihs.h | 2 +- external/gpl3/gdb/dist/include/vms/eihvn.h | 2 +- external/gpl3/gdb/dist/include/vms/eisd.h | 2 +- external/gpl3/gdb/dist/include/vms/emh.h | 2 +- external/gpl3/gdb/dist/include/vms/eobjrec.h | 2 +- external/gpl3/gdb/dist/include/vms/esdf.h | 2 +- external/gpl3/gdb/dist/include/vms/esdfm.h | 2 +- external/gpl3/gdb/dist/include/vms/esdfv.h | 2 +- external/gpl3/gdb/dist/include/vms/esgps.h | 2 +- external/gpl3/gdb/dist/include/vms/esrf.h | 2 +- external/gpl3/gdb/dist/include/vms/etir.h | 2 +- external/gpl3/gdb/dist/include/vms/internal.h | 2 +- external/gpl3/gdb/dist/include/vms/lbr.h | 2 +- external/gpl3/gdb/dist/include/vms/prt.h | 2 +- external/gpl3/gdb/dist/include/vms/shl.h | 2 +- .../gdb/dist/include/vtv-change-permission.h | 3 +- external/gpl3/gdb/dist/include/xregex2.h | 3 +- .../gpl3/gdb/dist/include/xtensa-config.h | 3 +- .../gdb/dist/include/xtensa-isa-internal.h | 2 +- external/gpl3/gdb/dist/include/xtensa-isa.h | 2 +- 327 files changed, 5414 insertions(+), 1281 deletions(-) create mode 100644 external/gpl3/gdb/dist/config/mt-nios2-elf create mode 100644 external/gpl3/gdb/dist/cpu/or1k.cpu create mode 100644 external/gpl3/gdb/dist/cpu/or1kcommon.cpu create mode 100644 external/gpl3/gdb/dist/cpu/or1korbis.cpu create mode 100644 external/gpl3/gdb/dist/include/elf/or1k.h create mode 100644 external/gpl3/gdb/dist/include/elf/visium.h create mode 100644 external/gpl3/gdb/dist/include/gcc-c-fe.def create mode 100644 external/gpl3/gdb/dist/include/gcc-c-interface.h create mode 100644 external/gpl3/gdb/dist/include/gcc-interface.h create mode 100644 external/gpl3/gdb/dist/include/gdb/section-scripts.h create mode 100644 external/gpl3/gdb/dist/include/mach-o/unwind.h create mode 100644 external/gpl3/gdb/dist/include/opcode/nios2r1.h create mode 100644 external/gpl3/gdb/dist/include/opcode/visium.h diff --git a/external/gpl3/gdb/dist/config/ChangeLog b/external/gpl3/gdb/dist/config/ChangeLog index 885e067853df..4e74bea3c054 100644 --- a/external/gpl3/gdb/dist/config/ChangeLog +++ b/external/gpl3/gdb/dist/config/ChangeLog @@ -1,3 +1,18 @@ +2014-08-19 Alan Modra + + * plugins.m4 (AC_PLUGINS): If plugins are enabled, add -ldl to + LIBS via AC_SEARCH_LIBS. + +2014-08-14 Alan Modra + + * plugins.m4: Test for dlfcn.h or windows.h here to set default + for --enable-plugins. Report error if someone tries to enable + plugins on a host we don't support. + +2014-05-14 Sandra Loosemore + + * mt-nios2-elf: New file. + 2013-12-07 Mike Frysinger * acinclude.m4: Remove +x file mode. diff --git a/external/gpl3/gdb/dist/config/mt-nios2-elf b/external/gpl3/gdb/dist/config/mt-nios2-elf new file mode 100644 index 000000000000..1dee7c6439ee --- /dev/null +++ b/external/gpl3/gdb/dist/config/mt-nios2-elf @@ -0,0 +1,5 @@ +# We build library code with -mno-gpopt so that it can be linked with +# larger executables with small-data sections that exceed the 16-bit +# offset range for GP-relative addressing. +CFLAGS_FOR_TARGET += -mno-gpopt +CXXFLAGS_FOR_TARGET += -mno-gpopt diff --git a/external/gpl3/gdb/dist/config/plugins.m4 b/external/gpl3/gdb/dist/config/plugins.m4 index 7ee8412aa37a..513c690e1b57 100644 --- a/external/gpl3/gdb/dist/config/plugins.m4 +++ b/external/gpl3/gdb/dist/config/plugins.m4 @@ -1,11 +1,21 @@ AC_DEFUN([AC_PLUGINS], [ -AC_ARG_ENABLE([plugins], -AS_HELP_STRING([--enable-plugins], [Enable support for plugins (defaults no)]), -[case "${enableval}" in - yes | "") plugins=yes ;; - no) plugins=no ;; - *) plugins=yes ;; - esac], -[plugins=no]) + maybe_plugins=no + AC_CHECK_HEADERS([dlfcn.h], [maybe_plugins=yes], [], [AC_INCLUDES_DEFAULT]) + AC_CHECK_HEADERS([windows.h], [maybe_plugins=yes], [], [AC_INCLUDES_DEFAULT]) + + AC_ARG_ENABLE([plugins], + AS_HELP_STRING([--enable-plugins], [Enable support for plugins]), + [case "${enableval}" in + no) plugins=no ;; + *) plugins=yes + if test "$maybe_plugins" != "yes" ; then + AC_MSG_ERROR([Building with plugin support requires a host that supports dlopen.]) + fi ;; + esac], + [plugins=$maybe_plugins] + ) + if test "$plugins" = "yes"; then + AC_SEARCH_LIBS([dlopen], [dl]) + fi ]) diff --git a/external/gpl3/gdb/dist/cpu/ChangeLog b/external/gpl3/gdb/dist/cpu/ChangeLog index 4d64626474d1..0594cdf93300 100644 --- a/external/gpl3/gdb/dist/cpu/ChangeLog +++ b/external/gpl3/gdb/dist/cpu/ChangeLog @@ -1,3 +1,33 @@ +2014-07-20 Stefan Kristiansson + + * or1korbis.cpu (l-msync, l-psync, l-csync): New instructions. + +2014-06-12 Alan Modra + + * or1k.opc: Whitespace fixes. + +2014-05-08 Stefan Kristiansson + + * or1korbis.cpu (h-atomic-reserve): New hardware. + (h-atomic-address): Likewise. + (insn-opcode): Add opcodes for LWA and SWA. + (atomic-reserve): New operand. + (atomic-address): Likewise. + (l-lwa, l-swa): New instructions. + (l-lbs): Fix typo in comment. + (store-insn): Clear atomic reserve on store to atomic-address. + Fix register names in fmt field. + +2014-04-22 Christian Svensson + + * openrisc.cpu: Delete. + * openrisc.opc: Delete. + * or1k.cpu: New file. + * or1k.opc: New file. + * or1kcommon.cpu: New file. + * or1korbis.cpu: New file. + * or1korfpx.cpu: New file. + 2013-12-07 Mike Frysinger * epiphany.opc: Remove +x file mode. diff --git a/external/gpl3/gdb/dist/cpu/or1k.cpu b/external/gpl3/gdb/dist/cpu/or1k.cpu new file mode 100644 index 000000000000..3a932bcb9009 --- /dev/null +++ b/external/gpl3/gdb/dist/cpu/or1k.cpu @@ -0,0 +1,131 @@ +; OpenRISC 1000 architecture. -*- Scheme -*- +; Copyright 2000-2014 Free Software Foundation, Inc. +; Contributed for OR32 by Johan Rydberg, jrydberg@opencores.org +; Modified by Julius Baxter, juliusbaxter@gmail.com +; Modified by Peter Gavin, pgavin@gmail.com +; +; 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, see + +(include "simplify.inc") + +; The OpenRISC family is a set of RISC microprocessor architectures with an +; emphasis on scalability and is targetted at embedded use. +; The CPU RTL development is a collaborative open source effort. +; http://opencores.org/or1k +; http://openrisc.net + +(define-arch + (name or1k) + (comment "OpenRISC 1000") + (default-alignment aligned) + (insn-lsb0? #t) + (machs or32 or32nd or64 or64nd) + (isas openrisc) +) + +; Instruction set parameters. +(define-isa + ; Name of the ISA. + (name openrisc) + ; Base insturction length. The insns are always 32 bits wide. + (base-insn-bitsize 32) + ) + +(define-pmacro OR32-MACHS or32,or32nd) +(define-pmacro OR64-MACHS or64,or64nd) +(define-pmacro ORBIS-MACHS or32,or32nd,or64,or64nd) +(define-pmacro ORFPX-MACHS or32,or32nd,or64,or64nd) +(define-pmacro ORFPX32-MACHS or32,or32nd,or64,or64nd) +(define-pmacro ORFPX64-MACHS or64,or64nd) + +(define-attr + (for model) + (type boolean) + (name NO-DELAY-SLOT) + (comment "does not have delay slots") + ) + +(if (keep-mach? (or32 or32nd)) + (begin + (define-cpu + (name or1k32bf) + (comment "OpenRISC 1000 32-bit CPU family") + (insn-endian big) + (data-endian big) + (word-bitsize 32) + (file-transform "") + ) + + (define-mach + (name or32) + (comment "Generic OpenRISC 1000 32-bit CPU") + (cpu or1k32bf) + (bfd-name "or1k") + ) + + (define-mach + (name or32nd) + (comment "Generic OpenRISC 1000 32-bit CPU") + (cpu or1k32bf) + (bfd-name "or1knd") + ) + + ; OpenRISC 1200 - 32-bit or1k CPU implementation + (define-model + (name or1200) (comment "OpenRISC 1200 model") + (attrs) + (mach or32) + (unit u-exec "Execution Unit" () 1 1 () () () ()) + ) + + ; OpenRISC 1200 - 32-bit or1k CPU implementation + (define-model + (name or1200nd) (comment "OpenRISC 1200 model") + (attrs NO-DELAY-SLOT) + (mach or32nd) + (unit u-exec "Execution Unit" () 1 1 () () () ()) + ) + ) + ) + +(if (keep-mach? (or64 or64nd)) + (begin + (define-cpu + (name or1k64bf) + (comment "OpenRISC 1000 64-bit CPU family") + (insn-endian big) + (data-endian big) + (word-bitsize 64) + (file-transform "64") + ) + + (define-mach + (name or64) + (comment "Generic OpenRISC 1000 64-bit CPU") + (cpu or1k64bf) + (bfd-name "or1k64") + ) + + (define-mach + (name or64nd) + (comment "Generic OpenRISC 1000 ND 64-bit CPU") + (cpu or1k64bf) + (bfd-name "or1k64nd") + ) + ) + ) + +(include "or1kcommon.cpu") +(include "or1korbis.cpu") +(include "or1korfpx.cpu") diff --git a/external/gpl3/gdb/dist/cpu/or1kcommon.cpu b/external/gpl3/gdb/dist/cpu/or1kcommon.cpu new file mode 100644 index 000000000000..1119f988c518 --- /dev/null +++ b/external/gpl3/gdb/dist/cpu/or1kcommon.cpu @@ -0,0 +1,360 @@ +; OpenRISC 1000 32-bit CPU hardware description. -*- Scheme -*- +; Copyright 2000-2014 Free Software Foundation, Inc. +; Contributed for OR32 by Johan Rydberg, jrydberg@opencores.org +; Modified by Julius Baxter, juliusbaxter@gmail.com +; +; 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, see + +; Hardware pieces. +; These entries list the elements of the raw hardware. +; They're also used to provide tables and other elements of the assembly +; language. + +(define-hardware + (name h-pc) + (comment "program counter") + (attrs PC (MACH ORBIS-MACHS)) + (type pc UWI) + ) + +(define-pmacro REG-INDICES + ((r0 0) + (r1 1) + (r2 2) + (r3 3) + (r4 4) + (r5 5) + (r6 6) + (r7 7) + (r8 8) + (r9 9) + (r10 10) + (r11 11) + (r12 12) + (r13 13) + (r14 14) + (r15 15) + (r16 16) + (r17 17) + (r18 18) + (r19 19) + (r20 20) + (r21 21) + (r22 22) + (r23 23) + (r24 24) + (r25 25) + (r26 26) + (r27 27) + (r28 28) + (r29 29) + (r30 30) + (r31 31) + (lr 9) + (sp 1) + (fp 2)) + ) + +(define-hardware + (name h-fsr) + (comment "floating point registers (single, virtual)") + (attrs VIRTUAL (MACH ORFPX32-MACHS)) + (type register SF (32)) + (indices keyword "" REG-INDICES) + (get (index) (subword SF (trunc SI (reg h-gpr index)) 0)) + (set (index newval) (set UWI (reg h-gpr index) (zext UWI (subword SI newval 0)))) + ) + +(define-hardware + (name h-fdr) (comment "floating point registers (double, virtual)") + (attrs VIRTUAL (MACH ORFPX64-MACHS)) + (type register DF (32)) + (indices keyword "" REG-INDICES) + (get (index) (subword DF (trunc DI (reg h-gpr index)) 0)) + (set (index newval) (set UDI (reg h-gpr index) (zext UDI (subword DI newval 0)))) + ) + +(define-hardware + (name h-spr) (comment "special purpose registers") + (attrs VIRTUAL (MACH ORBIS-MACHS)) + (type register UWI (#x20000)) + (get (index) (c-call UWI "@cpu@_h_spr_get_raw" index)) + (set (index newval) (c-call VOID "@cpu@_h_spr_set_raw" index newval)) +) + +(define-pmacro spr-shift 11) +(define-pmacro (spr-address spr-group spr-index) + (or (sll UWI (enum UWI (.sym "SPR-GROUP-" spr-group)) spr-shift) + (enum UWI (.sym "SPR-INDEX-" spr-group "-" spr-index)))) + +(define-hardware + (name h-gpr) (comment "general registers") + (attrs (MACH ORBIS-MACHS)) + (type register UWI (32)) + (indices keyword "" REG-INDICES) + (get (index) (reg UWI h-spr (add index (spr-address SYS GPR0)))) + (set (index newval) (set UWI (reg UWI h-spr (add index (spr-address SYS GPR0))) newval)) + ) + +(define-normal-enum + except-number + "Exception numbers" + () + EXCEPT- + (("NONE" #x00) + ("RESET" #x01) + ("BUSERR" #x02) + ("DPF" #x03) + ("IPF" #x04) + ("TICK" #x05) + ("ALIGN" #x06) + ("ILLEGAL" #x07) + ("INT" #x08) + ("DTLBMISS" #x09) + ("ITLBMISS" #x0a) + ("RANGE" #x0b) + ("SYSCALL" #x0c) + ("FPE" #x0d) + ("TRAP" #x0e) + ) + ) + +(define-pmacro (raise-exception exnum) + (c-call VOID "@cpu@_exception" pc exnum)) + +(define-normal-enum + spr-groups + "special purpose register groups" + () + SPR-GROUP- + (("SYS" #x0) + ("DMMU" #x1) + ("IMMU" #x2) + ("DCACHE" #x3) + ("ICACHE" #x4) + ("MAC" #x5) + ("DEBUG" #x6) + ("PERF" #x7) + ("POWER" #x8) + ("PIC" #x9) + ("TICK" #xa) + ("FPU" #xb) + ) + ) + +(define-pmacro (spr-reg-info) + (.splice + (SYS VR #x000 "version register") + (SYS UPR #x001 "unit present register") + (SYS CPUCFGR #x002 "cpu configuration register") + (SYS DMMUCFGR #x003 "Data MMU configuration register") + (SYS IMMUCFGR #x004 "Insn MMU configuration register") + (SYS DCCFGR #x005 "Data cache configuration register") + (SYS ICCFGR #x006 "Insn cache configuration register") + (SYS DCFGR #x007 "Debug configuration register") + (SYS PCCFGR #x008 "Performance counters configuration register") + (SYS NPC #x010 "Next program counter") + (SYS SR #x011 "Supervision Regsiter") + (SYS PPC #x012 "Previous program counter") + (SYS FPCSR #x014 "Floating point control status register") + (.unsplice + (.map (.pmacro (n) (.splice SYS (.sym "EPCR" n) (.add n #x20) (.str "Exception PC register " n))) + (.iota #x10))) + (.unsplice + (.map (.pmacro (n) (.splice SYS (.sym "EEAR" n) (.add n #x30) (.str "Exception effective address register " n))) + (.iota #x10))) + (.unsplice + (.map (.pmacro (n) (.splice SYS (.sym "ESR" n) (.add n #x40) (.str "Exception supervision register " n))) + (.iota #x10))) + (.unsplice + (.map (.pmacro (n) (.splice SYS (.sym "GPR" n) (.add n #x400) (.str "General purpose register " n))) + (.iota #x200))) + + (MAC MACLO #x001 "Multiply and accumulate result (low)") + (MAC MACHI #x002 "Multiply and accumulate result (high)") + (TICK TTMR #x000 "Tick timer mode register") + ) + ) + +(define-normal-enum + spr-reg-indices + "special purpose register indicies" + () + SPR-INDEX- + (.map (.pmacro (args) + (.apply (.pmacro (group index n comment) + ((.sym group "-" index) n)) + args) + ) + (spr-reg-info) + ) + ) + +(define-pmacro (define-h-spr-reg spr-group spr-index n spr-comment) + (define-hardware + (name (.sym "h-" (.downcase spr-group) "-" (.downcase spr-index))) + (comment spr-comment) + (attrs VIRTUAL (MACH ORBIS-MACHS)) + (type register UWI) + (get () (reg UWI h-spr (spr-address spr-group spr-index))) + (set (newval) (set (reg UWI h-spr (spr-address spr-group spr-index)) newval)) + ) + ) +(.splice begin (.unsplice (.map (.pmacro (args) (.apply define-h-spr-reg args)) (spr-reg-info)))) + +(define-pmacro (spr-field-info) + ((SYS VR REV 5 0 "revision field") + (SYS VR CFG 23 16 "configuration template field") + (SYS VR VER 31 24 "version field") + (SYS UPR UP 0 0 "UPR present bit") + (SYS UPR DCP 1 1 "data cache present bit") + (SYS UPR ICP 2 2 "insn cache present bit") + (SYS UPR DMP 3 3 "data MMU present bit") + (SYS UPR MP 4 4 "MAC unit present bit") + (SYS UPR IMP 5 5 "insn MMU present bit") + (SYS UPR DUP 6 6 "debug unit present bit") + (SYS UPR PCUP 7 7 "performance counters unit present bit") + (SYS UPR PICP 8 8 "programmable interrupt controller present bit") + (SYS UPR PMP 9 9 "power management present bit") + (SYS UPR TTP 10 10 "tick timer present bit") + (SYS UPR CUP 31 24 "custom units present field") + (SYS CPUCFGR NSGR 3 0 "number of shadow GPR files field") + (SYS CPUCFGR CGF 4 4 "custom GPR file bit") + (SYS CPUCFGR OB32S 5 5 "ORBIS32 supported bit") + (SYS CPUCFGR OB64S 6 6 "ORBIS64 supported bit") + (SYS CPUCFGR OF32S 7 7 "ORFPX32 supported bit") + (SYS CPUCFGR OF64S 8 8 "ORFPX64 supported bit") + (SYS CPUCFGR OV64S 9 9 "ORVDX64 supported bit") + (SYS CPUCFGR ND 10 10 "no transfer delay bit") + (SYS SR SM 0 0 "supervisor mode bit") + (SYS SR TEE 1 1 "tick timer exception enabled bit") + (SYS SR IEE 2 2 "interrupt exception enabled bit") + (SYS SR DCE 3 3 "data cache enabled bit") + (SYS SR ICE 4 4 "insn cache enabled bit") + (SYS SR DME 5 5 "data MMU enabled bit") + (SYS SR IME 6 6 "insn MMU enabled bit") + (SYS SR LEE 7 7 "little endian enabled bit") + (SYS SR CE 8 8 "CID enable bit") + (SYS SR F 9 9 "flag bit") + (SYS SR CY 10 10 "carry bit") + (SYS SR OV 11 11 "overflow bit") + (SYS SR OVE 12 12 "overflow exception enabled bit") + (SYS SR DSX 13 13 "delay slot exception bit") + (SYS SR EPH 14 14 "exception prefix high bit") + (SYS SR FO 15 15 "fixed one bit") + (SYS SR SUMRA 16 16 "SPRs user mode read access bit") + (SYS SR CID 31 28 "context ID field") + (SYS FPCSR FPEE 0 0 "floating point exceptions enabled bit") + (SYS FPCSR RM 2 1 "floating point rounding mode field") + (SYS FPCSR OVF 3 3 "floating point overflow flag bit") + (SYS FPCSR UNF 4 4 "floating point underflow bit") + (SYS FPCSR SNF 5 5 "floating point SNAN flag bit") + (SYS FPCSR QNF 6 6 "floating point QNAN flag bit") + (SYS FPCSR ZF 7 7 "floating point zero flag bit") + (SYS FPCSR IXF 8 8 "floating point inexact flag bit") + (SYS FPCSR IVF 9 9 "floating point invalid flag bit") + (SYS FPCSR INF 10 10 "floating point infinity flag bit") + (SYS FPCSR DZF 11 11 "floating point divide by zero flag bit") + ) + ) + +(define-normal-enum + spr-field-msbs + "SPR field msb positions" + () + SPR-FIELD-MSB- + (.map (.pmacro (args) + (.apply (.pmacro (group index field msb lsb comment) + ((.sym group "-" index "-" field) msb) + ) + args + ) + ) + (spr-field-info) + ) + ) + +(define-normal-enum + spr-field-lsbs + "SPR field lsb positions" + () + SPR-FIELD-SIZE- + (.map (.pmacro (args) + (.apply (.pmacro (group index field msb lsb comment) + ((.sym group "-" index "-" field) lsb) + ) + args + ) + ) + (spr-field-info) + ) + ) + +(define-normal-enum + spr-field-masks + "SPR field masks" + () + SPR-FIELD-MASK- + (.map (.pmacro (args) + (.apply (.pmacro (group index field msb lsb comment) + (.splice (.str group "-" index "-" field) (.sll (.inv (.sll (.inv 0) (.add (.sub msb lsb) 1))) lsb)) + ) + args + ) + ) + (spr-field-info) + ) + ) + +(define-pmacro (define-h-spr-field spr-group spr-index spr-field spr-field-msb spr-field-lsb spr-field-comment) + (.let ((spr-field-name (.sym "h-" (.downcase spr-group) "-" (.downcase spr-index) "-" (.downcase spr-field))) + ) + (begin + (define-hardware + (name spr-field-name) + (comment spr-field-comment) + (attrs VIRTUAL (MACH ORBIS-MACHS)) + (type register UWI) + (get () (c-call UWI "@cpu@_h_spr_field_get_raw" (spr-address spr-group spr-index) spr-field-msb spr-field-lsb)) + (set (value) (c-call VOID "@cpu@_h_spr_field_set_raw" (spr-address spr-group spr-index) spr-field-msb spr-field-lsb value)) + ) + ) + ) + ) +(.splice begin (.unsplice (.map (.pmacro (args) (.apply define-h-spr-field args)) (spr-field-info)))) + +(define-attr + (type boolean) + (for insn) + (name DELAYED-CTI) + (comment "delayed control transfer instruction") + (values #f #t) + (default #f) + ) + +(define-attr + (for insn) + (type boolean) + (name NOT-IN-DELAY-SLOT) + (comment "instruction cannot be in delay slot") + (values #f #t) + (default #f) + ) + +(define-attr + (for insn) + (type boolean) + (name FORCED-CTI) + (comment "instruction may forcefully transfer control (e.g., rfe)") + ) diff --git a/external/gpl3/gdb/dist/cpu/or1korbis.cpu b/external/gpl3/gdb/dist/cpu/or1korbis.cpu new file mode 100644 index 000000000000..408a135fa049 --- /dev/null +++ b/external/gpl3/gdb/dist/cpu/or1korbis.cpu @@ -0,0 +1,1145 @@ +; OpenRISC Basic Instruction Set 32-bit (ORBIS) -*- Scheme -*- +; Copyright 2000-2014 Free Software Foundation, Inc. +; Contributed for OR32 by Johan Rydberg, jrydberg@opencores.org +; Modified by Julius Baxter, juliusbaxter@gmail.com +; Modified by Peter Gavin, pgavin@gmail.com +; +; 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, see + +; Instruction fields. + +; Hardware for immediate operands +(dnh h-simm16 "16-bit signed immediate" ((MACH ORBIS-MACHS)) (immediate (INT 16)) () () ()) +(dnh h-uimm16 "16-bit unsigned immediate" () (immediate (UINT 16)) () () ()) +(dnh h-uimm6 "6-bit unsigned immediate" () (immediate (UINT 6)) () () ()) + +; Hardware for the (internal) atomic registers +(dsh h-atomic-reserve "atomic reserve flag" () (register BI)) +(dsh h-atomic-address "atomic reserve address" () (register SI)) + +; Instruction classes. +(dnf f-opcode "insn opcode" ((MACH ORBIS-MACHS)) 31 6) + +; Register fields. +(dnf f-r1 "r1" ((MACH ORBIS-MACHS)) 25 5) +(dnf f-r2 "r2" ((MACH ORBIS-MACHS)) 20 5) +(dnf f-r3 "r3" ((MACH ORBIS-MACHS)) 15 5) + +; Sub fields +(dnf f-op-25-2 "op-25-2" ((MACH ORBIS-MACHS)) 25 2) ;; nop +(dnf f-op-25-5 "op-25-5" ((MACH ORBIS-MACHS)) 25 5) ;; sys, trap, *sync, sf* +(dnf f-op-16-1 "op-16-1" ((MACH ORBIS-MACHS)) 16 1) ;; movhi,macrc +(dnf f-op-7-4 "op-7-4" ((MACH ORBIS-MACHS)) 7 4) +(dnf f-op-3-4 "op-3-4" ((MACH ORBIS-MACHS)) 3 4) +(dnf f-op-9-2 "op-9-2" ((MACH ORBIS-MACHS)) 9 2) ;; alu ops upper opcode +(dnf f-op-9-4 "op-9-4" ((MACH ORBIS-MACHS)) 9 4) ;; +(dnf f-op-7-8 "op-7-8" ((MACH ORBIS-MACHS)) 7 8) +(dnf f-op-7-2 "op-7-2" ((MACH ORBIS-MACHS)) 7 2) ;; alu lower upper opc,shroti + +; Reserved fields +(dnf f-resv-25-26 "resv-25-26" ((MACH ORBIS-MACHS) RESERVED) 25 26) +(dnf f-resv-25-10 "resv-25-10" ((MACH ORBIS-MACHS) RESERVED) 25 10) +(dnf f-resv-25-5 "resv-25-5" ((MACH ORBIS-MACHS) RESERVED) 25 5) +(dnf f-resv-23-8 "resv-23-8" ((MACH ORBIS-MACHS) RESERVED) 23 8) +(dnf f-resv-20-21 "resv-20-21" ((MACH ORBIS-MACHS) RESERVED) 20 21) +(dnf f-resv-20-5 "resv-20-5" ((MACH ORBIS-MACHS) RESERVED) 20 5) +(dnf f-resv-20-4 "resv-20-4" ((MACH ORBIS-MACHS) RESERVED) 20 4) +(dnf f-resv-15-8 "resv-15-8" ((MACH ORBIS-MACHS) RESERVED) 15 8) +(dnf f-resv-15-6 "resv-15-6" ((MACH ORBIS-MACHS) RESERVED) 15 6) +(dnf f-resv-10-11 "resv-10-11" ((MACH ORBIS-MACHS) RESERVED) 10 11) +(dnf f-resv-10-7 "resv-10-7" ((MACH ORBIS-MACHS) RESERVED) 10 7) +(dnf f-resv-10-3 "resv-10-3" ((MACH ORBIS-MACHS) RESERVED) 10 3) +(dnf f-resv-10-1 "resv-10-1" ((MACH ORBIS-MACHS) RESERVED) 10 1) +(dnf f-resv-7-4 "resv-7-4" ((MACH ORBIS-MACHS) RESERVED) 7 4) +(dnf f-resv-5-2 "resv-5-2" ((MACH ORBIS-MACHS) RESERVED) 5 2) + +(dnf f-imm16-25-5 "imm16-25-5" ((MACH ORBIS-MACHS)) 25 5) +(dnf f-imm16-10-11 "imm16-10-11" ((MACH ORBIS-MACHS)) 10 11) + +; PC relative, 26-bit (2 shifted to right) +(df f-disp26 + "disp26" + ((MACH ORBIS-MACHS) PCREL-ADDR) + 25 + 26 + INT + ((value pc) (sra SI (sub IAI value pc) (const 2))) + ((value pc) (add IAI (sll IAI value (const 2)) pc)) + ) + +; Immediates. +(dnf f-uimm16 "uimm16" ((MACH ORBIS-MACHS)) 15 16) +(df f-simm16 "simm16" ((MACH ORBIS-MACHS) SIGN-OPT) 15 16 INT #f #f) +(dnf f-uimm6 "uimm6" ((MACH ORBIS-MACHS)) 5 6) ;; shroti + +(define-multi-ifield + (name f-uimm16-split) + (comment "16-bit split unsigned immediate") + (attrs (MACH ORBIS-MACHS)) + (mode UINT) + (subfields f-imm16-25-5 f-imm16-10-11) + (insert (sequence () + (set (ifield f-imm16-25-5) + (and (srl (ifield f-uimm16-split) + (const 11)) + (const #x1f))) + (set (ifield f-imm16-10-11) + (and (ifield f-uimm16-split) + (const #x7ff))))) + (extract + (set (ifield f-uimm16-split) + (trunc UHI + (or (sll (ifield f-imm16-25-5) + (const 11)) + (ifield f-imm16-10-11))))) + ) + +(define-multi-ifield + (name f-simm16-split) + (comment "16-bit split signed immediate") + (attrs (MACH ORBIS-MACHS) SIGN-OPT) + (mode INT) + (subfields f-imm16-25-5 f-imm16-10-11) + (insert (sequence () + (set (ifield f-imm16-25-5) + (and (sra (ifield f-simm16-split) + (const 11)) + (const #x1f))) + (set (ifield f-imm16-10-11) + (and (ifield f-simm16-split) + (const #x7ff))))) + (extract + (set (ifield f-simm16-split) + (trunc HI + (or (sll (ifield f-imm16-25-5) + (const 11)) + (ifield f-imm16-10-11))))) + ) + +; Enums. + +; insn-opcode: bits 31-26 +(define-normal-insn-enum + insn-opcode "insn main opcode enums" ((MACH ORBIS-MACHS)) OPC_ f-opcode + (("J" #x00) + ("JAL" #x01) + ("BNF" #x03) + ("BF" #x04) + ("NOP" #x05) + ("MOVHIMACRC" #x06) + ("SYSTRAPSYNCS" #x08) + ("RFE" #x09) + ("VECTOR" #x0a) + ("JR" #x11) + ("JALR" #x12) + ("MACI" #x13) + ("LWA" #x1b) + ("CUST1" #x1c) + ("CUST2" #x1d) + ("CUST3" #x1e) + ("CUST4" #x1f) + ("LD" #x20) + ("LWZ" #x21) + ("LWS" #x22) + ("LBZ" #x23) + ("LBS" #x24) + ("LHZ" #x25) + ("LHS" #x26) + ("ADDI" #x27) + ("ADDIC" #x28) + ("ANDI" #x29) + ("ORI" #x2a) + ("XORI" #x2b) + ("MULI" #x2c) + ("MFSPR" #x2d) + ("SHROTI" #x2e) + ("SFI" #x2f) + ("MTSPR" #x30) + ("MAC" #x31) + ("FLOAT" #x32) + ("SWA" #x33) + ("SD" #x34) + ("SW" #x35) + ("SB" #x36) + ("SH" #x37) + ("ALU" #x38) + ("SF" #x39) + ("CUST5" #x3c) + ("CUST6" #x3d) + ("CUST7" #x3e) + ("CUST8" #x3f) + ) +) + +(define-normal-insn-enum insn-opcode-systrapsyncs + "systrapsync insn opcode enums" ((MACH ORBIS-MACHS)) + OPC_SYSTRAPSYNCS_ f-op-25-5 + (("SYSCALL" #x00 ) + ("TRAP" #x08 ) + ("MSYNC" #x10 ) + ("PSYNC" #x14 ) + ("CSYNC" #x18 ) + ) +) + +(define-normal-insn-enum insn-opcode-movehimacrc + "movhi/macrc insn opcode enums" ((MACH ORBIS-MACHS)) + OPC_MOVHIMACRC_ f-op-16-1 + (("MOVHI" #x0) + ("MACRC" #x1) + ) +) + +(define-normal-insn-enum insn-opcode-mac + "multiply/accumulate insn opcode enums" ((MACH ORBIS-MACHS)) + OPC_MAC_ f-op-3-4 + (("MAC" #x1) + ("MSB" #x2) + ) + ) + +(define-normal-insn-enum insn-opcode-shorts + "shift/rotate insn opcode enums" ((MACH ORBIS-MACHS)) + OPC_SHROTS_ f-op-7-2 + (("SLL" #x0 ) + ("SRL" #x1 ) + ("SRA" #x2 ) + ("ROR" #x3 ) + ) +) + +(define-normal-insn-enum insn-opcode-extbhs + "extend byte/half opcode enums" ((MACH ORBIS-MACHS)) + OPC_EXTBHS_ f-op-9-4 + (("EXTHS" #x0) + ("EXTBS" #x1) + ("EXTHZ" #x2) + ("EXTBZ" #x3) + ) +) + +(define-normal-insn-enum insn-opcode-extws + "extend word opcode enums" ((MACH ORBIS-MACHS)) + OPC_EXTWS_ f-op-9-4 + (("EXTWS" #x0) + ("EXTWZ" #x1) + ) +) + +(define-normal-insn-enum insn-opcode-alu-regreg + "alu reg/reg insn opcode enums" ((MACH ORBIS-MACHS)) + OPC_ALU_REGREG_ f-op-3-4 + (("ADD" #x0) + ("ADDC" #x1) + ("SUB" #x2) + ("AND" #x3) + ("OR" #x4) + ("XOR" #x5) + ("MUL" #x6) + ("SHROT" #x8) + ("DIV" #x9) + ("DIVU" #xA) + ("MULU" #xB) + ("EXTBH" #xC) + ("EXTW" #xD) + ("CMOV" #xE) + ("FFL1" #xF) + ) +) + +(define-normal-insn-enum insn-opcode-setflag + "setflag insn opcode enums" ((MACH ORBIS-MACHS)) + OPC_SF_ f-op-25-5 + (("EQ" #x00) + ("NE" #x01) + ("GTU" #x02) + ("GEU" #x03) + ("LTU" #x04) + ("LEU" #x05) + ("GTS" #x0A) + ("GES" #x0B) + ("LTS" #x0C) + ("LES" #x0D) + ) +) + + +; Instruction operands. + +(dnop sys-sr "supervision register" ((MACH ORBIS-MACHS) SEM-ONLY) h-sys-sr f-nil) +(dnop sys-esr0 "exception supervision register 0" ((MACH ORBIS-MACHS) SEM-ONLY) h-sys-esr0 f-nil) +(dnop sys-epcr0 "exception PC register 0" ((MACH ORBIS-MACHS) SEM-ONLY) h-sys-epcr0 f-nil) + +(dnop sys-sr-lee "SR little endian enable bit" ((MACH ORBIS-MACHS) SEM-ONLY) h-sys-sr-lee f-nil) +(dnop sys-sr-f "SR flag bit" ((MACH ORBIS-MACHS) SEM-ONLY) h-sys-sr-f f-nil) +(dnop sys-sr-cy "SR carry bit" ((MACH ORBIS-MACHS) SEM-ONLY) h-sys-sr-cy f-nil) +(dnop sys-sr-ov "SR overflow bit" ((MACH ORBIS-MACHS) SEM-ONLY) h-sys-sr-ov f-nil) +(dnop sys-sr-ove "SR overflow exception enable bit" ((MACH ORBIS-MACHS) SEM-ONLY) h-sys-sr-ove f-nil) +(dnop sys-cpucfgr-ob64s "CPUCFGR ORBIS64 supported bit" ((MACH ORBIS-MACHS) SEM-ONLY) h-sys-cpucfgr-ob64s f-nil) +(dnop sys-cpucfgr-nd "CPUCFGR no delay bit" ((MACH ORBIS-MACHS) SEM-ONLY) h-sys-cpucfgr-nd f-nil) +(dnop sys-fpcsr-rm "floating point round mode" ((MACH ORBIS-MACHS) SEM-ONLY) h-sys-fpcsr-rm f-nil) + +(dnop mac-machi "MAC HI result register" ((MACH ORBIS-MACHS) SEM-ONLY) h-mac-machi f-nil) +(dnop mac-maclo "MAC LO result register" ((MACH ORBIS-MACHS) SEM-ONLY) h-mac-maclo f-nil) + +(dnop atomic-reserve "atomic reserve flag" ((MACH ORBIS-MACHS) SEM-ONLY) h-atomic-reserve f-nil) +(dnop atomic-address "atomic address" ((MACH ORBIS-MACHS) SEM-ONLY) h-atomic-address f-nil) + +(dnop uimm6 "uimm6" ((MACH ORBIS-MACHS)) h-uimm6 f-uimm6) + +(dnop rD "destination register" ((MACH ORBIS-MACHS)) h-gpr f-r1) +(dnop rA "source register A" ((MACH ORBIS-MACHS)) h-gpr f-r2) +(dnop rB "source register B" ((MACH ORBIS-MACHS)) h-gpr f-r3) + +(define-operand + (name disp26) + (comment "pc-rel 26 bit") + (attrs (MACH ORBIS-MACHS)) + (type h-iaddr) + (index f-disp26) + (handlers (parse "disp26")) + ) + +(define-operand + (name simm16) + (comment "16-bit signed immediate") + (attrs (MACH ORBIS-MACHS) SIGN-OPT) + (type h-simm16) + (index f-simm16) + (handlers (parse "simm16")) + ) + +(define-operand + (name uimm16) + (comment "16-bit unsigned immediate") + (attrs (MACH ORBIS-MACHS)) + (type h-uimm16) + (index f-uimm16) + (handlers (parse "uimm16")) + ) + +(define-operand + (name simm16-split) + (comment "split 16-bit signed immediate") + (attrs (MACH ORBIS-MACHS) SIGN-OPT) + (type h-simm16) + (index f-simm16-split) + (handlers (parse "simm16")) +) + +(define-operand + (name uimm16-split) + (comment "split 16-bit unsigned immediate") + (attrs (MACH ORBIS-MACHS)) + (type h-uimm16) + (index f-uimm16-split) + (handlers (parse "uimm16")) +) + +; Instructions. + +; Branch releated instructions + +(define-pmacro (cti-link-return) + (set IAI (reg h-gpr 9) (add pc (if sys-cpucfgr-nd 4 8))) + ) +(define-pmacro (cti-transfer-control condition target) + ;; this mess is necessary because we're + ;; skipping the delay slot, but it's + ;; actually the start of the next basic + ;; block + (sequence () + (if condition + (delay 1 (set IAI pc target)) + (if sys-cpucfgr-nd + (delay 1 (set IAI pc (add pc 4)))) + ) + (if sys-cpucfgr-nd + (skip 1) + ) + ) + ) + +(define-pmacro + (define-cti + cti-name + cti-comment + cti-attrs + cti-syntax + cti-format + cti-semantics) + (begin + (dni + cti-name + cti-comment + (.splice (MACH ORBIS-MACHS) DELAYED-CTI NOT-IN-DELAY-SLOT (.unsplice cti-attrs)) + cti-syntax + cti-format + (cti-semantics) + () + ) + ) + ) + +(define-cti + l-j + "jump (pc-relative iaddr)" + (!COND-CTI UNCOND-CTI) + "l.j ${disp26}" + (+ OPC_J disp26) + (.pmacro () + (cti-transfer-control 1 disp26) + ) + ) + +(define-cti + l-jal + "jump and link (pc-relative iaddr)" + (!COND-CTI UNCOND-CTI) + "l.jal ${disp26}" + (+ OPC_JAL disp26) + (.pmacro () + (sequence () + (cti-link-return) + (cti-transfer-control 1 disp26) + ) + ) + ) + +(define-cti + l-jr + "jump register (absolute iaddr)" + (!COND-CTI UNCOND-CTI) + "l.jr $rB" + (+ OPC_JR (f-resv-25-10 0) rB (f-resv-10-11 0)) + (.pmacro () + (cti-transfer-control 1 rB) + ) + ) + +(define-cti + l-jalr + "jump register and link (absolute iaddr)" + (!COND-CTI UNCOND-CTI) + "l.jalr $rB" + (+ OPC_JALR (f-resv-25-10 0) rB (f-resv-10-11 0) ) + (.pmacro () + (sequence () + (cti-link-return) + (cti-transfer-control 1 rB) + ) + ) + ) + +(define-cti + l-bnf + "branch if condition bit not set (pc relative iaddr)" + (COND-CTI !UNCOND-CTI) + "l.bnf ${disp26}" + (+ OPC_BNF disp26) + (.pmacro () + (cti-transfer-control (not sys-sr-f) disp26) + ) + ) + +(define-cti + l-bf + "branch if condition bit set (pc relative iaddr)" + (COND-CTI !UNCOND-CTI) + "l.bf ${disp26}" + (+ OPC_BF disp26) + (.pmacro () + (cti-transfer-control sys-sr-f disp26) + ) + ) + +(dni l-trap "trap (exception)" + ((MACH ORBIS-MACHS) NOT-IN-DELAY-SLOT) + "l.trap ${uimm16}" + (+ OPC_SYSTRAPSYNCS OPC_SYSTRAPSYNCS_TRAP (f-resv-20-5 0) uimm16) + ; Do exception entry handling in C function, PC set based on SR state + (raise-exception EXCEPT-TRAP) + () +) + + +(dni l-sys "syscall (exception)" + ; This function may not be in delay slot + ((MACH ORBIS-MACHS) NOT-IN-DELAY-SLOT) + + "l.sys ${uimm16}" + (+ OPC_SYSTRAPSYNCS OPC_SYSTRAPSYNCS_SYSCALL (f-resv-20-5 0) uimm16) + ; Do exception entry handling in C function, PC set based on SR state + (raise-exception EXCEPT-SYSCALL) + () +) + +(dni l-msync "memory sync" + ((MACH ORBIS-MACHS)) + "l.msync" + (+ OPC_SYSTRAPSYNCS OPC_SYSTRAPSYNCS_MSYNC (f-resv-20-21 0)) + (nop) + () +) + +(dni l-psync "pipeline sync" + ((MACH ORBIS-MACHS)) + "l.psync" + (+ OPC_SYSTRAPSYNCS OPC_SYSTRAPSYNCS_PSYNC (f-resv-20-21 0)) + (nop) + () +) + +(dni l-csync "context sync" + ((MACH ORBIS-MACHS)) + "l.csync" + (+ OPC_SYSTRAPSYNCS OPC_SYSTRAPSYNCS_CSYNC (f-resv-20-21 0)) + (nop) + () +) + +(dni l-rfe "return from exception" + ; This function may not be in delay slot + ((MACH ORBIS-MACHS) NOT-IN-DELAY-SLOT FORCED-CTI) + + "l.rfe" + (+ OPC_RFE (f-resv-25-26 0)) + (c-call VOID "@cpu@_rfe") + () +) + + +; Misc instructions + +; l.nop with immediate must be first so it handles all l.nops in sim +(dni l-nop-imm "nop uimm16" + ((MACH ORBIS-MACHS)) + "l.nop ${uimm16}" + (+ OPC_NOP (f-op-25-2 #x1) (f-resv-23-8 0) uimm16) + (c-call VOID "@cpu@_nop" (zext UWI uimm16)) + () + ) + +(if (application-is? SIMULATOR) + (begin) + (begin + (dni l-nop "nop" + ((MACH ORBIS-MACHS)) + "l.nop" + (+ OPC_NOP (f-op-25-2 #x1) (f-resv-23-8 0) uimm16) + (nop) + () + ) + ) +) + +(dni l-movhi "movhi reg/uimm16" + ((MACH ORBIS-MACHS)) + "l.movhi $rD,$uimm16" + (+ OPC_MOVHIMACRC rD (f-resv-20-4 0) OPC_MOVHIMACRC_MOVHI uimm16) + (set UWI rD (sll UWI (zext UWI uimm16) (const 16))) + () +) + +(dni l-macrc "macrc reg" + ((MACH ORBIS-MACHS)) + "l.macrc $rD" + (+ OPC_MOVHIMACRC rD (f-resv-20-4 0) OPC_MOVHIMACRC_MACRC (f-uimm16 0)) + (sequence () + (set UWI rD mac-maclo) + (set UWI mac-maclo 0) + (set UWI mac-machi 0) + ) + () + ) + + +; System releated instructions + +(dni l-mfspr "mfspr" + ((MACH ORBIS-MACHS)) + "l.mfspr $rD,$rA,${uimm16}" + (+ OPC_MFSPR rD rA uimm16) + (set UWI rD (c-call UWI "@cpu@_mfspr" (or rA (zext UWI uimm16)))) + () +) + +(dni l-mtspr "mtspr" + ((MACH ORBIS-MACHS)) + "l.mtspr $rA,$rB,${uimm16-split}" + (+ OPC_MTSPR rA rB uimm16-split ) + (c-call VOID "@cpu@_mtspr" (or rA (zext WI uimm16-split)) rB) + () +) + + +; Load instructions +(define-pmacro (load-store-addr base offset size) + (c-call AI "@cpu@_make_load_store_addr" base (ext SI offset) size)) + +(dni l-lwz "l.lwz reg/simm16(reg)" + ((MACH ORBIS-MACHS)) + "l.lwz $rD,${simm16}($rA)" + (+ OPC_LWZ rD rA simm16) + (set UWI rD (zext UWI (mem USI (load-store-addr rA simm16 4)))) + () +) + + +(dni l-lws "l.lws reg/simm16(reg)" + ((MACH ORBIS-MACHS)) + "l.lws $rD,${simm16}($rA)" + (+ OPC_LWS rD rA simm16) + (set WI rD (ext WI (mem SI (load-store-addr rA simm16 4)))) + () +) + +(dni l-lwa "l.lwa reg/simm16(reg)" + ((MACH ORBIS-MACHS)) + "l.lwa $rD,${simm16}($rA)" + (+ OPC_LWA rD rA simm16) + (sequence () + (set UWI rD (zext UWI (mem USI (load-store-addr rA simm16 4)))) + (set atomic-reserve (const 1)) + (set atomic-address (load-store-addr rA simm16 4)) + ) + () +) + +(dni l-lbz "l.lbz reg/simm16(reg)" + ((MACH ORBIS-MACHS)) + "l.lbz $rD,${simm16}($rA)" + (+ OPC_LBZ rD rA simm16) + (set UWI rD (zext UWI (mem UQI (load-store-addr rA simm16 1)))) + () +) + +(dni l-lbs "l.lbs reg/simm16(reg)" + ((MACH ORBIS-MACHS)) + "l.lbs $rD,${simm16}($rA)" + (+ OPC_LBS rD rA simm16) + (set WI rD (ext WI (mem QI (load-store-addr rA simm16 1)))) + () +) + +(dni l-lhz "l.lhz reg/simm16(reg)" + ((MACH ORBIS-MACHS)) + "l.lhz $rD,${simm16}($rA)" + (+ OPC_LHZ rD simm16 rA) + (set UWI rD (zext UWI (mem UHI (load-store-addr rA simm16 2)))) + () +) + +(dni l-lhs "l.lhs reg/simm16(reg)" + ((MACH ORBIS-MACHS)) + "l.lhs $rD,${simm16}($rA)" + (+ OPC_LHS rD rA simm16) + (set WI rD (ext WI (mem HI (load-store-addr rA simm16 2)))) + () +) + + +; Store instructions + +(define-pmacro (store-insn mnemonic opc-op mode size) + (begin + (dni (.sym l- mnemonic) + (.str "l." mnemonic " simm16(reg)/reg") + ((MACH ORBIS-MACHS)) + (.str "l." mnemonic " ${simm16-split}($rA),$rB") + (+ opc-op rA rB simm16-split) + (sequence ((SI addr)) + (set addr (load-store-addr rA simm16-split size)) + (set mode (mem mode addr) (trunc mode rB)) + (if (eq (and addr #xffffffc) atomic-address) + (set atomic-reserve (const 0)) + ) + ) + () + ) + ) +) + +(store-insn sw OPC_SW USI 4) +(store-insn sb OPC_SB UQI 1) +(store-insn sh OPC_SH UHI 2) + +(dni l-swa "l.swa simm16(reg)/reg" + ((MACH ORBIS-MACHS)) + "l.swa ${simm16-split}($rA),$rB" + (+ OPC_SWA rA rB simm16) + (sequence ((SI addr) (BI flag)) + (set addr (load-store-addr rA simm16-split 4)) + (set sys-sr-f (and atomic-reserve (eq addr atomic-address))) + (if sys-sr-f + (set USI (mem USI addr) (trunc USI rB)) + ) + (set atomic-reserve (const 0)) + ) + () +) + + +; Shift and rotate instructions + +(define-pmacro (shift-insn mnemonic) + (begin + (dni (.sym l- mnemonic) + (.str "l." mnemonic " reg/reg/reg") + ((MACH ORBIS-MACHS)) + (.str "l." mnemonic " $rD,$rA,$rB") + (+ OPC_ALU rD rA rB (f-resv-10-3 0) (.sym OPC_SHROTS_ (.upcase mnemonic)) (f-resv-5-2 0) + OPC_ALU_REGREG_SHROT ) + (set UWI rD (mnemonic rA rB)) + () + ) + (dni (.sym l- mnemonic "i") + (.str "l." mnemonic " reg/reg/uimm6") + ((MACH ORBIS-MACHS)) + (.str "l." mnemonic "i $rD,$rA,${uimm6}") + (+ OPC_SHROTI rD rA (f-resv-15-8 0) (.sym OPC_SHROTS_ (.upcase mnemonic)) uimm6) + (set rD (mnemonic rA uimm6)) + () + ) + ) +) + +(shift-insn sll) +(shift-insn srl) +(shift-insn sra) +(shift-insn ror) + + +; Arithmetic insns + +; ALU op macro +(define-pmacro (alu-insn mnemonic) + (begin + (dni (.sym l- mnemonic) + (.str "l." mnemonic " reg/reg/reg") + ((MACH ORBIS-MACHS)) + (.str "l." mnemonic " $rD,$rA,$rB") + (+ OPC_ALU rD rA rB (f-resv-10-7 0) (.sym OPC_ALU_REGREG_ (.upcase mnemonic))) + (set rD (mnemonic rA rB)) + () + ) + ) +) + +(alu-insn and) +(alu-insn or) +(alu-insn xor) + +(define-pmacro (alu-carry-insn mnemonic) + (begin + (dni (.sym l- mnemonic) + (.str "l." mnemonic " reg/reg/reg") + ((MACH ORBIS-MACHS)) + (.str "l." mnemonic " $rD,$rA,$rB") + (+ OPC_ALU rD rA rB (f-resv-10-7 #x00) (.sym OPC_ALU_REGREG_ (.upcase mnemonic))) + (sequence () + (sequence () + (set BI sys-sr-cy ((.sym mnemonic "c-cflag") WI rA rB 0)) + (set BI sys-sr-ov ((.sym mnemonic "c-oflag") WI rA rB 0)) + (set rD (mnemonic WI rA rB)) + ) + (if (andif sys-sr-ov sys-sr-ove) + (raise-exception EXCEPT-RANGE)) + ) + () + ) + ) + ) + +(alu-carry-insn add) +(alu-carry-insn sub) + +(dni (l-addc) "l.addc reg/reg/reg" + ((MACH ORBIS-MACHS)) + ("l.addc $rD,$rA,$rB") + (+ OPC_ALU rD rA rB (f-resv-10-7 #x00) OPC_ALU_REGREG_ADDC) + (sequence () + (sequence ((BI tmp-sys-sr-cy)) + (set BI tmp-sys-sr-cy sys-sr-cy) + (set BI sys-sr-cy (addc-cflag WI rA rB tmp-sys-sr-cy)) + (set BI sys-sr-ov (addc-oflag WI rA rB tmp-sys-sr-cy)) + (set rD (addc WI rA rB tmp-sys-sr-cy)) + ) + (if (andif sys-sr-ov sys-sr-ove) + (raise-exception EXCEPT-RANGE)) + ) + () +) + +(dni (l-mul) "l.mul reg/reg/reg" + ((MACH ORBIS-MACHS)) + ("l.mul $rD,$rA,$rB") + (+ OPC_ALU rD rA rB (f-resv-10-7 #x30) OPC_ALU_REGREG_MUL) + (sequence () + (sequence () + ; 2's complement overflow + (set BI sys-sr-ov (mul-o2flag WI rA rB)) + ; 1's complement overflow + (set BI sys-sr-cy (mul-o1flag WI rA rB)) + (set rD (mul WI rA rB)) + ) + (if (andif sys-sr-ov sys-sr-ove) + (raise-exception EXCEPT-RANGE)) + ) + () +) + +(dni (l-mulu) "l.mulu reg/reg/reg" + ((MACH ORBIS-MACHS)) + ("l.mulu $rD,$rA,$rB") + (+ OPC_ALU rD rA rB (f-resv-10-7 #x30) OPC_ALU_REGREG_MULU) + (sequence () + (sequence () + ; 2's complement overflow + (set BI sys-sr-ov 0) + ; 1's complement overflow + (set BI sys-sr-cy (mul-o1flag UWI rA rB)) + (set rD (mul UWI rA rB)) + ) + (if (andif sys-sr-ov sys-sr-ove) + (raise-exception EXCEPT-RANGE)) + ) + () +) + +(dni l-div "divide (signed)" + ((MACH ORBIS-MACHS)) + "l.div $rD,$rA,$rB" + (+ OPC_ALU rD rA rB (f-resv-10-7 #x30) OPC_ALU_REGREG_DIV) + (sequence () + (if (ne rB 0) + (sequence () + (set BI sys-sr-cy 0) + (set WI rD (div WI rA rB)) + ) + (set BI sys-sr-cy 1) + ) + (set BI sys-sr-ov 0) + (if (andif sys-sr-cy sys-sr-ove) + (raise-exception EXCEPT-RANGE)) + ) + () +) + +(dni l-divu "divide (unsigned)" + ((MACH ORBIS-MACHS)) + "l.divu $rD,$rA,$rB" + (+ OPC_ALU rD rA rB (f-resv-10-7 #x30) OPC_ALU_REGREG_DIVU) + (sequence () + (if (ne rB 0) + (sequence () + (set BI sys-sr-cy 0) + (set rD (udiv UWI rA rB)) + ) + (set BI sys-sr-cy 1) + ) + (set BI sys-sr-ov 0) + (if (andif sys-sr-cy sys-sr-ove) + (raise-exception EXCEPT-RANGE)) + ) + () +) + +(dni l-ff1 "find first '1'" + ((MACH ORBIS-MACHS)) + "l.ff1 $rD,$rA" + (+ OPC_ALU rD rA rB (f-resv-10-7 #x00) OPC_ALU_REGREG_FFL1) + (set rD (c-call UWI "@cpu@_ff1" rA)) + () +) + +(dni l-fl1 "find last '1'" + ((MACH ORBIS-MACHS)) + "l.fl1 $rD,$rA" + (+ OPC_ALU rD rA rB (f-resv-10-7 #x10) OPC_ALU_REGREG_FFL1) + (set rD (c-call UWI "@cpu@_fl1" rA)) + () +) + + +(define-pmacro (alu-insn-simm mnemonic) + (begin + (dni (.sym l- mnemonic "i") + (.str "l." mnemonic " reg/reg/simm16") + ((MACH ORBIS-MACHS)) + (.str "l." mnemonic "i $rD,$rA,$simm16") + (+ (.sym OPC_ (.upcase mnemonic) "I") rD rA simm16) + (set rD (mnemonic rA (ext WI simm16))) + () + ) + ) +) + +(define-pmacro (alu-insn-uimm mnemonic) + (begin + (dni (.sym l- mnemonic "i") + (.str "l." mnemonic " reg/reg/uimm16") + ((MACH ORBIS-MACHS)) + (.str "l." mnemonic "i $rD,$rA,$uimm16") + (+ (.sym OPC_ (.upcase mnemonic) "I") rD rA uimm16) + (set rD (mnemonic rA (zext UWI uimm16))) + () + ) + ) +) + +(alu-insn-uimm and) +(alu-insn-uimm or) +(alu-insn-simm xor) + +(define-pmacro (alu-carry-insn-simm mnemonic) + (begin + (dni (.sym l- mnemonic "i") + (.str "l." mnemonic "i reg/reg/simm16") + ((MACH ORBIS-MACHS)) + (.str "l." mnemonic "i $rD,$rA,$simm16") + (+ (.sym OPC_ (.upcase mnemonic) "I") rD rA simm16) + (sequence () + (sequence () + (set BI sys-sr-cy ((.sym mnemonic "c-cflag") WI rA (ext WI simm16) 0)) + (set BI sys-sr-ov ((.sym mnemonic "c-oflag") WI rA (ext WI simm16) 0)) + (set rD (mnemonic WI rA (ext WI simm16))) + ) + (if (andif sys-sr-ov sys-sr-ove) + (raise-exception EXCEPT-RANGE)) + ) + () + ) + ) + ) + +(alu-carry-insn-simm add) + +(dni (l-addic) + ("l.addic reg/reg/simm16") + ((MACH ORBIS-MACHS)) + ("l.addic $rD,$rA,$simm16") + (+ OPC_ADDIC rD rA simm16) + (sequence () + (sequence ((BI tmp-sys-sr-cy)) + (set BI tmp-sys-sr-cy sys-sr-cy) + (set BI sys-sr-cy (addc-cflag WI rA (ext WI simm16) tmp-sys-sr-cy)) + (set BI sys-sr-ov (addc-oflag WI rA (ext WI simm16) tmp-sys-sr-cy)) + (set WI rD (addc WI rA (ext WI simm16) tmp-sys-sr-cy)) + ) + (if (andif sys-sr-ov sys-sr-ove) + (raise-exception EXCEPT-RANGE)) + ) + () +) + +(dni (l-muli) + "l.muli reg/reg/simm16" + ((MACH ORBIS-MACHS)) + ("l.muli $rD,$rA,$simm16") + (+ OPC_MULI rD rA simm16) + (sequence () + (sequence () + ; 2's complement overflow + (set sys-sr-ov (mul-o2flag WI rA (ext WI simm16))) + ; 1's complement overflow + (set sys-sr-cy (mul-o1flag UWI rA (ext UWI simm16))) + (set rD (mul WI rA (ext WI simm16))) + ) + (if (andif sys-sr-ov sys-sr-ove) + (raise-exception EXCEPT-RANGE)) + ) + () + ) + +(define-pmacro (extbh-insn mnemonic extop extmode truncmode) + (begin + (dni (.sym l- mnemonic) + (.str "l." mnemonic " reg/reg") + ((MACH ORBIS-MACHS)) + (.str "l." mnemonic " $rD,$rA") + (+ OPC_ALU rD rA (f-resv-15-6 0) (.sym OPC_EXTBHS_ (.upcase mnemonic)) (f-resv-5-2 0) OPC_ALU_REGREG_EXTBH) + (set rD (extop extmode (trunc truncmode rA))) + () + ) + ) + ) + +(extbh-insn exths ext WI HI) +(extbh-insn extbs ext WI QI) +(extbh-insn exthz zext UWI UHI) +(extbh-insn extbz zext UWI UQI) + +(define-pmacro (extw-insn mnemonic extop extmode truncmode) + (begin + (dni (.sym l- mnemonic) + (.str "l." mnemonic " reg/reg") + ((MACH ORBIS-MACHS)) + (.str "l." mnemonic " $rD,$rA") + (+ OPC_ALU rD rA (f-resv-15-6 0) (.sym OPC_EXTWS_ (.upcase mnemonic)) (f-resv-5-2 0) OPC_ALU_REGREG_EXTW) + (set rD (extop extmode (trunc truncmode rA))) + () + ) + ) + ) + +(extw-insn extws ext WI SI) +(extw-insn extwz zext USI USI) + +(dni l-cmov + "l.cmov reg/reg/reg" + ((MACH ORBIS-MACHS)) + "l.cmov $rD,$rA,$rB" + (+ OPC_ALU rD rA rB (f-resv-10-1 0) (f-op-9-2 0) (f-resv-7-4 0) OPC_ALU_REGREG_CMOV) + (if sys-sr-f + (set UWI rD rA) + (set UWI rD rB) + ) + () + ) + +; Compare instructions + +; Ordering compare +(define-pmacro (sf-insn op) + (begin + (dni (.sym l- "sf" op "s") ; l-sfgts + (.str "l.sf" op "s reg/reg") ; "l.sfgts reg/reg" + ((MACH ORBIS-MACHS)) + (.str "l.sf" op "s $rA,$rB") ; "l.sfgts $rA,$rB" + (+ OPC_SF (.sym "OPC_SF_" (.upcase op) "S") rA rB (f-resv-10-11 0)) ; (+ OPC_SF OPC_SF_GTS rA rB (f-resv-10-11 0)) + (set sys-sr-f (op WI rA rB)) ; (set sys-sr-f (gt WI rA rB)) + () + ) + (dni (.sym l- "sf" op "si") ; l-sfgtsi + (.str "l.sf" op "si reg/simm16") ; "l.sfgtsi reg/simm16" + ((MACH ORBIS-MACHS)) + (.str "l.sf" op "si $rA,$simm16") ; "l.sfgtsi $rA,$simm16" + (+ OPC_SFI (.sym "OPC_SF_" (.upcase op) "S") rA simm16) ; (+ OPC_SFI OPC_SF_GTS rA simm16) + (set sys-sr-f (op WI rA (ext WI simm16))) ; (set sys-sr-f (gt WI rA (ext WI simm16))) + () + ) + (dni (.sym l- "sf" op "u") ; l-sfgtu + (.str "l.sf" op "u reg/reg") ; "l.sfgtu reg/reg" + ((MACH ORBIS-MACHS)) + (.str "l.sf" op "u $rA,$rB") ; "l.sfgtu $rA,$rB" + (+ OPC_SF (.sym "OPC_SF_" (.upcase op) "U") rA rB (f-resv-10-11 0)) ; (+ OPC_SF OPC_SF_GTU rA rB (f-resv-10-11 0)) + (set sys-sr-f ((.sym op "u") WI rA rB)) ; (set sys-sr-f (gtu WI rA rB)) + () + ) + ; immediate is sign extended even for unsigned compare + (dni (.sym l- "sf" op "ui") ; l-sfgtui + (.str "l.sf" op "ui reg/simm16") ; "l.sfgtui reg/uimm16" + ((MACH ORBIS-MACHS)) + (.str "l.sf" op "ui $rA,$simm16") ; "l.sfgtui $rA,$simm16" + (+ OPC_SFI (.sym "OPC_SF_" (.upcase op) "U") rA simm16) ; (+ OPC_SFI OPC_SF_GTU rA simm16) + (set sys-sr-f ((.sym op "u") WI rA (ext WI simm16))) ; (set sys-sr-f (gtu WI rA (ext WI simm16))) + () + ) + ) + ) + +(sf-insn gt) +(sf-insn ge) +(sf-insn lt) +(sf-insn le) + +; Equality compare +(define-pmacro (sf-insn-eq op) + (begin + (dni (.sym l- "sf" op) + (.str "l." op " reg/reg") + ((MACH ORBIS-MACHS)) + (.str "l.sf" op " $rA,$rB") + (+ OPC_SF (.sym "OPC_SF_" (.upcase op)) rA rB (f-resv-10-11 0)) + (set sys-sr-f (op WI rA rB)) + () + ) + (dni (.sym l- "sf" op "i") + (.str "l.sf" op "i reg/simm16") + ((MACH ORBIS-MACHS)) + (.str "l.sf" op "i $rA,$simm16") + (+ OPC_SFI (.sym "OPC_SF_" (.upcase op)) rA simm16) + (set sys-sr-f (op WI rA (ext WI simm16))) + () + ) + ) +) + +(sf-insn-eq eq) +(sf-insn-eq ne) + +(dni l-mac + "l.mac reg/reg" + ((MACH ORBIS-MACHS)) + "l.mac $rA,$rB" + (+ OPC_MAC (f-op-25-5 0) rA rB (f-resv-10-7 0) OPC_MAC_MAC) + (sequence ((WI prod) (DI result)) + (set WI prod (mul WI rA rB)) + (set DI result (add (join DI SI mac-machi mac-maclo) (ext DI prod))) + (set SI mac-machi (subword SI result 0)) + (set SI mac-maclo (subword SI result 1)) + ) + () + ) + +(dni l-msb + "l.msb reg/reg" + ((MACH ORBIS-MACHS)) + "l.msb $rA,$rB" + (+ OPC_MAC (f-op-25-5 0) rA rB (f-resv-10-7 0) OPC_MAC_MSB) + (sequence ((WI prod) (DI result)) + (set WI prod (mul WI rA rB)) + (set DI result (sub (join DI SI mac-machi mac-maclo) (ext DI prod))) + (set SI mac-machi (subword SI result 0)) + (set SI mac-maclo (subword SI result 1)) + ) + () + ) + +(dni l-maci + "l.maci reg/simm16" + ((MACH ORBIS-MACHS)) + "l.maci $rA,${simm16}" + (+ OPC_MACI (f-resv-25-5 0) rA simm16) + (sequence ((WI prod) (DI result)) + (set WI prod (mul WI (ext WI simm16) rA)) + (set DI result (add (join DI SI mac-machi mac-maclo) (ext DI prod))) + (set SI mac-machi (subword SI result 0)) + (set SI mac-maclo (subword SI result 1)) + ) + () + ) + +(define-pmacro (cust-insn cust-num) + (begin + (dni (.sym l- "cust" cust-num) + (.str "l.cust" cust-num) + ((MACH ORBIS-MACHS)) + (.str "l.cust" cust-num) + (+ (.sym OPC_CUST cust-num) (f-resv-25-26 0)) + (nop) + () + ) + ) + ) + +(cust-insn "1") +(cust-insn "2") +(cust-insn "3") +(cust-insn "4") +(cust-insn "5") +(cust-insn "6") +(cust-insn "7") +(cust-insn "8") diff --git a/external/gpl3/gdb/dist/etc/ChangeLog b/external/gpl3/gdb/dist/etc/ChangeLog index d3b6a0bf3808..516e6a98dae4 100644 --- a/external/gpl3/gdb/dist/etc/ChangeLog +++ b/external/gpl3/gdb/dist/etc/ChangeLog @@ -1,3 +1,22 @@ +2014-06-27 Ludovic Courtès + + PR external/16327 + PR external/16328 + * Makefile.in (MAKEINFO, TEXI2DVI, TEXI2PDF, TEXI2HTML, DVIPS) + (TEXIDIR, INFOFILES, DVIFILES, PDFFILES, HTMLFILES): Remove. + (all): Remove dependency on 'info'. + (install): Remove dependency on 'install-info'. + (standards.info, standards.html, standards.dvi, standards.ps) + (standards.pdf, configure.info, configure.dvi, configure.ps) + (configure.pdf, configure.pdf): Remove. + (info, install-info, html, install-html, dvi, pdf, install-pdf) + clean, maintainer-clean, realclean): Remove body. + * etc/configbuild.ein, etc/configbuild.fig, etc/configbuild.jin, + etc/configbuild.tin, etc/configdev.ein, etc/configdev.fig, + etc/configdev.jin, etc/configdev.tin, etc/configure.texi, + etc/fdl.texi, etc/gnu-oids.texi, etc/make-stds.texi, + etc/standards.texi: Remove. + 2010-11-20 Ralf Wildenhues * Makefile.in (install-strip): New target. diff --git a/external/gpl3/gdb/dist/etc/Makefile.in b/external/gpl3/gdb/dist/etc/Makefile.in index 0d19c13e6e50..4aa64c11488d 100644 --- a/external/gpl3/gdb/dist/etc/Makefile.in +++ b/external/gpl3/gdb/dist/etc/Makefile.in @@ -37,187 +37,12 @@ INSTALL = @INSTALL@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_DATA = @INSTALL_DATA@ -MAKEINFO = `if [ -f ../texinfo/makeinfo/makeinfo ]; \ - then echo ../texinfo/makeinfo/makeinfo; \ - else echo makeinfo; fi` -TEXI2DVI = `if [ -f ../texinfo/util/texi2dvi ]; \ - then echo ../texinfo/util/texi2dvi; \ - else echo texi2dvi; fi` -TEXI2PDF = `if [ -f ../texinfo/util/texi2dvi ]; \ - then echo "../texinfo/util/texi2dvi --pdf"; \ - else echo "texi2dvi --pdf"; fi` -TEXI2HTML = `if [ -f ../texinfo/makeinfo/makeinfo ]; \ - then echo "../texinfo/makeinfo/makeinfo --html"; \ - else echo "makeinfo --html"; fi` - -DVIPS = dvips - -# Where to find texinfo.tex to format documentation with TeX. -TEXIDIR = $(srcdir)/../texinfo - #### Host, target, and site specific Makefile fragments come in here. ### -INFOFILES = standards.info configure.info -DVIFILES = standards.dvi configure.dvi -PDFFILES = standards.pdf configure.pdf -HTMLFILES = standards.html configure.html - -all: info -install install-strip: install-info - -uninstall: - -info: - for f in $(INFOFILES); do \ - if test -f $(srcdir)/`echo $$f | sed -e 's/.info$$/.texi/'`; then \ - if $(MAKE) "MAKEINFO=$(MAKEINFO)" $$f; then \ - true; \ - else \ - exit 1; \ - fi; \ - fi; \ - done - -install-info: info - $(SHELL) $(srcdir)/../mkinstalldirs $(DESTDIR)$(infodir) - if test ! -f standards.info; then cd $(srcdir); fi; \ - if test -f standards.info; then \ - for i in standards.info*; do \ - $(INSTALL_DATA) $$i $(DESTDIR)$(infodir)/$$i; \ - done; \ - fi - if test ! -f configure.info; then cd $(srcdir); fi; \ - if test -f configure.info; then \ - for i in configure.info*; do \ - $(INSTALL_DATA) $$i $(DESTDIR)$(infodir)/$$i; \ - done; \ - fi - -html: - for f in $(HTMLFILES); do \ - if test -f $(srcdir)/`echo $$f | sed -e 's/.html$$/.texi/'`; then \ - if $(MAKE) "TEXI2HTML=$(TEXI2HTML)" $$f; then \ - true; \ - else \ - exit 1; \ - fi; \ - fi; \ - done - -install-html: html - $(SHELL) $(srcdir)/../mkinstalldirs $(DESTDIR)$(htmldir) - if test ! -f standards.html; then cd $(srcdir); fi; \ - if test -f standards.html; then \ - for i in standards.html*; do \ - $(INSTALL_DATA) $$i $(DESTDIR)$(htmldir)/$$i; \ - done; \ - fi - if test ! -f configure.html; then cd $(srcdir); fi; \ - if test -f configure.html; then \ - for i in configure.html*; do \ - $(INSTALL_DATA) $$i $(DESTDIR)$(htmldir)/$$i; \ - done; \ - fi - -dvi: - for f in $(DVIFILES); do \ - if test -f $(srcdir)/`echo $$f | sed -e 's/.dvi$$/.texi/'`; then \ - if $(MAKE) "TEXI2DVI=$(TEXI2DVI)" $$f; then \ - true; \ - else \ - exit 1; \ - fi; \ - fi; \ - done - -pdf: - for f in $(PDFFILES); do \ - if test -f $(srcdir)/`echo $$f | sed -e 's/.pdf$$/.texi/'`; then \ - if $(MAKE) "TEXI2PDF=$(TEXI2PDF)" $$f; then \ - true; \ - else \ - exit 1; \ - fi; \ - fi; \ - done - -install-pdf: pdf - $(SHELL) $(srcdir)/../mkinstalldirs $(DESTDIR)$(pdfdir)/etc - if test ! -f standards.pdf; then cd $(srcdir); fi; \ - if test -f standards.pdf; then \ - for i in standards.pdf*; do \ - $(INSTALL_DATA) $$i $(DESTDIR)$(pdfdir)/etc/$$i; \ - done; \ - fi - if test ! -f configure.pdf; then cd $(srcdir); fi; \ - if test -f configure.pdf; then \ - for i in configure.pdf*; do \ - $(INSTALL_DATA) $$i $(DESTDIR)$(pdfdir)/etc/$$i; \ - done; \ - fi - -standards.info: $(srcdir)/standards.texi $(srcdir)/make-stds.texi - $(MAKEINFO) --no-split -I$(srcdir) -o standards.info $(srcdir)/standards.texi - -standards.html: $(srcdir)/standards.texi $(srcdir)/make-stds.texi - $(TEXI2HTML) --no-split -I$(srcdir) -o standards.html $(srcdir)/standards.texi - -standards.dvi: $(srcdir)/standards.texi - TEXINPUTS=$(TEXIDIR):$$TEXINPUTS $(TEXI2DVI) $(srcdir)/standards.texi - -standards.ps: standards.dvi - $(DVIPS) standards.dvi -o standards.ps - -standards.pdf: $(srcdir)/standards.texi - TEXINPUTS=$(TEXIDIR):$$TEXINPUTS $(TEXI2PDF) $(srcdir)/standards.texi - -# makeinfo requires images to be in the current directory. -configure.info: $(srcdir)/configure.texi $(srcdir)/configdev.tin $(srcdir)/configbuild.tin - rm -f configdev.txt configbuild.txt - cp $(srcdir)/configdev.tin configdev.txt - cp $(srcdir)/configbuild.tin configbuild.txt - $(MAKEINFO) -I$(srcdir) -o configure.info $(srcdir)/configure.texi - rm -f configdev.txt configbuild.txt - -# texi2dvi wants both the .txt and the .eps files. -configure.dvi: $(srcdir)/configure.texi $(srcdir)/configdev.tin $(srcdir)/configbuild.tin $(srcdir)/configdev.ein $(srcdir)/configbuild.ein - rm -f configdev.txt configbuild.txt - cp $(srcdir)/configdev.tin configdev.txt - cp $(srcdir)/configbuild.tin configbuild.txt - rm -f configdev.eps configbuild.eps - cp $(srcdir)/configdev.ein configdev.eps - cp $(srcdir)/configbuild.ein configbuild.eps - TEXINPUTS=$(TEXIDIR):$$TEXINPUTS $(TEXI2DVI) $(srcdir)/configure.texi - rm -f configdev.txt configbuild.txt - rm -f configdev.eps configbuild.eps - -# dvips requires images to be in the current directory -configure.ps: configure.dvi $(srcdir)/configdev.ein $(srcdir)/configbuild.ein - rm -f configdev.eps configbuild.eps - cp $(srcdir)/configdev.ein configdev.eps - cp $(srcdir)/configbuild.ein configbuild.eps - $(DVIPS) configure.dvi -o configure.ps - rm -f configdev.eps configbuild.eps - -configure.pdf: $(srcdir)/configure.texi $(srcdir)/configdev.tin $(srcdir)/configbuild.tin $(srcdir)/configdev.ein $(srcdir)/configbuild.ein - rm -f configdev.pdf configbuild.pdf - epstopdf $(srcdir)/configdev.ein -outfile=configdev.pdf - epstopdf $(srcdir)/configbuild.ein -outfile=configbuild.pdf - TEXINPUTS=$(TEXIDIR):$$TEXINPUTS $(TEXI2PDF) $(srcdir)/configure.texi - rm -f configdev.pdf configbuild.pdf - -configure.html: $(srcdir)/configure.texi - cp $(srcdir)/configdev.jin configdev.jpg - cp $(srcdir)/configbuild.jin configbuild.jpg - $(TEXI2HTML) --no-split -I$(srcdir) -o configure.html $(srcdir)/configure.texi +all: clean: - rm -f *.aux *.cp *.cps *.dvi *.fn *.fns *.ky *.kys *.log - rm -f *.pg *.pgs *.toc *.tp *.tps *.vr *.vrs - rm -f configdev.txt configbuild.txt - rm -f configdev.eps configbuild.eps - rm -f configdev.jpg configbuild.jpg mostlyclean: clean @@ -225,8 +50,6 @@ distclean: clean rm -f Makefile config.status config.cache maintainer-clean realclean: distclean - rm -f *.html* - rm -f *.info* Makefile: $(srcdir)/Makefile.in $(host_makefile_frag) $(target_makefile_frag) \ config.status @@ -244,5 +67,8 @@ config.status: $(srcdir)/configure ## these last targets are for standards.texi conformance dist: check: +info html dvi ps pdf: +install install-strip install-info install-html install-pdf: installcheck: +uninstall: TAGS: diff --git a/external/gpl3/gdb/dist/include/ChangeLog b/external/gpl3/gdb/dist/include/ChangeLog index ae2f1700e069..31f1e18093ea 100644 --- a/external/gpl3/gdb/dist/include/ChangeLog +++ b/external/gpl3/gdb/dist/include/ChangeLog @@ -1,3 +1,183 @@ +2015-01-14 Jan-Benedict Glaw + + * libiberty.h: Merge from GCC. + +2015-01-01 Alan Modra + + Update year range in copyright notice of all files. + +2014-12-24 Uros Bizjak + Ben Elliston + Manuel Lopez-Ibanez + + * libiberty.h (xasprintf): Declare. + +2014-12-23 Alan Modra + + * bfdlink.h (struct bfd_link_hash_entry): Comment non_ir_ref. Add + linker_def. + +2014-12-12 Phil Muldoon + Jan Kratochvil + Tom Tromey + + * gcc-c-fe.def: New file. + * gcc-c-interface.h: New file. + * gcc-interface.h: New file. + +2014-12-11 Uros Bizjak + Ben Elliston + Manuel Lopez-Ibanez + + * libiberty.h (xvasprintf): Declare. + +2014-12-06 Eric Botcazou + + * dis-asm.h (print_insn_visium): Declare. + +2014-11-24 Mark Wielaard + + * dwarf2.h: Add DW_LANG_C_plus_plus_11, DW_LANG_C11 and + DW_LANG_C_plus_plus_14. + +2014-11-21 Shinichiro Hamaji + + * dwarf2.def (DW_AT_APPLE_optimized, DW_AT_APPLE_flags) + (DW_AT_APPLE_isa, DW_AT_APPLE_block) + (DW_AT_APPLE_major_runtime_vers, DW_AT_APPLE_runtime_class) + (DW_AT_APPLE_omit_frame_ptr, DW_AT_APPLE_property_name) + (DW_AT_APPLE_property_getter, DW_AT_APPLE_property_setter) + (DW_AT_APPLE_property_attribute, DW_AT_APPLE_objc_complete_type) + (DW_AT_APPLE_property): New macros. + +2014-11-21 Mark Wielaard + + PR debug/63239 + * dwarf2.def (DW_AT_GNU_deleted): New attribute. + +2014-11-21 Terry Guo + + * opcode/arm.h (FPU_VFP_EXT_ARMV8xD): New macro. + (FPU_VFP_V5D16): Likewise. + (FPU_VFP_V5_SP_D16): Likewise. + (FPU_ARCH_VFP_V5D16): Likewise. + (FPU_ARCH_VFP_V5_SP_D16): Likewise. + +2014-11-18 Igor Zamyatin + + * bfdlink.h (struct bfd_link_info): Add bndplt. + +2014-10-30 Andrew Pinski + + * elf/mips.h (AFL_EXT_OCTEON3): Define. + INSN_OCTEON3, CPU_OCTEON3): Define. + +2014-10-28 Yury Gribov + + * libiberty.h (strtol, strtoul, strtoll, strtoull): New prototypes. + +2014-10-22 Matthew Fortune + + * elf/mips.h (AFL_ASE_MASK): Define. + +2014-10-15 David Malcolm + + * libiberty.h (choose_tmpdir): New prototype. + +2014-09-26 Max Ostapenko + + * libiberty.h (PEX_STDOUT_APPEND): New flag. + (PEX_STDERR_APPEND): Likewise. + +2014-09-23 Iain Buclaw + + * demangle.h (DMGL_DLANG): New macro. + (DMGL_STYLE_MASK): Add DMGL_DLANG. + (demangling_styles): Add dlang_demangling. + (DLANG_DEMANGLING_STYLE_STRING): New macro. + (DLANG_DEMANGLING): New macro. + (dlang_demangle): New prototype. + +2014-09-15 Andreas Krebbel + + * longlong.h: Add __udiv_w_sdiv prototype. + +2014-08-12 Alan Modra + + * bfdlink.h (struct bfd_link_callbacks ): Remove "string" + param, add "inh". + +2014-08-12 Alan Modra + + * bfdlink.h (struct bfd_link_info): Add lto_plugin_active. + +2014-07-29 Matthew Fortune + + * elf/mips.h (PT_MIPS_ABIFLAGS, SHT_MIPS_ABIFLAGS): Define. + (Val_GNU_MIPS_ABI_FP_OLD_64): Rename from Val_GNU_MIPS_ABI_FP_64. + (Val_GNU_MIPS_ABI_FP_64): Redefine. + (Val_GNU_MIPS_ABI_FP_XX): Define. + (Elf_External_ABIFlags_v0, Elf_Internal_ABIFlags_v0): New structures. + (AFL_REG_NONE, AFL_REG_32, AFL_REG_64, AFL_REG_128): Define. + (AFL_ASE_DSP, AFL_ASE_DSPR2, AFL_ASE_EVA, AFL_ASE_MCU): Likewise. + (AFL_ASE_MDMX, AFL_ASE_MIPS3D, AFL_ASE_MT, AFL_ASE_SMARTMIPS): Likewise. + (AFL_ASE_VIRT, AFL_ASE_MSA, AFL_ASE_MIPS16): Likewise. + (AFL_ASE_MICROMIPS, AFL_ASE_XPA): Likewise. + (AFL_EXT_XLR, AFL_EXT_OCTEON2, AFL_EXT_OCTEONP): Likewise. + (AFL_EXT_LOONGSON_3A, AFL_EXT_OCTEON, AFL_EXT_5900): Likewise. + (AFL_EXT_4650, AFL_EXT_4010, AFL_EXT_4100, AFL_EXT_3900): Likewise. + (AFL_EXT_10000, AFL_EXT_SB1, AFL_EXT_4111, AFL_EXT_4120): Likewise. + (AFL_EXT_5400, AFL_EXT_5500, AFL_EXT_LOONGSON_2E): Likewise. + (AFL_EXT_LOONGSON_2F): Likewise. + (bfd_mips_elf_swap_abiflags_v0_in): Prototype. + (bfd_mips_elf_swap_abiflags_v0_out): Likewise. + (bfd_mips_isa_ext): Likewise. + +2014-06-13 Alan Modra + + * bfdlink.h (struct bfd_link_hash_table): Add hash_table_free field. + +2014-06-13 Alan Modra + + * bfdlink.h: Update for bfd.link_next change. + +2014-06-10 Alan Modra + + PR ld/16910 + * bfdlink.h (unwrap_hash_lookup): Declare. + +2014-05-01 Steve Ellcey + + * include/longlong.h: Import latest version from GCC tree. + +2014-04-23 Andrew Bennett + + * opcode/mips.h (ASE_XPA): New define. + +2014-04-22 Christian Svensson + + * dis-asm.h: Remove openrisc and or32 support. Add support for or1k. + +2014-04-10 Senthil Kumar Selvaraj + + * elf/avr.h: Add new DIFF relocs. + +2014-03-05 Alan Modra + + Update copyright years. + +2014-01-21 Tom Tromey + + * ansidecl.h (ANSI_PROTOTYPES, PTRCONST, LONG_DOUBLE, PARAMS) + (VPARAMS, VA_START, VA_OPEN, VA_CLOSE, VA_FIXEDARG, CONST) + (VOLATILE, SIGNED, PROTO, EXFUN, DEFUN, DEFUN_VOID, AND, DOTS) + (NOARGS): Don't define. + * libiberty.h (expandargv, writeargv): Don't use PARAMS. + +2014-01-09 Tom Tromey + + * gdbm.h: Remove. + 2013-12-23 Bill Maddox * demangle.h (enum gnu_v3_ctor_kinds): @@ -1995,7 +2175,7 @@ For older changes see ChangeLog-9103 -Copyright (C) 2004-2012 Free Software Foundation, Inc. +Copyright (C) 2004-2015 Free Software Foundation, Inc. Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright diff --git a/external/gpl3/gdb/dist/include/MAINTAINERS b/external/gpl3/gdb/dist/include/MAINTAINERS index cd933df76d73..4164f26f2dc1 100644 --- a/external/gpl3/gdb/dist/include/MAINTAINERS +++ b/external/gpl3/gdb/dist/include/MAINTAINERS @@ -1,6 +1,6 @@ See ../binutils/MAINTAINERS -Copyright (C) 2012 Free Software Foundation, Inc. +Copyright (C) 2012-2015 Free Software Foundation, Inc. Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright diff --git a/external/gpl3/gdb/dist/include/alloca-conf.h b/external/gpl3/gdb/dist/include/alloca-conf.h index 0e9e2c378601..d0b6db3b4810 100644 --- a/external/gpl3/gdb/dist/include/alloca-conf.h +++ b/external/gpl3/gdb/dist/include/alloca-conf.h @@ -1,4 +1,4 @@ -/* Copyright 2012 Free Software Foundation, Inc. +/* Copyright (C) 2012-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/ansidecl.h b/external/gpl3/gdb/dist/include/ansidecl.h index 5cd03a7d760e..6cbea971aaaa 100644 --- a/external/gpl3/gdb/dist/include/ansidecl.h +++ b/external/gpl3/gdb/dist/include/ansidecl.h @@ -1,7 +1,5 @@ /* ANSI and traditional C compatability macros - Copyright 1991, 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, - 2002, 2003, 2004, 2005, 2006, 2007, 2009, 2010 - Free Software Foundation, Inc. + Copyright (C) 1991-2015 Free Software Foundation, Inc. This file is part of the GNU C Library. This program is free software; you can redistribute it and/or modify @@ -24,93 +22,16 @@ Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. Macro ANSI C definition Traditional C definition ----- ---- - ---------- ----------- - ---------- - ANSI_PROTOTYPES 1 not defined PTR `void *' `char *' - PTRCONST `void *const' `char *' - LONG_DOUBLE `long double' `double' const not defined `' volatile not defined `' signed not defined `' - VA_START(ap, var) va_start(ap, var) va_start(ap) - - Note that it is safe to write "void foo();" indicating a function - with no return value, in all K+R compilers we have been able to test. - - For declaring functions with prototypes, we also provide these: - - PARAMS ((prototype)) - -- for functions which take a fixed number of arguments. Use this - when declaring the function. When defining the function, write a - K+R style argument list. For example: - - char *strcpy PARAMS ((char *dest, char *source)); - ... - char * - strcpy (dest, source) - char *dest; - char *source; - { ... } - - - VPARAMS ((prototype, ...)) - -- for functions which take a variable number of arguments. Use - PARAMS to declare the function, VPARAMS to define it. For example: - - int printf PARAMS ((const char *format, ...)); - ... - int - printf VPARAMS ((const char *format, ...)) - { - ... - } - - For writing functions which take variable numbers of arguments, we - also provide the VA_OPEN, VA_CLOSE, and VA_FIXEDARG macros. These - hide the differences between K+R and C89 more - thoroughly than the simple VA_START() macro mentioned above. - - VA_OPEN and VA_CLOSE are used *instead of* va_start and va_end. - Immediately after VA_OPEN, put a sequence of VA_FIXEDARG calls - corresponding to the list of fixed arguments. Then use va_arg - normally to get the variable arguments, or pass your va_list object - around. You do not declare the va_list yourself; VA_OPEN does it - for you. - - Here is a complete example: - - int - printf VPARAMS ((const char *format, ...)) - { - int result; - - VA_OPEN (ap, format); - VA_FIXEDARG (ap, const char *, format); - - result = vfprintf (stdout, format, ap); - VA_CLOSE (ap); - - return result; - } - - - You can declare variables either before or after the VA_OPEN, - VA_FIXEDARG sequence. Also, VA_OPEN and VA_CLOSE are the beginning - and end of a block. They must appear at the same nesting level, - and any variables declared after VA_OPEN go out of scope at - VA_CLOSE. Unfortunately, with a K+R compiler, that includes the - argument list. You can have multiple instances of VA_OPEN/VA_CLOSE - pairs in a single function in case you need to traverse the - argument list more than once. For ease of writing code which uses GCC extensions but needs to be portable to other compilers, we provide the GCC_VERSION macro that simplifies testing __GNUC__ and __GNUC_MINOR__ together, and various wrappers around __attribute__. Also, __extension__ will be #defined - to nothing if it doesn't work. See below. - - This header also defines a lot of obsolete macros: - CONST, VOLATILE, SIGNED, PROTO, EXFUN, DEFUN, DEFUN_VOID, - AND, DOTS, NOARGS. Don't use them. */ + to nothing if it doesn't work. See below. */ #ifndef _ANSIDECL_H #define _ANSIDECL_H 1 @@ -149,28 +70,8 @@ So instead we use the macro below and test it against specific values. */ C++ compilers, does not define __STDC__, though it acts as if this was so. (Verified versions: 5.7, 6.2, 6.3, 6.5) */ -#define ANSI_PROTOTYPES 1 #define PTR void * -#define PTRCONST void *const -#define LONG_DOUBLE long double -/* PARAMS is often defined elsewhere (e.g. by libintl.h), so wrap it in - a #ifndef. */ -#ifndef PARAMS -#define PARAMS(ARGS) ARGS -#endif - -#define VPARAMS(ARGS) ARGS -#define VA_START(VA_LIST, VAR) va_start(VA_LIST, VAR) - -/* variadic function helper macros */ -/* "struct Qdmy" swallows the semicolon after VA_OPEN/VA_FIXEDARG's - use without inhibiting further decls and without declaring an - actual variable. */ -#define VA_OPEN(AP, VAR) { va_list AP; va_start(AP, VAR); { struct Qdmy -#define VA_CLOSE(AP) } va_end(AP); } -#define VA_FIXEDARG(AP, T, N) struct Qdmy - #undef const #undef volatile #undef signed @@ -188,35 +89,9 @@ So instead we use the macro below and test it against specific values. */ # endif #endif -/* These are obsolete. Do not use. */ -#ifndef IN_GCC -#define CONST const -#define VOLATILE volatile -#define SIGNED signed - -#define PROTO(type, name, arglist) type name arglist -#define EXFUN(name, proto) name proto -#define DEFUN(name, arglist, args) name(args) -#define DEFUN_VOID(name) name(void) -#define AND , -#define DOTS , ... -#define NOARGS void -#endif /* ! IN_GCC */ - #else /* Not ANSI C. */ -#undef ANSI_PROTOTYPES #define PTR char * -#define PTRCONST PTR -#define LONG_DOUBLE double - -#define PARAMS(args) () -#define VPARAMS(args) (va_alist) va_dcl -#define VA_START(va_list, var) va_start(va_list) - -#define VA_OPEN(AP, VAR) { va_list AP; va_start(AP); { struct Qdmy -#define VA_CLOSE(AP) } va_end(AP); } -#define VA_FIXEDARG(AP, TYPE, NAME) TYPE NAME = va_arg(AP, TYPE) /* some systems define these in header files for non-ansi mode */ #undef const @@ -228,20 +103,6 @@ So instead we use the macro below and test it against specific values. */ #define signed #define inline -#ifndef IN_GCC -#define CONST -#define VOLATILE -#define SIGNED - -#define PROTO(type, name, arglist) type name () -#define EXFUN(name, proto) name() -#define DEFUN(name, arglist, args) name arglist args; -#define DEFUN_VOID(name) name() -#define AND ; -#define DOTS -#define NOARGS -#endif /* ! IN_GCC */ - #endif /* ANSI C. */ /* Define macros for some gcc attributes. This permits us to use the diff --git a/external/gpl3/gdb/dist/include/aout/ChangeLog b/external/gpl3/gdb/dist/include/aout/ChangeLog index b4d4139d957e..790763b60527 100644 --- a/external/gpl3/gdb/dist/include/aout/ChangeLog +++ b/external/gpl3/gdb/dist/include/aout/ChangeLog @@ -1,3 +1,11 @@ +2015-01-01 Alan Modra + + Update year range in copyright notice of all files. + +2014-03-05 Alan Modra + + Update copyright years. + 2010-04-15 Nick Clifton * adobe.h: Update copyright notice to use GPLv3. @@ -248,7 +256,7 @@ Mon Aug 23 Sean Fagan (sef@cygnus.com) directory. -Copyright (C) 1991-2012 Free Software Foundation, Inc. +Copyright (C) 1991-2015 Free Software Foundation, Inc. Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright diff --git a/external/gpl3/gdb/dist/include/aout/adobe.h b/external/gpl3/gdb/dist/include/aout/adobe.h index ce225527787f..9c72fa516085 100644 --- a/external/gpl3/gdb/dist/include/aout/adobe.h +++ b/external/gpl3/gdb/dist/include/aout/adobe.h @@ -1,6 +1,6 @@ /* `a.out.adobe' differences from standard a.out files - Copyright 2001, 2010 Free Software Foundation, Inc. + Copyright (C) 2001-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/aout/aout64.h b/external/gpl3/gdb/dist/include/aout/aout64.h index 384909e05e76..7a250107dee0 100644 --- a/external/gpl3/gdb/dist/include/aout/aout64.h +++ b/external/gpl3/gdb/dist/include/aout/aout64.h @@ -1,6 +1,6 @@ /* `a.out' object-file definitions, including extensions to 64-bit fields - Copyright 1999, 2000, 2001, 2003, 2009, 2010 Free Software Foundation, Inc. + Copyright (C) 1999-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/aout/ar.h b/external/gpl3/gdb/dist/include/aout/ar.h index de0438222dbe..1ac244db6c0c 100644 --- a/external/gpl3/gdb/dist/include/aout/ar.h +++ b/external/gpl3/gdb/dist/include/aout/ar.h @@ -1,6 +1,6 @@ /* archive file definition for GNU software - Copyright 2001, 2008, 2010 Free Software Foundation, Inc. + Copyright (C) 2001-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/aout/dynix3.h b/external/gpl3/gdb/dist/include/aout/dynix3.h index 808e53a76348..972477db9a44 100644 --- a/external/gpl3/gdb/dist/include/aout/dynix3.h +++ b/external/gpl3/gdb/dist/include/aout/dynix3.h @@ -1,6 +1,6 @@ /* a.out specifics for Sequent Symmetry running Dynix 3.x - Copyright 2001, 2010 Free Software Foundation, Inc. + Copyright (C) 2001-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/aout/encap.h b/external/gpl3/gdb/dist/include/aout/encap.h index 7ebec698bac5..6797e730f580 100644 --- a/external/gpl3/gdb/dist/include/aout/encap.h +++ b/external/gpl3/gdb/dist/include/aout/encap.h @@ -1,5 +1,5 @@ /* Yet Another Try at encapsulating bfd object files in coff. - Copyright 1988, 1989, 1991, 2010 Free Software Foundation, Inc. + Copyright (C) 1988-2015 Free Software Foundation, Inc. Written by Pace Willisson 12/9/88 This file is obsolete. It needs to be converted to just define a bunch diff --git a/external/gpl3/gdb/dist/include/aout/host.h b/external/gpl3/gdb/dist/include/aout/host.h index 4260cc53619b..c39705e450aa 100644 --- a/external/gpl3/gdb/dist/include/aout/host.h +++ b/external/gpl3/gdb/dist/include/aout/host.h @@ -1,7 +1,7 @@ /* host.h - Parameters about the a.out format, based on the host system on which the program is compiled. - Copyright 2001, 2010 Free Software Foundation, Inc. + Copyright (C) 2001-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/aout/hp.h b/external/gpl3/gdb/dist/include/aout/hp.h index b60741a7020d..be27668bd0b1 100644 --- a/external/gpl3/gdb/dist/include/aout/hp.h +++ b/external/gpl3/gdb/dist/include/aout/hp.h @@ -1,5 +1,5 @@ /* Special version of for use under HP-UX. - Copyright 1988, 1991, 2010 Free Software Foundation, Inc. + Copyright (C) 1988-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/aout/hp300hpux.h b/external/gpl3/gdb/dist/include/aout/hp300hpux.h index 97a3eb58f528..527e42172523 100644 --- a/external/gpl3/gdb/dist/include/aout/hp300hpux.h +++ b/external/gpl3/gdb/dist/include/aout/hp300hpux.h @@ -1,6 +1,5 @@ /* Special version of for use under HP-UX. - Copyright 1988, 1993, 1995, 2001, 2009, 2010 - Free Software Foundation, Inc. + Copyright (C) 1988-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/aout/hppa.h b/external/gpl3/gdb/dist/include/aout/hppa.h index 24698bb35ea0..08d58f18b89c 100644 --- a/external/gpl3/gdb/dist/include/aout/hppa.h +++ b/external/gpl3/gdb/dist/include/aout/hppa.h @@ -1,4 +1,4 @@ -/* Copyright 2012 Free Software Foundation, Inc. +/* Copyright (C) 2012-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/aout/ranlib.h b/external/gpl3/gdb/dist/include/aout/ranlib.h index 92bec46890f1..1885d63bcd50 100644 --- a/external/gpl3/gdb/dist/include/aout/ranlib.h +++ b/external/gpl3/gdb/dist/include/aout/ranlib.h @@ -1,5 +1,5 @@ /* ranlib.h -- archive library index member definition for GNU. - Copyright 1990, 1991, 2010 Free Software Foundation, Inc. + Copyright (C) 1990-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/aout/reloc.h b/external/gpl3/gdb/dist/include/aout/reloc.h index 6f1bc52e48a4..70e28226a57b 100644 --- a/external/gpl3/gdb/dist/include/aout/reloc.h +++ b/external/gpl3/gdb/dist/include/aout/reloc.h @@ -1,5 +1,5 @@ /* reloc.h -- Header file for relocation information. - Copyright 1989, 1990, 1991, 2010 Free Software Foundation, Inc. + Copyright (C) 1989-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/aout/stab.def b/external/gpl3/gdb/dist/include/aout/stab.def index ad1c62ed88ba..f2934a99d684 100644 --- a/external/gpl3/gdb/dist/include/aout/stab.def +++ b/external/gpl3/gdb/dist/include/aout/stab.def @@ -1,6 +1,5 @@ /* Table of DBX symbol codes for the GNU system. - Copyright 1988, 1991, 1992, 1993, 1994, 1996, 1998, 2004, 2010 - Free Software Foundation, Inc. + Copyright (C) 1988-2015 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as diff --git a/external/gpl3/gdb/dist/include/aout/stab_gnu.h b/external/gpl3/gdb/dist/include/aout/stab_gnu.h index 60b5272c59c0..cfeea824e484 100644 --- a/external/gpl3/gdb/dist/include/aout/stab_gnu.h +++ b/external/gpl3/gdb/dist/include/aout/stab_gnu.h @@ -1,6 +1,6 @@ /* gnu_stab.h Definitions for GNU extensions to STABS - Copyright 2001, 2010 Free Software Foundation, Inc. + Copyright (C) 2001-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/aout/sun4.h b/external/gpl3/gdb/dist/include/aout/sun4.h index 06f7584cf115..c6e3d2ce183b 100644 --- a/external/gpl3/gdb/dist/include/aout/sun4.h +++ b/external/gpl3/gdb/dist/include/aout/sun4.h @@ -1,6 +1,6 @@ /* SPARC-specific values for a.out files - Copyright 2001, 2009, 2010 Free Software Foundation, Inc. + Copyright (C) 2001-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/bfdlink.h b/external/gpl3/gdb/dist/include/bfdlink.h index 1ac0738230a8..add4971df84d 100644 --- a/external/gpl3/gdb/dist/include/bfdlink.h +++ b/external/gpl3/gdb/dist/include/bfdlink.h @@ -1,7 +1,5 @@ /* bfdlink.h -- header file for BFD link routines - Copyright 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, - 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 - Free Software Foundation, Inc. + Copyright (C) 1993-2015 Free Software Foundation, Inc. Written by Steve Chamberlain and Ian Lance Taylor, Cygnus Support. This file is part of BFD, the Binary File Descriptor library. @@ -93,8 +91,14 @@ struct bfd_link_hash_entry /* Type of this entry. */ ENUM_BITFIELD (bfd_link_hash_type) type : 8; + /* Symbol is referenced in a normal object file, as distict from a LTO + IR object file. */ unsigned int non_ir_ref : 1; + /* Symbol is a built-in define. These will be overridden by PROVIDE + in a linker script. */ + unsigned int linker_def : 1; + /* A union of information depending upon the type. */ union { @@ -169,6 +173,8 @@ struct bfd_link_hash_table struct bfd_link_hash_entry *undefs; /* Entries are added to the tail of the undefs list. */ struct bfd_link_hash_entry *undefs_tail; + /* Function to free the hash table on closing BFD. */ + void (*hash_table_free) (bfd *); /* The type of the link hash table. */ enum bfd_link_hash_table_type type; }; @@ -188,6 +194,12 @@ extern struct bfd_link_hash_entry *bfd_wrapped_link_hash_lookup (bfd *, struct bfd_link_info *, const char *, bfd_boolean, bfd_boolean, bfd_boolean); +/* If H is a wrapped symbol, ie. the symbol name starts with "__wrap_" + and the remainder is found in wrap_hash, return the real symbol. */ + +extern struct bfd_link_hash_entry *unwrap_hash_lookup + (struct bfd_link_info *, bfd *, struct bfd_link_hash_entry *); + /* Traverse a link hash table. */ extern void bfd_link_hash_traverse (struct bfd_link_hash_table *, @@ -286,6 +298,9 @@ struct bfd_link_info callback. */ unsigned int notice_all: 1; + /* TRUE if the LTO plugin is active. */ + unsigned int lto_plugin_active: 1; + /* TRUE if we are loading LTO outputs. */ unsigned int loading_lto_outputs: 1; @@ -408,6 +423,9 @@ struct bfd_link_info /* TRUE if the linker script contained an explicit PHDRS command. */ unsigned int user_phdrs: 1; + /* TRUE if BND prefix in PLT entries is always generated. */ + unsigned int bndplt: 1; + /* Char that may appear as the first char of a symbol, but should be skipped (like symbol_leading_char) when looking up symbols in wrap_hash. Used by PowerPC Linux for 'dot' symbols. */ @@ -465,7 +483,7 @@ struct bfd_link_info bfd *output_bfd; /* The list of input BFD's involved in the link. These are chained - together via the link_next field. */ + together via the link.next field. */ bfd *input_bfds; bfd **input_bfds_tail; @@ -631,15 +649,14 @@ struct bfd_link_callbacks (struct bfd_link_info *, const char *name, bfd *abfd, asection *section, bfd_vma address); /* A function which is called when a symbol in notice_hash is - defined or referenced. H is the symbol. ABFD, SECTION and - ADDRESS are the (new) value of the symbol. If SECTION is - bfd_und_section, this is a reference. FLAGS are the symbol - BSF_* flags. STRING is the name of the symbol to indirect to if - the sym is indirect, or the warning string if a warning sym. */ + defined or referenced. H is the symbol, INH the indirect symbol + if applicable. ABFD, SECTION and ADDRESS are the (new) value of + the symbol. If SECTION is bfd_und_section, this is a reference. + FLAGS are the symbol BSF_* flags. */ bfd_boolean (*notice) (struct bfd_link_info *, struct bfd_link_hash_entry *h, - bfd *abfd, asection *section, bfd_vma address, flagword flags, - const char *string); + struct bfd_link_hash_entry *inh, + bfd *abfd, asection *section, bfd_vma address, flagword flags); /* Error or warning link info message. */ void (*einfo) (const char *fmt, ...); diff --git a/external/gpl3/gdb/dist/include/binary-io.h b/external/gpl3/gdb/dist/include/binary-io.h index 2984271f7e3a..470fa3213740 100644 --- a/external/gpl3/gdb/dist/include/binary-io.h +++ b/external/gpl3/gdb/dist/include/binary-io.h @@ -1,5 +1,5 @@ /* Binary mode I/O. - Copyright (C) 2001, 2003, 2005, 2008 Free Software Foundation, Inc. + Copyright (C) 2001-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/bout.h b/external/gpl3/gdb/dist/include/bout.h index 4a302283c2e9..b28cdaa522c9 100644 --- a/external/gpl3/gdb/dist/include/bout.h +++ b/external/gpl3/gdb/dist/include/bout.h @@ -2,7 +2,7 @@ GNU tools modified to support the i80960 (or tools that operate on object files created by such tools). - Copyright 2001, 2010 Free Software Foundation, Inc. + Copyright (C) 2001-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/cgen/ChangeLog b/external/gpl3/gdb/dist/include/cgen/ChangeLog index f3a463940d58..d8dbb70a4d46 100644 --- a/external/gpl3/gdb/dist/include/cgen/ChangeLog +++ b/external/gpl3/gdb/dist/include/cgen/ChangeLog @@ -1,3 +1,11 @@ +2015-01-01 Alan Modra + + Update year range in copyright notice of all files. + +2014-03-05 Alan Modra + + Update copyright years. + 2014-01-06 Tom Tromey * bitset.h: Remove uses of PARAMS. @@ -22,7 +30,7 @@ * bitset.h: New file. Moved here from ../opcode/cgen-bitset.h. Update license to GPL v3. -Copyright (C) 2009-2012 Free Software Foundation, Inc. +Copyright (C) 2009-2015 Free Software Foundation, Inc. Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright diff --git a/external/gpl3/gdb/dist/include/cgen/basic-modes.h b/external/gpl3/gdb/dist/include/cgen/basic-modes.h index bd87f3acb06d..645f3b62b3b7 100644 --- a/external/gpl3/gdb/dist/include/cgen/basic-modes.h +++ b/external/gpl3/gdb/dist/include/cgen/basic-modes.h @@ -1,5 +1,5 @@ /* Basic CGEN modes. - Copyright 2005, 2007, 2009 Free Software Foundation, Inc. + Copyright (C) 2005-2015 Free Software Foundation, Inc. Contributed by Red Hat. This file is part of the GNU opcodes library. diff --git a/external/gpl3/gdb/dist/include/cgen/basic-ops.h b/external/gpl3/gdb/dist/include/cgen/basic-ops.h index 49883f49578e..7b22086d6532 100644 --- a/external/gpl3/gdb/dist/include/cgen/basic-ops.h +++ b/external/gpl3/gdb/dist/include/cgen/basic-ops.h @@ -1,5 +1,5 @@ /* Basic semantics ops support for CGEN. - Copyright 2005-2013 Free Software Foundation, Inc. + Copyright (C) 2005-2015 Free Software Foundation, Inc. Contributed by Red Hat. This file is part of the GNU opcodes library. diff --git a/external/gpl3/gdb/dist/include/cgen/bitset.h b/external/gpl3/gdb/dist/include/cgen/bitset.h index f4481c106e71..3dab7385df3e 100644 --- a/external/gpl3/gdb/dist/include/cgen/bitset.h +++ b/external/gpl3/gdb/dist/include/cgen/bitset.h @@ -1,5 +1,5 @@ /* Header file the type CGEN_BITSET. - Copyright 2002, 2005, 2009, 2013 Free Software Foundation, Inc. + Copyright (C) 2002-2015 Free Software Foundation, Inc. This file is part of the GNU opcodes library. diff --git a/external/gpl3/gdb/dist/include/coff/ChangeLog b/external/gpl3/gdb/dist/include/coff/ChangeLog index 639fb669d360..232e4fca3bdb 100644 --- a/external/gpl3/gdb/dist/include/coff/ChangeLog +++ b/external/gpl3/gdb/dist/include/coff/ChangeLog @@ -1,3 +1,45 @@ +2015-01-06 Alan Modra + + PR binutils/17754 + * internal.h (internal_auxent): Increase size of x_fname field to + 20 to allow for PE format's longer file names. + +2015-01-01 Alan Modra + + Update year range in copyright notice of all files. + +2014-08-20 Daniel Micay + + * pe.h: Add HIGH_ENTROPY_VA flag + +2014-04-22 Christian Svensson + + * or32.h: Delete. + +2014-04-08 Jon TURNEY + + * pe.h (external_IMAGE_DEBUG_DIRECTORY, _CV_INFO_PDB70) + (_CV_INFO_PDB20): Add structures and constants for debug directory + and codeview records. + * internal.h (internal_IMAGE_DEBUG_DIRECTORY, CODEVIEW_INFO): + Add structures and constants for internal representation of debug + directory and codeview records. + +2014-03-13 Tristan Gingold + + * pe.h (struct external_ANON_OBJECT_HEADER_BIGOBJ): Declare. + (FILHSZ_BIGOBJ): Define. + (struct external_SYMBOL_EX): Declare. + (SYMENT_BIGOBJ, SYMESZ_BIGOBJ): Define. + (union external_AUX_SYMBOL_EX): Declare. + (AUXENT_BIGOBJ, AUXESZ_BIGOBJ): Define. + * internal.h (struct internal_filehdr): Change type + of f_nscns. + +2014-03-05 Alan Modra + + Update copyright years. + 2013-12-06 Tristan Gingold * pe.h (UWOP_EPILOG, UWOP_PARE): Define. @@ -363,7 +405,7 @@ For older changes see ChangeLog-9103 -Copyright (C) 2004-2012 Free Software Foundation, Inc. +Copyright (C) 2004-2015 Free Software Foundation, Inc. Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright diff --git a/external/gpl3/gdb/dist/include/coff/alpha.h b/external/gpl3/gdb/dist/include/coff/alpha.h index 81516892a050..3b7220ac710b 100644 --- a/external/gpl3/gdb/dist/include/coff/alpha.h +++ b/external/gpl3/gdb/dist/include/coff/alpha.h @@ -1,7 +1,7 @@ /* ECOFF support on Alpha machines. coff/ecoff.h must be included before this file. - Copyright 2001, 2005, 2010 Free Software Foundation, Inc. + Copyright (C) 2001-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/coff/apollo.h b/external/gpl3/gdb/dist/include/coff/apollo.h index 1d4802f119e0..affb32fb83b9 100644 --- a/external/gpl3/gdb/dist/include/coff/apollo.h +++ b/external/gpl3/gdb/dist/include/coff/apollo.h @@ -1,6 +1,6 @@ /* coff information for Apollo M68K - Copyright 2001, 2010 Free Software Foundation, Inc. + Copyright (C) 2001-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/coff/arm.h b/external/gpl3/gdb/dist/include/coff/arm.h index 4beb1212247a..598b6605f777 100644 --- a/external/gpl3/gdb/dist/include/coff/arm.h +++ b/external/gpl3/gdb/dist/include/coff/arm.h @@ -1,6 +1,5 @@ /* ARM COFF support for BFD. - Copyright 1998, 1999, 2000, 2002, 2003, 2010, 2013 - Free Software Foundation, Inc. + Copyright (C) 1998-2015 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/coff/aux-coff.h b/external/gpl3/gdb/dist/include/coff/aux-coff.h index de7979a6ac3a..9f6a54f84a65 100644 --- a/external/gpl3/gdb/dist/include/coff/aux-coff.h +++ b/external/gpl3/gdb/dist/include/coff/aux-coff.h @@ -1,6 +1,6 @@ /* Modifications of internal.h and m68k.h needed by A/UX - Copyright 2001, 2010 Free Software Foundation, Inc. + Copyright (C) 2001-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/coff/ecoff.h b/external/gpl3/gdb/dist/include/coff/ecoff.h index a7991a998b60..7b5144edaa84 100644 --- a/external/gpl3/gdb/dist/include/coff/ecoff.h +++ b/external/gpl3/gdb/dist/include/coff/ecoff.h @@ -2,7 +2,7 @@ This does not include symbol information, found in sym.h and symconst.h. - Copyright 2001, 2002, 2003, 2004, 2005, 2010 Free Software Foundation, Inc. + Copyright (C) 2001-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/coff/external.h b/external/gpl3/gdb/dist/include/coff/external.h index 4bf594d3db8e..5668dac16d35 100644 --- a/external/gpl3/gdb/dist/include/coff/external.h +++ b/external/gpl3/gdb/dist/include/coff/external.h @@ -1,6 +1,6 @@ /* external.h -- External COFF structures - Copyright 2001, 2006, 2010 Free Software Foundation, Inc. + Copyright (C) 2001-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/coff/go32exe.h b/external/gpl3/gdb/dist/include/coff/go32exe.h index a2ca6cd7e77d..d6ea04ccc450 100644 --- a/external/gpl3/gdb/dist/include/coff/go32exe.h +++ b/external/gpl3/gdb/dist/include/coff/go32exe.h @@ -1,6 +1,6 @@ /* COFF information for PC running go32. - Copyright 2001, 2005, 2009, 2010 Free Software Foundation, Inc. + Copyright (C) 2001-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/coff/h8300.h b/external/gpl3/gdb/dist/include/coff/h8300.h index 4de6602ee84d..ccc5ac2cc102 100644 --- a/external/gpl3/gdb/dist/include/coff/h8300.h +++ b/external/gpl3/gdb/dist/include/coff/h8300.h @@ -1,6 +1,6 @@ /* coff information for Renesas H8/300 and H8/300-H - Copyright 2001, 2003, 2010 Free Software Foundation, Inc. + Copyright (C) 2001-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/coff/h8500.h b/external/gpl3/gdb/dist/include/coff/h8500.h index 56097f86e312..5ee20ca16a02 100644 --- a/external/gpl3/gdb/dist/include/coff/h8500.h +++ b/external/gpl3/gdb/dist/include/coff/h8500.h @@ -1,6 +1,6 @@ /* coff information for Renesas H8/500 - Copyright 2001, 2003, 2010 Free Software Foundation, Inc. + Copyright (C) 2001-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/coff/i386.h b/external/gpl3/gdb/dist/include/coff/i386.h index 61e723ab789b..4e0fe98d4070 100644 --- a/external/gpl3/gdb/dist/include/coff/i386.h +++ b/external/gpl3/gdb/dist/include/coff/i386.h @@ -1,6 +1,6 @@ /* coff information for Intel 386/486. - Copyright 2001, 2009, 2010 Free Software Foundation, Inc. + Copyright (C) 2001-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/coff/i860.h b/external/gpl3/gdb/dist/include/coff/i860.h index 0767de4fec03..aafd0926250b 100644 --- a/external/gpl3/gdb/dist/include/coff/i860.h +++ b/external/gpl3/gdb/dist/include/coff/i860.h @@ -1,6 +1,6 @@ /* COFF information for the Intel i860. - Copyright 2001, 2003, 2010, 2011 Free Software Foundation, Inc. + Copyright (C) 2001-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/coff/i960.h b/external/gpl3/gdb/dist/include/coff/i960.h index 2bf42adcf0e7..2df9577ccad2 100644 --- a/external/gpl3/gdb/dist/include/coff/i960.h +++ b/external/gpl3/gdb/dist/include/coff/i960.h @@ -1,6 +1,6 @@ /* coff information for 80960. Origins: Intel corp, natch. - Copyright 2001, 2010 Free Software Foundation, Inc. + Copyright (C) 2001-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/coff/ia64.h b/external/gpl3/gdb/dist/include/coff/ia64.h index 2ee626863e22..2426dd442289 100644 --- a/external/gpl3/gdb/dist/include/coff/ia64.h +++ b/external/gpl3/gdb/dist/include/coff/ia64.h @@ -1,6 +1,6 @@ /* coff information for HP/Intel IA-64. - Copyright 2000, 2010 Free Software Foundation, Inc. + Copyright (C) 2000-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/coff/internal.h b/external/gpl3/gdb/dist/include/coff/internal.h index 8b843247eddc..c4f24bb1e0af 100644 --- a/external/gpl3/gdb/dist/include/coff/internal.h +++ b/external/gpl3/gdb/dist/include/coff/internal.h @@ -1,19 +1,18 @@ /* Internal format of COFF object file data structures, for GNU BFD. This file is part of BFD, the Binary File Descriptor library. - - Copyright 1999, 2000, 2001, 2002, 2003, 2004. 2005, 2006, 2007, 2009, - 2010 Free Software Foundation, Inc. + + Copyright (C) 1999-2015 Free Software Foundation, Inc. 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, @@ -56,7 +55,7 @@ struct internal_extra_pe_filehdr unsigned short e_res2[10]; /* Reserved words, all 0x0 */ bfd_vma e_lfanew; /* File address of new exe header, 0x80 */ unsigned long dos_message[16]; /* text which always follows dos header */ - bfd_vma nt_signature; /* required NT signature, 0x4550 */ + bfd_vma nt_signature; /* required NT signature, 0x4550 */ }; #define GO32_STUBSIZE 2048 @@ -67,14 +66,14 @@ struct internal_filehdr /* coff-stgo32 EXE stub header before BFD tdata has been allocated. Its data is kept in INTERNAL_FILEHDR.GO32STUB afterwards. - + F_GO32STUB is set iff go32stub contains a valid data. Artifical headers created in BFD have no pre-set go32stub. */ char go32stub[GO32_STUBSIZE]; /* Standard coff internal info. */ unsigned short f_magic; /* magic number */ - unsigned short f_nscns; /* number of sections */ + unsigned int f_nscns; /* number of sections */ long f_timdat; /* time & date stamp */ bfd_vma f_symptr; /* file pointer to symtab */ long f_nsyms; /* number of symtab entries */ @@ -110,7 +109,7 @@ struct internal_filehdr #define F_GO32STUB (0x4000) /* Extra structure which is used in the optional header. */ -typedef struct _IMAGE_DATA_DIRECTORY +typedef struct _IMAGE_DATA_DIRECTORY { bfd_vma VirtualAddress; long Size; @@ -133,6 +132,44 @@ typedef struct _IMAGE_DATA_DIRECTORY /* DataDirectory[15] is currently reserved, so no define. */ #define IMAGE_NUMBEROF_DIRECTORY_ENTRIES 16 +/* Extra structure used in debug directory. */ +struct internal_IMAGE_DEBUG_DIRECTORY +{ + unsigned long Characteristics; + unsigned long TimeDateStamp; + unsigned short MajorVersion; + unsigned short MinorVersion; + unsigned long Type; + unsigned long SizeOfData; + unsigned long AddressOfRawData; + unsigned long PointerToRawData; +}; + +#define PE_IMAGE_DEBUG_TYPE_UNKNOWN 0 +#define PE_IMAGE_DEBUG_TYPE_COFF 1 +#define PE_IMAGE_DEBUG_TYPE_CODEVIEW 2 +#define PE_IMAGE_DEBUG_TYPE_FPO 3 +#define PE_IMAGE_DEBUG_TYPE_MISC 4 +#define PE_IMAGE_DEBUG_TYPE_EXCEPTION 5 +#define PE_IMAGE_DEBUG_TYPE_FIXUP 6 +#define PE_IMAGE_DEBUG_TYPE_OMAP_TO_SRC 7 +#define PE_IMAGE_DEBUG_TYPE_OMAP_FROM_SRC 8 +#define PE_IMAGE_DEBUG_TYPE_BORLAND 9 +#define PE_IMAGE_DEBUG_TYPE_RESERVED10 10 +#define PE_IMAGE_DEBUG_TYPE_CLSID 11 + +/* Extra structure for a codeview debug record */ +#define CV_INFO_SIGNATURE_LENGTH 16 + +typedef struct _CODEVIEW_INFO +{ + unsigned long CVSignature; + char Signature[CV_INFO_SIGNATURE_LENGTH]; + unsigned int SignatureLength; + unsigned long Age; + // char PdbFileName[]; +} CODEVIEW_INFO; + /* Default image base for NT. */ #define NT_EXE_IMAGE_BASE 0x400000 #define NT_DLL_IMAGE_BASE 0x10000000 @@ -148,22 +185,22 @@ typedef struct _IMAGE_DATA_DIRECTORY # define PE_DEF_FILE_ALIGNMENT 0x200 #endif -struct internal_extra_pe_aouthdr +struct internal_extra_pe_aouthdr { /* FIXME: The following entries are in AOUTHDR. But they aren't available internally in bfd. We add them here so that objdump can dump them. */ - /* The state of the image file */ + /* The state of the image file. */ short Magic; - /* Linker major version number */ + /* Linker major version number. */ char MajorLinkerVersion; - /* Linker minor version number */ + /* Linker minor version number. */ char MinorLinkerVersion; - /* Total size of all code sections */ + /* Total size of all code sections. */ long SizeOfCode; - /* Total size of all initialized data sections */ + /* Total size of all initialized data sections. */ long SizeOfInitializedData; - /* Total size of all uninitialized data sections */ + /* Total size of all uninitialized data sections. */ long SizeOfUninitializedData; /* Address of entry point relative to image base. */ bfd_vma AddressOfEntryPoint; @@ -171,40 +208,40 @@ struct internal_extra_pe_aouthdr bfd_vma BaseOfCode; /* Address of the first data section relative to image base. */ bfd_vma BaseOfData; - - /* PE stuff */ - bfd_vma ImageBase; /* address of specific location in memory that - file is located, NT default 0x10000 */ - bfd_vma SectionAlignment; /* section alignment default 0x1000 */ - bfd_vma FileAlignment; /* file alignment default 0x200 */ - short MajorOperatingSystemVersion; /* minimum version of the operating */ - short MinorOperatingSystemVersion; /* system req'd for exe, default to 1*/ - short MajorImageVersion; /* user defineable field to store version of */ - short MinorImageVersion; /* exe or dll being created, default to 0 */ - short MajorSubsystemVersion; /* minimum subsystem version required to */ - short MinorSubsystemVersion; /* run exe; default to 3.1 */ - long Reserved1; /* seems to be 0 */ - long SizeOfImage; /* size of memory to allocate for prog */ - long SizeOfHeaders; /* size of PE header and section table */ - long CheckSum; /* set to 0 */ + /* PE stuff */ + bfd_vma ImageBase; /* Address of specific location in memory that + file is located, NT default 0x10000. */ + + bfd_vma SectionAlignment; /* Section alignment default 0x1000. */ + bfd_vma FileAlignment; /* File alignment default 0x200. */ + short MajorOperatingSystemVersion; /* Minimum version of the operating. */ + short MinorOperatingSystemVersion; /* System req'd for exe, default to 1. */ + short MajorImageVersion; /* User defineable field to store version of */ + short MinorImageVersion; /* exe or dll being created, default to 0. */ + short MajorSubsystemVersion; /* Minimum subsystem version required to */ + short MinorSubsystemVersion; /* run exe; default to 3.1. */ + long Reserved1; /* Seems to be 0. */ + long SizeOfImage; /* Size of memory to allocate for prog. */ + long SizeOfHeaders; /* Size of PE header and section table. */ + long CheckSum; /* Set to 0. */ short Subsystem; - /* type of subsystem exe uses for user interface, + /* Type of subsystem exe uses for user interface, possible values: 1 - NATIVE Doesn't require a subsystem 2 - WINDOWS_GUI runs in Windows GUI subsystem 3 - WINDOWS_CUI runs in Windows char sub. (console app) 5 - OS2_CUI runs in OS/2 character subsystem - 7 - POSIX_CUI runs in Posix character subsystem */ - unsigned short DllCharacteristics; /* flags for DLL init */ - bfd_vma SizeOfStackReserve; /* amount of memory to reserve */ - bfd_vma SizeOfStackCommit; /* amount of memory initially committed for - initial thread's stack, default is 0x1000 */ - bfd_vma SizeOfHeapReserve; /* amount of virtual memory to reserve and */ - bfd_vma SizeOfHeapCommit; /* commit, don't know what to defaut it to */ - long LoaderFlags; /* can probably set to 0 */ - long NumberOfRvaAndSizes; /* number of entries in next entry, 16 */ + 7 - POSIX_CUI runs in Posix character subsystem. */ + unsigned short DllCharacteristics; /* flags for DLL init. */ + bfd_vma SizeOfStackReserve; /* Amount of memory to reserve. */ + bfd_vma SizeOfStackCommit; /* Amount of memory initially committed for + initial thread's stack, default is 0x1000. */ + bfd_vma SizeOfHeapReserve; /* Amount of virtual memory to reserve and */ + bfd_vma SizeOfHeapCommit; /* commit, don't know what to defaut it to. */ + long LoaderFlags; /* Can probably set to 0. */ + long NumberOfRvaAndSizes; /* Number of entries in next entry, 16. */ IMAGE_DATA_DIRECTORY DataDirectory[IMAGE_NUMBEROF_DIRECTORY_ENTRIES]; }; @@ -551,7 +588,11 @@ union internal_auxent union { - char x_fname[FILNMLEN]; + /* PR 17754: We use to FILNMLEN for the size of the x_fname + array, but that cause problems as PE targets use a larger + value. We cannot use their definition of EFILNMLEN as this + header can be used without including any PE headers. */ + char x_fname[20]; struct { long x_zeroes; diff --git a/external/gpl3/gdb/dist/include/coff/m68k.h b/external/gpl3/gdb/dist/include/coff/m68k.h index c00c5a941662..9e6c5092782a 100644 --- a/external/gpl3/gdb/dist/include/coff/m68k.h +++ b/external/gpl3/gdb/dist/include/coff/m68k.h @@ -1,6 +1,6 @@ /* coff information for M68K - Copyright 2001, 2010 Free Software Foundation, Inc. + Copyright (C) 2001-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/coff/m88k.h b/external/gpl3/gdb/dist/include/coff/m88k.h index 8e1b3c930066..c6e45decdc1f 100644 --- a/external/gpl3/gdb/dist/include/coff/m88k.h +++ b/external/gpl3/gdb/dist/include/coff/m88k.h @@ -1,6 +1,6 @@ /* coff information for 88k bcs - Copyright 2001, 2010 Free Software Foundation, Inc. + Copyright (C) 2001-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/coff/mcore.h b/external/gpl3/gdb/dist/include/coff/mcore.h index 60dbfb272d15..3c5c75f7efec 100644 --- a/external/gpl3/gdb/dist/include/coff/mcore.h +++ b/external/gpl3/gdb/dist/include/coff/mcore.h @@ -1,5 +1,5 @@ /* Motorola MCore support for BFD. - Copyright 1999, 2000, 2010 Free Software Foundation, Inc. + Copyright (C) 1999-2015 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/coff/mips.h b/external/gpl3/gdb/dist/include/coff/mips.h index f1c243b6da2f..d3c3524019e2 100644 --- a/external/gpl3/gdb/dist/include/coff/mips.h +++ b/external/gpl3/gdb/dist/include/coff/mips.h @@ -1,7 +1,7 @@ /* ECOFF support on MIPS machines. coff/ecoff.h must be included before this file. - Copyright 1999, 2004, 2010 Free Software Foundation, Inc. + Copyright (C) 1999-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/coff/mipspe.h b/external/gpl3/gdb/dist/include/coff/mipspe.h index f1a0d439f2de..a1c5dac63c98 100644 --- a/external/gpl3/gdb/dist/include/coff/mipspe.h +++ b/external/gpl3/gdb/dist/include/coff/mipspe.h @@ -1,6 +1,6 @@ /* coff information for Windows CE with MIPS VR4111 - Copyright 2000, 2010 Free Software Foundation, Inc. + Copyright (C) 2000-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/coff/pe.h b/external/gpl3/gdb/dist/include/coff/pe.h index 5e2b37e3412f..27c3362486e3 100644 --- a/external/gpl3/gdb/dist/include/coff/pe.h +++ b/external/gpl3/gdb/dist/include/coff/pe.h @@ -1,7 +1,6 @@ -/* pe.h - PE COFF header information +/* pe.h - PE COFF header information - Copyright 1999, 2000, 2001, 2003, 2004, 2005, 2006, 2007, 2009, 2010 - Free Software Foundation, Inc. + Copyright (C) 1999-2015 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. @@ -41,6 +40,7 @@ /* DllCharacteristics flag bits. The inconsistent naming may seem odd, but that is how they are defined in the PE specification. */ +#define IMAGE_DLL_CHARACTERISTICS_HIGH_ENTROPY_VA 0x0020 #define IMAGE_DLL_CHARACTERISTICS_DYNAMIC_BASE 0x0040 #define IMAGE_DLL_CHARACTERISTICS_FORCE_INTEGRITY 0x0080 #define IMAGE_DLL_CHARACTERISTICS_NX_COMPAT 0x0100 @@ -60,16 +60,16 @@ /* Section characteristics added for ppc-nt. */ -#define IMAGE_SCN_TYPE_NO_PAD 0x00000008 /* Reserved. */ +#define IMAGE_SCN_TYPE_NO_PAD 0x00000008 /* Reserved. */ -#define IMAGE_SCN_CNT_CODE 0x00000020 /* Section contains code. */ -#define IMAGE_SCN_CNT_INITIALIZED_DATA 0x00000040 /* Section contains initialized data. */ -#define IMAGE_SCN_CNT_UNINITIALIZED_DATA 0x00000080 /* Section contains uninitialized data. */ +#define IMAGE_SCN_CNT_CODE 0x00000020 /* Section contains code. */ +#define IMAGE_SCN_CNT_INITIALIZED_DATA 0x00000040 /* Section contains initialized data. */ +#define IMAGE_SCN_CNT_UNINITIALIZED_DATA 0x00000080 /* Section contains uninitialized data. */ -#define IMAGE_SCN_LNK_OTHER 0x00000100 /* Reserved. */ -#define IMAGE_SCN_LNK_INFO 0x00000200 /* Section contains comments or some other type of information. */ -#define IMAGE_SCN_LNK_REMOVE 0x00000800 /* Section contents will not become part of image. */ -#define IMAGE_SCN_LNK_COMDAT 0x00001000 /* Section contents comdat. */ +#define IMAGE_SCN_LNK_OTHER 0x00000100 /* Reserved. */ +#define IMAGE_SCN_LNK_INFO 0x00000200 /* Section contains comments or some other type of information. */ +#define IMAGE_SCN_LNK_REMOVE 0x00000800 /* Section contents will not become part of image. */ +#define IMAGE_SCN_LNK_COMDAT 0x00001000 /* Section contents comdat. */ #define IMAGE_SCN_MEM_FARDATA 0x00008000 @@ -78,7 +78,7 @@ #define IMAGE_SCN_MEM_LOCKED 0x00040000 #define IMAGE_SCN_MEM_PRELOAD 0x00080000 -/* Bit position in the s_flags field where the alignment values start. */ +/* Bit position in the s_flags field where the alignment values start. */ #define IMAGE_SCN_ALIGN_POWER_BIT_POS 20 #define IMAGE_SCN_ALIGN_POWER_BIT_MASK 0x00f00000 #define IMAGE_SCN_ALIGN_POWER_NUM(val) \ @@ -90,7 +90,7 @@ #define IMAGE_SCN_ALIGN_2BYTES IMAGE_SCN_ALIGN_POWER_CONST (1) #define IMAGE_SCN_ALIGN_4BYTES IMAGE_SCN_ALIGN_POWER_CONST (2) #define IMAGE_SCN_ALIGN_8BYTES IMAGE_SCN_ALIGN_POWER_CONST (3) -/* Default alignment if no others are specified. */ +/* Default alignment if no others are specified. */ #define IMAGE_SCN_ALIGN_16BYTES IMAGE_SCN_ALIGN_POWER_CONST (4) #define IMAGE_SCN_ALIGN_32BYTES IMAGE_SCN_ALIGN_POWER_CONST (5) #define IMAGE_SCN_ALIGN_64BYTES IMAGE_SCN_ALIGN_POWER_CONST (6) @@ -102,7 +102,7 @@ #define IMAGE_SCN_ALIGN_4096BYTES IMAGE_SCN_ALIGN_POWER_CONST (12) #define IMAGE_SCN_ALIGN_8192BYTES IMAGE_SCN_ALIGN_POWER_CONST (13) -/* Encode alignment power into IMAGE_SCN_ALIGN bits of s_flags */ +/* Encode alignment power into IMAGE_SCN_ALIGN bits of s_flags. */ #define COFF_ENCODE_ALIGNMENT(SECTION, ALIGNMENT_POWER) \ ((SECTION).s_flags |= IMAGE_SCN_ALIGN_POWER_CONST ((ALIGNMENT_POWER))) @@ -164,9 +164,9 @@ #define IMAGE_SUBSYSTEM_EFI_RUNTIME_DRIVER 12 #define IMAGE_SUBSYSTEM_SAL_RUNTIME_DRIVER 13 #define IMAGE_SUBSYSTEM_XBOX 14 - + /* Magic values that are true for all dos/nt implementations. */ -#define DOSMAGIC 0x5a4d +#define DOSMAGIC 0x5a4d #define NT_SIGNATURE 0x00004550 /* NT allows long filenames, we want to accommodate this. @@ -201,7 +201,7 @@ struct external_PEI_DOS_hdr struct external_PEI_IMAGE_hdr { - char nt_signature[4]; /* required NT signature, 0x4550. */ + char nt_signature[4]; /* Required NT signature, 0x4550. */ /* From standard header. */ char f_magic[2]; /* Magic number. */ @@ -240,7 +240,7 @@ struct external_PEI_filehdr /* Note: additional bytes may be inserted before the signature. Use the e_lfanew field to find the actual location of the NT signature. */ - char nt_signature[4]; /* required NT signature, 0x4550. */ + char nt_signature[4]; /* Required NT signature, 0x4550. */ /* From standard header. */ char f_magic[2]; /* Magic number. */ @@ -263,9 +263,9 @@ struct external_PEI_filehdr #endif /* COFF_IMAGE_WITH_PE */ -/* 32-bit PE a.out header: */ +/* 32-bit PE a.out header: */ -typedef struct +typedef struct { AOUTHDR standard; @@ -301,7 +301,7 @@ typedef struct /* Like PEAOUTHDR, except that the "standard" member has no BaseOfData (aka data_start) member and that some of the members are 8 instead of just 4 bytes long. */ -typedef struct +typedef struct { #ifdef AOUTHDRSZ64 AOUTHDR64 standard; @@ -339,7 +339,7 @@ typedef struct #else #define PEPAOUTSZ 240 #endif - + #undef E_FILNMLEN #define E_FILNMLEN 18 /* # characters in a file name. */ @@ -359,6 +359,85 @@ typedef struct #define IMAGE_WEAK_EXTERN_SEARCH_LIBRARY 2 #define IMAGE_WEAK_EXTERN_SEARCH_ALIAS 3 +/* Bigobj header. */ +struct external_ANON_OBJECT_HEADER_BIGOBJ +{ + /* ANON_OBJECT_HEADER_V2 header. */ + char Sig1[2]; + char Sig2[2]; + char Version[2]; + char Machine[2]; + char TimeDateStamp[4]; + char ClassID[16]; + char SizeOfData[4]; + char Flags[4]; + char MetaDataSize[4]; + char MetaDataOffset[4]; + + /* BIGOBJ specific. */ + char NumberOfSections[4]; + char PointerToSymbolTable[4]; + char NumberOfSymbols[4]; +}; + +#define FILHSZ_BIGOBJ (14 * 4) + +struct external_SYMBOL_EX +{ + union + { + char e_name[E_SYMNMLEN]; + + struct + { + char e_zeroes[4]; + char e_offset[4]; + } e; + } e; + + char e_value[4]; + char e_scnum[4]; + char e_type[2]; + char e_sclass[1]; + char e_numaux[1]; +} ATTRIBUTE_PACKED ; + +#define SYMENT_BIGOBJ struct external_SYMBOL_EX +#define SYMESZ_BIGOBJ 20 + +#define FILNMLEN_BIGOBJ 20 + +union external_AUX_SYMBOL_EX +{ + struct + { + char WeakDefaultSymIndex[4]; + char WeakSearchType[4]; + char rgbReserved[12]; + } Sym; + + struct + { + char Name[FILNMLEN_BIGOBJ]; + } File; + + struct + { + char Length[4]; /* Section length. */ + char NumberOfRelocations[2];/* # relocation entries. */ + char NumberOfLinenumbers[2];/* # line numbers. */ + char Checksum[4]; /* Section COMDAT checksum. */ + char Number[2]; /* COMDAT associated section index. */ + char Selection[1]; /* COMDAT selection number. */ + char bReserved[1]; + char HighNumber[2]; /* High bits of COMDAT associated sec. */ + char rgbReserved[2]; + } Section; +} ATTRIBUTE_PACKED; + +#define AUXENT_BIGOBJ union external_AUX_SYMBOL_EX +#define AUXESZ_BIGOBJ 20 + /* .pdata/.xdata defines and structures for x64 PE+ for exception handling. */ /* .pdata in exception directory. */ @@ -506,4 +585,42 @@ struct external_pex64_scope_entry (PEX64_OFFSET_TO_SCOPE_COUNT(COUNTOFUNWINDCODES) + \ PEX64_SCOPE_ENTRY_SIZE * (IDX)) +/* Extra structure used in debug directory. */ +struct external_IMAGE_DEBUG_DIRECTORY +{ + char Characteristics[4]; + char TimeDateStamp[4]; + char MajorVersion[2]; + char MinorVersion[2]; + char Type[4]; + char SizeOfData[4]; + char AddressOfRawData[4]; + char PointerToRawData[4]; +}; + +/* Extra structures used in codeview debug record. */ +/* This is not part of the PE specification. */ + +#define CVINFO_PDB70_CVSIGNATURE 0x53445352 // "RSDS" +#define CVINFO_PDB20_CVSIGNATURE 0x3031424e // "NB10" +#define CVINFO_CV50_CVSIGNATURE 0x3131424e // "NB11" +#define CVINFO_CV41_CVSIGNATURE 0x3930424e // âNB09" + +typedef struct _CV_INFO_PDB70 +{ + char CvSignature[4]; + char Signature[16]; + char Age[4]; + char PdbFileName[]; +} CV_INFO_PDB70; + +typedef struct _CV_INFO_PDB20 +{ + char CvHeader[4]; + char Offset[4]; + char Signature[4]; + char Age[4]; + char PdbFileName[]; +} CV_INFO_PDB20; + #endif /* _PE_H */ diff --git a/external/gpl3/gdb/dist/include/coff/powerpc.h b/external/gpl3/gdb/dist/include/coff/powerpc.h index eba473091fbd..cd4688b5e851 100644 --- a/external/gpl3/gdb/dist/include/coff/powerpc.h +++ b/external/gpl3/gdb/dist/include/coff/powerpc.h @@ -1,7 +1,7 @@ /* Basic coff information for the PowerPC Based on coff/rs6000.h, coff/i386.h and others. - Copyright 2001, 2010 Free Software Foundation, Inc. + Copyright (C) 2001-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/coff/rs6000.h b/external/gpl3/gdb/dist/include/coff/rs6000.h index 7972d338c67f..a06b4b1cda3f 100644 --- a/external/gpl3/gdb/dist/include/coff/rs6000.h +++ b/external/gpl3/gdb/dist/include/coff/rs6000.h @@ -1,5 +1,5 @@ /* IBM RS/6000 "XCOFF" file definitions for BFD. - Copyright (C) 1990, 1991, 2001, 2010 Free Software Foundation, Inc. + Copyright (C) 1990-2015 Free Software Foundation, Inc. Written by Mimi Phuong-Thao Vo of IBM and John Gilmore of Cygnus Support. diff --git a/external/gpl3/gdb/dist/include/coff/rs6k64.h b/external/gpl3/gdb/dist/include/coff/rs6k64.h index 453198a563e1..7487dbba621b 100644 --- a/external/gpl3/gdb/dist/include/coff/rs6k64.h +++ b/external/gpl3/gdb/dist/include/coff/rs6k64.h @@ -1,5 +1,5 @@ /* IBM RS/6000 "XCOFF64" file definitions for BFD. - Copyright (C) 2000, 2001, 2002, 2010 Free Software Foundation, Inc. + Copyright (C) 2000-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/coff/sh.h b/external/gpl3/gdb/dist/include/coff/sh.h index bf131046961c..7771ff22aca8 100644 --- a/external/gpl3/gdb/dist/include/coff/sh.h +++ b/external/gpl3/gdb/dist/include/coff/sh.h @@ -1,6 +1,6 @@ /* coff information for Renesas SH - Copyright 2000, 2003, 2010 Free Software Foundation, Inc. + Copyright (C) 2000-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/coff/sparc.h b/external/gpl3/gdb/dist/include/coff/sparc.h index fa94c5f795ac..cf1dca676adb 100644 --- a/external/gpl3/gdb/dist/include/coff/sparc.h +++ b/external/gpl3/gdb/dist/include/coff/sparc.h @@ -1,6 +1,6 @@ /* coff information for Sparc. - Copyright 2001, 2010 Free Software Foundation, Inc. + Copyright (C) 2001-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/coff/ti.h b/external/gpl3/gdb/dist/include/coff/ti.h index d54b2ed19185..41ffd1a5131a 100644 --- a/external/gpl3/gdb/dist/include/coff/ti.h +++ b/external/gpl3/gdb/dist/include/coff/ti.h @@ -2,8 +2,7 @@ customized in a target-specific file, and then this file included (see tic54x.h for an example). - Copyright 2000, 2001, 2002, 2003, 2005, 2008, 2009, 2010 - Free Software Foundation, Inc. + Copyright (C) 2000-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/coff/tic30.h b/external/gpl3/gdb/dist/include/coff/tic30.h index 4f7776a430fd..41c22ed1006a 100644 --- a/external/gpl3/gdb/dist/include/coff/tic30.h +++ b/external/gpl3/gdb/dist/include/coff/tic30.h @@ -1,6 +1,6 @@ /* coff information for Texas Instruments TMS320C3X - Copyright 2001, 2010 Free Software Foundation, Inc. + Copyright (C) 2001-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/coff/tic4x.h b/external/gpl3/gdb/dist/include/coff/tic4x.h index 1eb3e26bfc11..a0df0fa25629 100644 --- a/external/gpl3/gdb/dist/include/coff/tic4x.h +++ b/external/gpl3/gdb/dist/include/coff/tic4x.h @@ -1,7 +1,7 @@ /* TI COFF information for Texas Instruments TMS320C4X/C3X. This file customizes the settings in coff/ti.h. - Copyright 2002, 2003, 2010 Free Software Foundation, Inc. + Copyright (C) 2002-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/coff/tic54x.h b/external/gpl3/gdb/dist/include/coff/tic54x.h index c61f1f20d0dc..9703f8d93a10 100644 --- a/external/gpl3/gdb/dist/include/coff/tic54x.h +++ b/external/gpl3/gdb/dist/include/coff/tic54x.h @@ -1,7 +1,7 @@ /* TI COFF information for Texas Instruments TMS320C54X. This file customizes the settings in coff/ti.h. - Copyright 2000, 2001, 2010 Free Software Foundation, Inc. + Copyright (C) 2000-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/coff/tic80.h b/external/gpl3/gdb/dist/include/coff/tic80.h index 44f873ef32d1..c0e0add54802 100644 --- a/external/gpl3/gdb/dist/include/coff/tic80.h +++ b/external/gpl3/gdb/dist/include/coff/tic80.h @@ -1,6 +1,6 @@ /* coff information for TI TMS320C80 (MVP) - Copyright 2001, 2010 Free Software Foundation, Inc. + Copyright (C) 2001-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/coff/w65.h b/external/gpl3/gdb/dist/include/coff/w65.h index 31d9609300c6..ba33866acb65 100644 --- a/external/gpl3/gdb/dist/include/coff/w65.h +++ b/external/gpl3/gdb/dist/include/coff/w65.h @@ -1,6 +1,6 @@ /* coff information for WDC 65816 - Copyright 2001, 2010 Free Software Foundation, Inc. + Copyright (C) 2001-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/coff/we32k.h b/external/gpl3/gdb/dist/include/coff/we32k.h index 3787dd27b25c..bc5c5497bf06 100644 --- a/external/gpl3/gdb/dist/include/coff/we32k.h +++ b/external/gpl3/gdb/dist/include/coff/we32k.h @@ -1,6 +1,6 @@ /* coff information for we32k - Copyright 2001, 2010 Free Software Foundation, Inc. + Copyright (C) 2001-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/coff/x86_64.h b/external/gpl3/gdb/dist/include/coff/x86_64.h index fcd44c8e89e2..4c8ee317e3fa 100644 --- a/external/gpl3/gdb/dist/include/coff/x86_64.h +++ b/external/gpl3/gdb/dist/include/coff/x86_64.h @@ -1,5 +1,5 @@ /* COFF information for AMD 64. - Copyright 2006, 2009, 2010 Free Software Foundation, Inc. + Copyright (C) 2006-2015 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/coff/xcoff.h b/external/gpl3/gdb/dist/include/coff/xcoff.h index 67502cda7c1f..1f7959ed786c 100644 --- a/external/gpl3/gdb/dist/include/coff/xcoff.h +++ b/external/gpl3/gdb/dist/include/coff/xcoff.h @@ -1,7 +1,6 @@ /* Internal format of XCOFF object file data structures for BFD. - Copyright 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2005, - 2009, 2010 Free Software Foundation, Inc. + Copyright (C) 1995-2015 Free Software Foundation, Inc. Written by Ian Lance Taylor , Cygnus Support. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/coff/z80.h b/external/gpl3/gdb/dist/include/coff/z80.h index 712af054139c..d0d95862b415 100644 --- a/external/gpl3/gdb/dist/include/coff/z80.h +++ b/external/gpl3/gdb/dist/include/coff/z80.h @@ -1,5 +1,5 @@ /* coff information for Zilog Z80 - Copyright 2005, 2010 Free Software Foundation, Inc. + Copyright (C) 2005-2015 Free Software Foundation, Inc. Contributed by Arnold Metselaar This program is free software; you can redistribute it and/or modify diff --git a/external/gpl3/gdb/dist/include/coff/z8k.h b/external/gpl3/gdb/dist/include/coff/z8k.h index 5eef86d4fc2e..24b0c22c327a 100644 --- a/external/gpl3/gdb/dist/include/coff/z8k.h +++ b/external/gpl3/gdb/dist/include/coff/z8k.h @@ -1,6 +1,6 @@ /* coff information for Zilog Z800N - Copyright 2001, 2010 Free Software Foundation, Inc. + Copyright (C) 2001-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/demangle.h b/external/gpl3/gdb/dist/include/demangle.h index bbad71bd8c74..9e61d3c9642e 100644 --- a/external/gpl3/gdb/dist/include/demangle.h +++ b/external/gpl3/gdb/dist/include/demangle.h @@ -1,6 +1,5 @@ /* Defs for interface to demanglers. - Copyright 1992, 1993, 1994, 1995, 1996, 1997, 1998, 2000, 2001, 2002, - 2003, 2004, 2005, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. + Copyright (C) 1992-2015 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU Library General Public License @@ -63,9 +62,10 @@ extern "C" { #define DMGL_EDG (1 << 13) #define DMGL_GNU_V3 (1 << 14) #define DMGL_GNAT (1 << 15) +#define DMGL_DLANG (1 << 16) /* If none of these are set, use 'current_demangling_style' as the default. */ -#define DMGL_STYLE_MASK (DMGL_AUTO|DMGL_GNU|DMGL_LUCID|DMGL_ARM|DMGL_HP|DMGL_EDG|DMGL_GNU_V3|DMGL_JAVA|DMGL_GNAT) +#define DMGL_STYLE_MASK (DMGL_AUTO|DMGL_GNU|DMGL_LUCID|DMGL_ARM|DMGL_HP|DMGL_EDG|DMGL_GNU_V3|DMGL_JAVA|DMGL_GNAT|DMGL_DLANG) /* Enumeration of possible demangling styles. @@ -87,7 +87,8 @@ extern enum demangling_styles edg_demangling = DMGL_EDG, gnu_v3_demangling = DMGL_GNU_V3, java_demangling = DMGL_JAVA, - gnat_demangling = DMGL_GNAT + gnat_demangling = DMGL_GNAT, + dlang_demangling = DMGL_DLANG } current_demangling_style; /* Define string names for the various demangling styles. */ @@ -102,6 +103,7 @@ extern enum demangling_styles #define GNU_V3_DEMANGLING_STYLE_STRING "gnu-v3" #define JAVA_DEMANGLING_STYLE_STRING "java" #define GNAT_DEMANGLING_STYLE_STRING "gnat" +#define DLANG_DEMANGLING_STYLE_STRING "dlang" /* Some macros to test what demangling style is active. */ @@ -115,6 +117,7 @@ extern enum demangling_styles #define GNU_V3_DEMANGLING (((int) CURRENT_DEMANGLING_STYLE) & DMGL_GNU_V3) #define JAVA_DEMANGLING (((int) CURRENT_DEMANGLING_STYLE) & DMGL_JAVA) #define GNAT_DEMANGLING (((int) CURRENT_DEMANGLING_STYLE) & DMGL_GNAT) +#define DLANG_DEMANGLING (((int) CURRENT_DEMANGLING_STYLE) & DMGL_DLANG) /* Provide information about the available demangle styles. This code is pulled from gdb into libiberty because it is useful to binutils also. */ @@ -169,6 +172,9 @@ java_demangle_v3 (const char *mangled); char * ada_demangle (const char *mangled, int options); +extern char * +dlang_demangle (const char *mangled, int options); + enum gnu_v3_ctor_kinds { gnu_v3_complete_object_ctor = 1, gnu_v3_base_object_ctor, diff --git a/external/gpl3/gdb/dist/include/dis-asm.h b/external/gpl3/gdb/dist/include/dis-asm.h index 4afdc2a226f3..f9e9ee534053 100644 --- a/external/gpl3/gdb/dist/include/dis-asm.h +++ b/external/gpl3/gdb/dist/include/dis-asm.h @@ -1,6 +1,6 @@ /* Interface between the opcode library and its callers. - Copyright 1999-2013 Free Software Foundation, Inc. + Copyright (C) 1999-2015 Free Software Foundation, Inc. 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 @@ -226,7 +226,6 @@ extern int print_insn_bfin (bfd_vma, disassemble_info *); extern int print_insn_big_arm (bfd_vma, disassemble_info *); extern int print_insn_big_mips (bfd_vma, disassemble_info *); extern int print_insn_big_nios2 (bfd_vma, disassemble_info *); -extern int print_insn_big_or32 (bfd_vma, disassemble_info *); extern int print_insn_big_powerpc (bfd_vma, disassemble_info *); extern int print_insn_big_score (bfd_vma, disassemble_info *); extern int print_insn_cr16 (bfd_vma, disassemble_info *); @@ -254,7 +253,6 @@ extern int print_insn_iq2000 (bfd_vma, disassemble_info *); extern int print_insn_little_arm (bfd_vma, disassemble_info *); extern int print_insn_little_mips (bfd_vma, disassemble_info *); extern int print_insn_little_nios2 (bfd_vma, disassemble_info *); -extern int print_insn_little_or32 (bfd_vma, disassemble_info *); extern int print_insn_little_powerpc (bfd_vma, disassemble_info *); extern int print_insn_little_score (bfd_vma, disassemble_info *); extern int print_insn_lm32 (bfd_vma, disassemble_info *); @@ -278,7 +276,7 @@ extern int print_insn_msp430 (bfd_vma, disassemble_info *); extern int print_insn_mt (bfd_vma, disassemble_info *); extern int print_insn_nds32 (bfd_vma, disassemble_info *); extern int print_insn_ns32k (bfd_vma, disassemble_info *); -extern int print_insn_openrisc (bfd_vma, disassemble_info *); +extern int print_insn_or1k (bfd_vma, disassemble_info *); extern int print_insn_pdp11 (bfd_vma, disassemble_info *); extern int print_insn_pj (bfd_vma, disassemble_info *); extern int print_insn_rs6000 (bfd_vma, disassemble_info *); @@ -297,6 +295,7 @@ extern int print_insn_tilegx (bfd_vma, disassemble_info *); extern int print_insn_tilepro (bfd_vma, disassemble_info *); extern int print_insn_v850 (bfd_vma, disassemble_info *); extern int print_insn_vax (bfd_vma, disassemble_info *); +extern int print_insn_visium (bfd_vma, disassemble_info *); extern int print_insn_w65 (bfd_vma, disassemble_info *); extern int print_insn_xc16x (bfd_vma, disassemble_info *); extern int print_insn_xgate (bfd_vma, disassemble_info *); diff --git a/external/gpl3/gdb/dist/include/dwarf2.def b/external/gpl3/gdb/dist/include/dwarf2.def index 71a37b30c9f8..5da3ae0e4498 100644 --- a/external/gpl3/gdb/dist/include/dwarf2.def +++ b/external/gpl3/gdb/dist/include/dwarf2.def @@ -1,9 +1,7 @@ /* -*- c -*- Declarations and definitions of codes relating to the DWARF2 and DWARF3 symbolic debugging information formats. - Copyright (C) 1992, 1993, 1995, 1996, 1997, 1999, 2000, 2001, 2002, - 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 - Free Software Foundation, Inc. + Copyright (C) 1992-2015 Free Software Foundation, Inc. Written by Gary Funck (gary@intrepid.com) The Ada Joint Program Office (AJPO), Florida State University and Silicon Graphics Inc. @@ -383,6 +381,8 @@ DW_AT (DW_AT_GNU_all_call_sites, 0x2117) DW_AT (DW_AT_GNU_all_source_call_sites, 0x2118) /* Section offset into .debug_macro section. */ DW_AT (DW_AT_GNU_macros, 0x2119) +/* Attribute for C++ deleted special member functions (= delete;). */ +DW_AT (DW_AT_GNU_deleted, 0x211a) /* Extensions for Fission. See http://gcc.gnu.org/wiki/DebugFission. */ DW_AT (DW_AT_GNU_dwo_name, 0x2130) DW_AT (DW_AT_GNU_dwo_id, 0x2131) @@ -406,6 +406,20 @@ DW_AT (DW_AT_upc_threads_scaled, 0x3210) DW_AT (DW_AT_PGI_lbase, 0x3a00) DW_AT (DW_AT_PGI_soffset, 0x3a01) DW_AT (DW_AT_PGI_lstride, 0x3a02) +/* Apple extensions. */ +DW_AT (DW_AT_APPLE_optimized, 0x3fe1) +DW_AT (DW_AT_APPLE_flags, 0x3fe2) +DW_AT (DW_AT_APPLE_isa, 0x3fe3) +DW_AT (DW_AT_APPLE_block, 0x3fe4) +DW_AT (DW_AT_APPLE_major_runtime_vers, 0x3fe5) +DW_AT (DW_AT_APPLE_runtime_class, 0x3fe6) +DW_AT (DW_AT_APPLE_omit_frame_ptr, 0x3fe7) +DW_AT (DW_AT_APPLE_property_name, 0x3fe8) +DW_AT (DW_AT_APPLE_property_getter, 0x3fe9) +DW_AT (DW_AT_APPLE_property_setter, 0x3fea) +DW_AT (DW_AT_APPLE_property_attribute, 0x3feb) +DW_AT (DW_AT_APPLE_objc_complete_type, 0x3fec) +DW_AT (DW_AT_APPLE_property, 0x3fed) DW_END_AT DW_FIRST_OP (DW_OP_addr, 0x03) diff --git a/external/gpl3/gdb/dist/include/dwarf2.h b/external/gpl3/gdb/dist/include/dwarf2.h index 120e2c16b482..791ef566f994 100644 --- a/external/gpl3/gdb/dist/include/dwarf2.h +++ b/external/gpl3/gdb/dist/include/dwarf2.h @@ -1,8 +1,6 @@ /* Declarations and definitions of codes relating to the DWARF2 and DWARF3 symbolic debugging information formats. - Copyright (C) 1992, 1993, 1995, 1996, 1997, 1999, 2000, 2001, 2002, - 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 - Free Software Foundation, Inc. + Copyright (C) 1992-2015 Free Software Foundation, Inc. Written by Gary Funck (gary@intrepid.com) The Ada Joint Program Office (AJPO), Florida State University and Silicon Graphics Inc. @@ -309,6 +307,10 @@ enum dwarf_source_language /* DWARF 5. */ DW_LANG_Go = 0x0016, + DW_LANG_C_plus_plus_11 = 0x001a, /* dwarf5.20141029.pdf DRAFT */ + DW_LANG_C11 = 0x001d, + DW_LANG_C_plus_plus_14 = 0x0021, + DW_LANG_lo_user = 0x8000, /* Implementation-defined range start. */ DW_LANG_hi_user = 0xffff, /* Implementation-defined range start. */ diff --git a/external/gpl3/gdb/dist/include/dyn-string.h b/external/gpl3/gdb/dist/include/dyn-string.h index 2b147271e5f8..7c3684b7cf8a 100644 --- a/external/gpl3/gdb/dist/include/dyn-string.h +++ b/external/gpl3/gdb/dist/include/dyn-string.h @@ -1,6 +1,5 @@ /* An abstract string datatype. - Copyright (C) 1998, 1999, 2000, 2002, 2004, 2005, 2009 - Free Software Foundation, Inc. + Copyright (C) 1998-2015 Free Software Foundation, Inc. Contributed by Mark Mitchell (mark@markmitchell.com). This file is part of GCC. diff --git a/external/gpl3/gdb/dist/include/elf/ChangeLog b/external/gpl3/gdb/dist/include/elf/ChangeLog index 8910d42762f9..6eb7b8f23bf7 100644 --- a/external/gpl3/gdb/dist/include/elf/ChangeLog +++ b/external/gpl3/gdb/dist/include/elf/ChangeLog @@ -1,3 +1,115 @@ +2015-01-09 Anthony Green + + * common.h (EM_MOXIE): Redefine to official number. + (EM_MOXIE_OLD): Define (from old number). + +2015-01-01 Alan Modra + + Update year range in copyright notice of all files. + +2014-12-25 Thomas Preud'homme + + * arm.h: New AEABI_FP_number_model_* and AEABI_VFP_args_* enum values. + +2014-12-06 Eric Botcazou + + * common.h (EM_VISIUM): Define. + * visium.h: New file. + +2014-11-13 H.J. Lu + + * x86-64.h (R_X86_64_GOTPLT64): Mark it obsolete. + +2014-10-17 Jose E. Marchesi + + * sparc.h (ELF_SPARC_HWCAP2_VIS3B): Documentation improved. + +2014-10-09 Jose E. Marchesi + + * sparc.h (Tag_GNU_Sparc_HWCAPS2): New object attribute. + (ELF_SPARC_HWCAP2_FJATHPLUS): New HWCAP2 bitmask value. + (ELF_SPARC_HWCAP2_VIS3B): Likewise. + (ELF_SPARC_HWCAP2_ADP): Likewise. + (ELF_SPARC_HWCAP2_SPARC5): Likewise. + (ELF_SPARC_HWCAP2_MWAIT): Likewise. + (ELF_SPARC_HWCAP2_XMPMUL): Likewise. + (ELF_SPARC_HWCAP2_XMONT): Likewise. + (ELF_SPARC_HWCAP2_NSEC): Likewise. + (ELF_SPARC_HWCAP2_FJATHHPC): Likewise. + (ELF_SPARC_HWCAP2_FJDES): Likewise. + (ELF_SPARC_HWCAP2_FJAES): Likewise. + +2014-10-08 Will Newton + + * aarch64.h: Sync up relocations with ABI release 1.0. + +2014-09-16 Kuan-Lin Chen + + * nds32.h: Declare new relocations. + +2014-09-15 Andrew Bennett + Matthew Fortune + + * mips.h: Add relocs: R_MIPS_PC21_S2, R_MIPS_PC26_S2, R_MIPS_PC18_S3, + R_MIPS_PC19_S2, R_MIPS_PCHI16 and R_MIPS_PCLO16. + (E_MIPS_ARCH_32R6): New define. + (E_MIPS_ARCH_64R6): New define. + +2014-08-26 DJ Delorie + + * rl78.h (RL78_RELAXA_MASK): New. Relax types are enums, not bits + +2014-07-07 Barney Stratford + + * avr.h: Add R_AVR_PORT5 and R_AVR_PORT6. + +2014-07-01 Barney Stratford + Senthil Kumar Selvaraj + Pitchumani Sivanupandi + Soundararajan + + * avr.h (E_AVR_MACH_AVRTINY): Define avrtiny machine number. + (R_AVR_LDS_STS_16): Define 16 bit lds/sts reloc number. + * include/opcode/avr.h (AVR_ISA_TINY): Define avrtiny specific ISA. + (AVR_ISA_2xxxa): Define ISA without LPM. + (AVR_ISA_AVRTINY): Define avrtiny arch ISA. + Add doc for contraint used in 16 bit lds/sts. + Adjust ISA group for icall, ijmp, pop and push. + Add 16 bit lds/sts encoding and update 32 bit lds/sts constraints. + +2014-04-22 Christian Svensson + + * common.h: Remove openrisc and or32 support. Add support for or1k. + * or1k.h: New file. + * openrisc.h: Delete. + * or32.h: Delete. + +2014-03-05 Alan Modra + + Update copyright years. + +2014-03-05 Alan Modra + + * ppc64.h (R_PPC64_REL24_NOTOC, R_PPC64_ADDR64_LOCAL): Define. + +2014-02-06 Andrew Pinski + + * mips.h (E_MIPS_MACH_OCTEON3): New machine flag. + +2014-02-03 Sandra Loosemore + + * nios2.h (R_NIOS2_GOT_LO, R_NIOS2_GOT_HA): New. + (R_NIOS2_CALL_LO, R_NIOS2_CALL_HA): New. + (R_NIOS2_ILLEGAL): Adjust. + +2014-01-30 Sandra Loosemore + + * nios2.h (elf_nios2_reloc_type): Add R_NIOS2_CALL26_NOAT. + +2014-01-30 Ulrich Weigand + + * common.h (AT_HWCAP2): Define. + 2013-12-13 Kuan-Lin Chen Wei-Cheng Wang @@ -1922,7 +2034,7 @@ For older changes see ChangeLog-9103 -Copyright (C) 2004-2012 Free Software Foundation, Inc. +Copyright (C) 2004-2015 Free Software Foundation, Inc. Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright diff --git a/external/gpl3/gdb/dist/include/elf/aarch64.h b/external/gpl3/gdb/dist/include/elf/aarch64.h index 7dbab8ccf976..93a950f85d3e 100644 --- a/external/gpl3/gdb/dist/include/elf/aarch64.h +++ b/external/gpl3/gdb/dist/include/elf/aarch64.h @@ -1,6 +1,6 @@ /* AArch64 ELF support for BFD. - Copyright 2009, 2010, 2011, 2012 Free Software Foundation, Inc. + Copyright (C) 2009-2015 Free Software Foundation, Inc. Contributed by ARM Ltd. This file is part of GNU Binutils. @@ -269,20 +269,87 @@ RELOC_NUMBER (R_AARCH64_LDST32_ABS_LO12_NC, 285) /* LD/ST64: (S+A) & 0xff8 */ RELOC_NUMBER (R_AARCH64_LDST64_ABS_LO12_NC, 286) +/* Group relocations to create a 16, 32, 48, or 64 bit PC-relative + offset inline. */ + +RELOC_NUMBER (R_AARCH64_MOVW_PREL_G0, 287) +RELOC_NUMBER (R_AARCH64_MOVW_PREL_G0_NC, 288) +RELOC_NUMBER (R_AARCH64_MOVW_PREL_G1, 289) +RELOC_NUMBER (R_AARCH64_MOVW_PREL_G1_NC, 290) +RELOC_NUMBER (R_AARCH64_MOVW_PREL_G2, 291) +RELOC_NUMBER (R_AARCH64_MOVW_PREL_G2_NC, 292) +RELOC_NUMBER (R_AARCH64_MOVW_PREL_G3, 293) + /* LD/ST128: (S+A) & 0xff0 */ RELOC_NUMBER (R_AARCH64_LDST128_ABS_LO12_NC, 299) +/* Group relocations to create a 16, 32, 48, or 64 bit GOT-relative + offset inline. */ + +RELOC_NUMBER (R_AARCH64_MOVW_GOTOFF_G0, 300) +RELOC_NUMBER (R_AARCH64_MOVW_GOTOFF_G0_NC, 301) +RELOC_NUMBER (R_AARCH64_MOVW_GOTOFF_G1, 302) +RELOC_NUMBER (R_AARCH64_MOVW_GOTOFF_G1_NC, 303) +RELOC_NUMBER (R_AARCH64_MOVW_GOTOFF_G2, 304) +RELOC_NUMBER (R_AARCH64_MOVW_GOTOFF_G2_NC, 305) +RELOC_NUMBER (R_AARCH64_MOVW_GOTOFF_G3, 306) + +/* GOT-relative data relocations. */ + +RELOC_NUMBER (R_AARCH64_GOTREL64, 307) +RELOC_NUMBER (R_AARCH64_GOTREL32, 308) + +/* GOT-relative instruction relocations. */ + RELOC_NUMBER (R_AARCH64_GOT_LD_PREL19, 309) +RELOC_NUMBER (R_AARCH64_LD64_GOTOFF_LO15, 310) RELOC_NUMBER (R_AARCH64_ADR_GOT_PAGE, 311) RELOC_NUMBER (R_AARCH64_LD64_GOT_LO12_NC, 312) +RELOC_NUMBER (R_AARCH64_LD64_GOTPAGE_LO15, 313) +/* General Dynamic TLS relocations. */ + +RELOC_NUMBER (R_AARCH64_TLSGD_ADR_PREL21, 512) RELOC_NUMBER (R_AARCH64_TLSGD_ADR_PAGE21, 513) RELOC_NUMBER (R_AARCH64_TLSGD_ADD_LO12_NC, 514) +RELOC_NUMBER (R_AARCH64_TLSGD_MOVW_G1, 515) +RELOC_NUMBER (R_AARCH64_TLSGD_MOVW_G0_NC, 516) + +/* Local Dynamic TLS relocations. */ + +RELOC_NUMBER (R_AARCH64_TLSLD_ADR_PREL21, 517) +RELOC_NUMBER (R_AARCH64_TLSLD_ADR_PAGE21, 518) +RELOC_NUMBER (R_AARCH64_TLSLD_ADD_LO12_NC, 519) +RELOC_NUMBER (R_AARCH64_TLSLD_MOVW_G1, 520) +RELOC_NUMBER (R_AARCH64_TLSLD_MOVW_G0_NC, 521) +RELOC_NUMBER (R_AARCH64_TLSLD_LD_PREL19, 522) +RELOC_NUMBER (R_AARCH64_TLSLD_MOVW_DTPREL_G2, 523) +RELOC_NUMBER (R_AARCH64_TLSLD_MOVW_DTPREL_G1, 524) +RELOC_NUMBER (R_AARCH64_TLSLD_MOVW_DTPREL_G1_NC, 525) +RELOC_NUMBER (R_AARCH64_TLSLD_MOVW_DTPREL_G0, 526) +RELOC_NUMBER (R_AARCH64_TLSLD_MOVW_DTPREL_G0_NC, 527) +RELOC_NUMBER (R_AARCH64_TLSLD_ADD_DTPREL_HI12, 528) +RELOC_NUMBER (R_AARCH64_TLSLD_ADD_DTPREL_LO12, 529) +RELOC_NUMBER (R_AARCH64_TLSLD_ADD_DTPREL_LO12_NC, 530) +RELOC_NUMBER (R_AARCH64_TLSLD_LDST8_DTPREL_LO12, 531) +RELOC_NUMBER (R_AARCH64_TLSLD_LDST8_DTPREL_LO12_NC, 532) +RELOC_NUMBER (R_AARCH64_TLSLD_LDST16_DTPREL_LO12, 533) +RELOC_NUMBER (R_AARCH64_TLSLD_LDST16_DTPREL_LO12_NC, 534) +RELOC_NUMBER (R_AARCH64_TLSLD_LDST32_DTPREL_LO12, 535) +RELOC_NUMBER (R_AARCH64_TLSLD_LDST32_DTPREL_LO12_NC, 536) +RELOC_NUMBER (R_AARCH64_TLSLD_LDST64_DTPREL_LO12, 537) +RELOC_NUMBER (R_AARCH64_TLSLD_LDST64_DTPREL_LO12_NC, 538) + +/* Initial Exec TLS relocations. */ + RELOC_NUMBER (R_AARCH64_TLSIE_MOVW_GOTTPREL_G1, 539) RELOC_NUMBER (R_AARCH64_TLSIE_MOVW_GOTTPREL_G0_NC, 540) RELOC_NUMBER (R_AARCH64_TLSIE_ADR_GOTTPREL_PAGE21, 541) RELOC_NUMBER (R_AARCH64_TLSIE_LD64_GOTTPREL_LO12_NC, 542) RELOC_NUMBER (R_AARCH64_TLSIE_LD_GOTTPREL_PREL19, 543) + +/* Local Exec TLS relocations. */ + RELOC_NUMBER (R_AARCH64_TLSLE_MOVW_TPREL_G2, 544) RELOC_NUMBER (R_AARCH64_TLSLE_MOVW_TPREL_G1, 545) RELOC_NUMBER (R_AARCH64_TLSLE_MOVW_TPREL_G1_NC, 546) @@ -291,6 +358,16 @@ RELOC_NUMBER (R_AARCH64_TLSLE_MOVW_TPREL_G0_NC, 548) RELOC_NUMBER (R_AARCH64_TLSLE_ADD_TPREL_HI12, 549) RELOC_NUMBER (R_AARCH64_TLSLE_ADD_TPREL_LO12, 550) RELOC_NUMBER (R_AARCH64_TLSLE_ADD_TPREL_LO12_NC, 551) +RELOC_NUMBER (R_AARCH64_TLSLE_LDST8_TPREL_LO12, 552) +RELOC_NUMBER (R_AARCH64_TLSLE_LDST8_TPREL_LO12_NC, 553) +RELOC_NUMBER (R_AARCH64_TLSLE_LDST16_TPREL_LO12, 554) +RELOC_NUMBER (R_AARCH64_TLSLE_LDST16_TPREL_LO12_NC, 555) +RELOC_NUMBER (R_AARCH64_TLSLE_LDST32_TPREL_LO12, 556) +RELOC_NUMBER (R_AARCH64_TLSLE_LDST32_TPREL_LO12_NC, 557) +RELOC_NUMBER (R_AARCH64_TLSLE_LDST64_TPREL_LO12, 558) +RELOC_NUMBER (R_AARCH64_TLSLE_LDST64_TPREL_LO12_NC, 559) + +/* TLS descriptor relocations. */ RELOC_NUMBER (R_AARCH64_TLSDESC_LD_PREL19, 560) RELOC_NUMBER (R_AARCH64_TLSDESC_ADR_PREL21, 561) @@ -303,6 +380,11 @@ RELOC_NUMBER (R_AARCH64_TLSDESC_LDR, 567) RELOC_NUMBER (R_AARCH64_TLSDESC_ADD, 568) RELOC_NUMBER (R_AARCH64_TLSDESC_CALL, 569) +RELOC_NUMBER (R_AARCH64_TLSLE_LDST128_TPREL_LO12, 570) +RELOC_NUMBER (R_AARCH64_TLSLE_LDST128_TPREL_LO12_NC, 571) +RELOC_NUMBER (R_AARCH64_TLSLD_LDST128_DTPREL_LO12, 572) +RELOC_NUMBER (R_AARCH64_TLSLD_LDST128_DTPREL_LO12_NC, 573) + /* Dynamic relocations */ /* Copy symbol at runtime. */ diff --git a/external/gpl3/gdb/dist/include/elf/alpha.h b/external/gpl3/gdb/dist/include/elf/alpha.h index f4fe566b0818..66229b4a1a5d 100644 --- a/external/gpl3/gdb/dist/include/elf/alpha.h +++ b/external/gpl3/gdb/dist/include/elf/alpha.h @@ -1,5 +1,5 @@ /* ALPHA ELF support for BFD. - Copyright 1996, 1998, 2000, 2001, 2002, 2010 Free Software Foundation, Inc. + Copyright (C) 1996-2015 Free Software Foundation, Inc. By Eric Youngdale, . No processor supplement available for this platform. diff --git a/external/gpl3/gdb/dist/include/elf/arc.h b/external/gpl3/gdb/dist/include/elf/arc.h index a07ed2e3ab5b..62398e1e8067 100644 --- a/external/gpl3/gdb/dist/include/elf/arc.h +++ b/external/gpl3/gdb/dist/include/elf/arc.h @@ -1,5 +1,5 @@ /* ARC ELF support for BFD. - Copyright 1995, 1997, 1998, 2000, 2001, 2010 Free Software Foundation, Inc. + Copyright (C) 1995-2015 Free Software Foundation, Inc. Contributed by Doug Evans, (dje@cygnus.com) This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/elf/arm.h b/external/gpl3/gdb/dist/include/elf/arm.h index d79930380ed1..7c025c1d43eb 100644 --- a/external/gpl3/gdb/dist/include/elf/arm.h +++ b/external/gpl3/gdb/dist/include/elf/arm.h @@ -1,6 +1,5 @@ /* ARM ELF support for BFD. - Copyright 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2009, 2010 - Free Software Foundation, Inc. + Copyright (C) 1998-2015 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. @@ -320,6 +319,23 @@ enum Tag_VFP_HP_extension = Tag_FP_HP_extension }; +/* Values for Tag_ABI_FP_number_model. */ +enum +{ + AEABI_FP_number_model_none = 0, + AEABI_FP_number_model_ieee754_number = 1, + AEABI_FP_number_model_rtabi = 2, + AEABI_FP_number_model_ieee754_all = 3 +}; + +/* Values for Tag_ABI_VFP_args. */ +enum +{ + AEABI_VFP_args_base = 0, + AEABI_VFP_args_vfp = 1, + AEABI_VFP_args_toolchain = 2, + AEABI_VFP_args_compatible = 3 +}; #endif /* The name of the note section used to identify arm variants. */ diff --git a/external/gpl3/gdb/dist/include/elf/avr.h b/external/gpl3/gdb/dist/include/elf/avr.h index b45d902d23a1..115296da404d 100644 --- a/external/gpl3/gdb/dist/include/elf/avr.h +++ b/external/gpl3/gdb/dist/include/elf/avr.h @@ -1,6 +1,5 @@ /* AVR ELF support for BFD. - Copyright 1999, 2000, 2004, 2006, 2010, 2012 - Free Software Foundation, Inc. + Copyright (C) 1999-2015 Free Software Foundation, Inc. Contributed by Denis Chertykov This file is part of BFD, the Binary File Descriptor library. @@ -41,13 +40,14 @@ #define E_AVR_MACH_AVR5 5 #define E_AVR_MACH_AVR51 51 #define E_AVR_MACH_AVR6 6 -#define E_AVR_MACH_XMEGA1 101 -#define E_AVR_MACH_XMEGA2 102 -#define E_AVR_MACH_XMEGA3 103 -#define E_AVR_MACH_XMEGA4 104 -#define E_AVR_MACH_XMEGA5 105 -#define E_AVR_MACH_XMEGA6 106 -#define E_AVR_MACH_XMEGA7 107 +#define E_AVR_MACH_AVRTINY 100 +#define E_AVR_MACH_XMEGA1 101 +#define E_AVR_MACH_XMEGA2 102 +#define E_AVR_MACH_XMEGA3 103 +#define E_AVR_MACH_XMEGA4 104 +#define E_AVR_MACH_XMEGA5 105 +#define E_AVR_MACH_XMEGA6 106 +#define E_AVR_MACH_XMEGA7 107 /* Relocations. */ START_RELOC_NUMBERS (elf_avr_reloc_type) @@ -81,6 +81,12 @@ START_RELOC_NUMBERS (elf_avr_reloc_type) RELOC_NUMBER (R_AVR_8_LO8, 27) RELOC_NUMBER (R_AVR_8_HI8, 28) RELOC_NUMBER (R_AVR_8_HLO8, 29) + RELOC_NUMBER (R_AVR_DIFF8, 30) + RELOC_NUMBER (R_AVR_DIFF16, 31) + RELOC_NUMBER (R_AVR_DIFF32, 32) + RELOC_NUMBER (R_AVR_LDS_STS_16, 33) + RELOC_NUMBER (R_AVR_PORT6, 34) + RELOC_NUMBER (R_AVR_PORT5, 35) END_RELOC_NUMBERS (R_AVR_max) #endif /* _ELF_AVR_H */ diff --git a/external/gpl3/gdb/dist/include/elf/bfin.h b/external/gpl3/gdb/dist/include/elf/bfin.h index 8d92906aab38..e67736a2a02f 100644 --- a/external/gpl3/gdb/dist/include/elf/bfin.h +++ b/external/gpl3/gdb/dist/include/elf/bfin.h @@ -1,5 +1,5 @@ /* Blackfin ELF support for BFD. - Copyright (C) 2005, 2006, 2009, 2010 Free Software Foundation, Inc. + Copyright (C) 2005-2015 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/elf/common.h b/external/gpl3/gdb/dist/include/elf/common.h index cd3bcdd2b2cc..f584e34f7a1c 100644 --- a/external/gpl3/gdb/dist/include/elf/common.h +++ b/external/gpl3/gdb/dist/include/elf/common.h @@ -1,5 +1,5 @@ /* ELF support for BFD. - Copyright 1991-2013 Free Software Foundation, Inc. + Copyright (C) 1991-2015 Free Software Foundation, Inc. Written by Fred Fish @ Cygnus Support, from information published in "UNIX System V Release 4, Programmers Guide: ANSI C and @@ -192,7 +192,7 @@ #define EM_MN10300 89 /* Matsushita MN10300 */ #define EM_MN10200 90 /* Matsushita MN10200 */ #define EM_PJ 91 /* picoJava */ -#define EM_OPENRISC 92 /* OpenRISC 32-bit embedded processor */ +#define EM_OR1K 92 /* OpenRISC 1000 32-bit embedded processor */ #define EM_ARC_A5 93 /* ARC Cores Tangent-A5 */ #define EM_XTENSA 94 /* Tensilica Xtensa Architecture */ #define EM_VIDEOCORE 95 /* Alphamosaic VideoCore processor */ @@ -301,6 +301,8 @@ #define EM_INTEL207 207 /* Reserved by Intel */ #define EM_INTEL208 208 /* Reserved by Intel */ #define EM_INTEL209 209 /* Reserved by Intel */ +#define EM_VISIUM 221 /* Controls and Data Services VISIUMcore processor */ +#define EM_MOXIE 223 /* Moxie processor family */ /* If it is necessary to assign new unofficial EM_* values, please pick large random numbers (0x8523, 0xa7f2, etc.) to minimize the chances of collision @@ -339,9 +341,6 @@ /* FR30 magic number - no EABI available. */ #define EM_CYGNUS_FR30 0x3330 -/* OpenRISC magic number. Written in the absense of an ABI. */ -#define EM_OPENRISC_OLD 0x3426 - /* DLX magic number. Written in the absense of an ABI. */ #define EM_DLX 0x5aa5 @@ -360,9 +359,6 @@ /* Ubicom IP2xxx; Written in the absense of an ABI. */ #define EM_IP2K_OLD 0x8217 -/* (Deprecated) Temporary number for the OpenRISC processor. */ -#define EM_OR32 0x8472 - /* Cygnus PowerPC ELF backend. Written in the absence of an ABI. */ #define EM_CYGNUS_POWERPC 0x9025 @@ -399,7 +395,8 @@ #define EM_CYGNUS_MEP 0xF00D /* Toshiba MeP */ -#define EM_MOXIE 0xFEED /* Moxie */ +/* Old, unofficial value for Moxie. */ +#define EM_MOXIE_OLD 0xFEED /* Old Sunplus S+core7 backend magic number. Written in the absence of an ABI. */ #define EM_SCORE_OLD 95 @@ -408,6 +405,9 @@ #define EM_ADAPTEVA_EPIPHANY 0x1223 /* Adapteva's Epiphany architecture. */ +/* Old constant that might be in use by some software. */ +#define EM_OPENRISC EM_OR1K + /* See the above comment before you add a new EM_* value here. */ /* Values for e_version. */ @@ -959,6 +959,7 @@ #define AT_BASE_PLATFORM 24 /* String identifying real platform, may differ from AT_PLATFORM. */ #define AT_RANDOM 25 /* Address of 16 random bytes. */ +#define AT_HWCAP2 26 /* Extension of AT_HWCAP. */ #define AT_EXECFN 31 /* Filename of executable. */ /* Pointer to the global system page used for system calls and other nice things. */ diff --git a/external/gpl3/gdb/dist/include/elf/cr16.h b/external/gpl3/gdb/dist/include/elf/cr16.h index 3278474865ff..79b5ea42870c 100644 --- a/external/gpl3/gdb/dist/include/elf/cr16.h +++ b/external/gpl3/gdb/dist/include/elf/cr16.h @@ -1,5 +1,5 @@ /* CR16 ELF support for BFD. - Copyright 2007, 2010 Free Software Foundation, Inc. + Copyright (C) 2007-2015 Free Software Foundation, Inc. Contributed by M R Swami Reddy. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/elf/cr16c.h b/external/gpl3/gdb/dist/include/elf/cr16c.h index dbefb0ab615b..69cacd4b2907 100644 --- a/external/gpl3/gdb/dist/include/elf/cr16c.h +++ b/external/gpl3/gdb/dist/include/elf/cr16c.h @@ -1,5 +1,5 @@ /* CR16C ELF support for BFD. - Copyright 2004, 2008, 2010 Free Software Foundation, Inc. + Copyright (C) 2004-2015 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/elf/cris.h b/external/gpl3/gdb/dist/include/elf/cris.h index 5889a90d0812..8bb2e53e6a9a 100644 --- a/external/gpl3/gdb/dist/include/elf/cris.h +++ b/external/gpl3/gdb/dist/include/elf/cris.h @@ -1,5 +1,5 @@ /* CRIS ELF support for BFD. - Copyright 2000, 2001, 2004, 2010 Free Software Foundation, Inc. + Copyright (C) 2000-2015 Free Software Foundation, Inc. Contributed by Axis Communications AB, Lund, Sweden. Written by Hans-Peter Nilsson. diff --git a/external/gpl3/gdb/dist/include/elf/crx.h b/external/gpl3/gdb/dist/include/elf/crx.h index 38428f297cee..06dd0ab26e92 100644 --- a/external/gpl3/gdb/dist/include/elf/crx.h +++ b/external/gpl3/gdb/dist/include/elf/crx.h @@ -1,5 +1,5 @@ /* CRX ELF support for BFD. - Copyright 2004, 2010 Free Software Foundation, Inc. + Copyright (C) 2004-2015 Free Software Foundation, Inc. Contributed by Tomer Levi, NSC, Israel. Originally written for GAS 2.12 by Tomer Levi, NSC, Israel. Updates, BFDizing, GNUifying and ELF support by Tomer Levi. diff --git a/external/gpl3/gdb/dist/include/elf/d10v.h b/external/gpl3/gdb/dist/include/elf/d10v.h index 5850b3740ad8..ebf54a7a3fc3 100644 --- a/external/gpl3/gdb/dist/include/elf/d10v.h +++ b/external/gpl3/gdb/dist/include/elf/d10v.h @@ -1,5 +1,5 @@ /* d10v ELF support for BFD. - Copyright 1998, 2000, 2010 Free Software Foundation, Inc. + Copyright (C) 1998-2015 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/elf/d30v.h b/external/gpl3/gdb/dist/include/elf/d30v.h index 8174a40e0a8b..7c5232616d89 100644 --- a/external/gpl3/gdb/dist/include/elf/d30v.h +++ b/external/gpl3/gdb/dist/include/elf/d30v.h @@ -1,5 +1,5 @@ /* d30v ELF support for BFD. - Copyright 1998, 2000, 2010 Free Software Foundation, Inc. + Copyright (C) 1998-2015 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/elf/dlx.h b/external/gpl3/gdb/dist/include/elf/dlx.h index 7d61633c2b96..8e63c884346e 100644 --- a/external/gpl3/gdb/dist/include/elf/dlx.h +++ b/external/gpl3/gdb/dist/include/elf/dlx.h @@ -1,5 +1,5 @@ /* DLX support for BFD. - Copyright 2002, 2010 Free Software Foundation, Inc. + Copyright (C) 2002-2015 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/elf/dwarf.h b/external/gpl3/gdb/dist/include/elf/dwarf.h index c2e6a67e866d..fa25be2d26bb 100644 --- a/external/gpl3/gdb/dist/include/elf/dwarf.h +++ b/external/gpl3/gdb/dist/include/elf/dwarf.h @@ -3,7 +3,7 @@ Written by Ron Guilmette (rfg@netcom.com) - Copyright 1992, 1993, 1995, 1999, 2005, 2010 Free Software Foundation, Inc. + Copyright (C) 1992-2015 Free Software Foundation, Inc. This file is part of both GCC and the BFD library. diff --git a/external/gpl3/gdb/dist/include/elf/epiphany.h b/external/gpl3/gdb/dist/include/elf/epiphany.h index bb2dcffee4d2..ebeb5c489622 100755 --- a/external/gpl3/gdb/dist/include/elf/epiphany.h +++ b/external/gpl3/gdb/dist/include/elf/epiphany.h @@ -1,5 +1,5 @@ /* Adapteva EPIPHANY ELF support for BFD. - Copyright (C) 2009, 2011 Free Software Foundation, Inc. + Copyright (C) 2009-2015 Free Software Foundation, Inc. Contributed by Embecosm on behalf of Adapteva, Inc. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/elf/external.h b/external/gpl3/gdb/dist/include/elf/external.h index ef7724e94bc5..cd93c3cfddbd 100644 --- a/external/gpl3/gdb/dist/include/elf/external.h +++ b/external/gpl3/gdb/dist/include/elf/external.h @@ -1,6 +1,5 @@ /* ELF support for BFD. - Copyright 1991, 1992, 1993, 1995, 1997, 1998, 1999, 2001, 2003, 2005, - 2008, 2010 Free Software Foundation, Inc. + Copyright (C) 1991-2015 Free Software Foundation, Inc. Written by Fred Fish @ Cygnus Support, from information published in "UNIX System V Release 4, Programmers Guide: ANSI C and diff --git a/external/gpl3/gdb/dist/include/elf/fr30.h b/external/gpl3/gdb/dist/include/elf/fr30.h index 918ac977f868..ec5ea1e53523 100644 --- a/external/gpl3/gdb/dist/include/elf/fr30.h +++ b/external/gpl3/gdb/dist/include/elf/fr30.h @@ -1,5 +1,5 @@ /* FR30 ELF support for BFD. - Copyright 1998, 1999, 2000, 2010 Free Software Foundation, Inc. + Copyright (C) 1998-2015 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/elf/frv.h b/external/gpl3/gdb/dist/include/elf/frv.h index b79e51d0653a..fe8c2be06ece 100644 --- a/external/gpl3/gdb/dist/include/elf/frv.h +++ b/external/gpl3/gdb/dist/include/elf/frv.h @@ -1,5 +1,5 @@ /* FRV ELF support for BFD. - Copyright (C) 2002, 2003, 2004, 2005, 2010 Free Software Foundation, Inc. + Copyright (C) 2002-2015 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/elf/h8.h b/external/gpl3/gdb/dist/include/elf/h8.h index 2a3d905ebec2..3ad614224750 100644 --- a/external/gpl3/gdb/dist/include/elf/h8.h +++ b/external/gpl3/gdb/dist/include/elf/h8.h @@ -1,5 +1,5 @@ /* H8300/h8500 ELF support for BFD. - Copyright 2001-2013 Free Software Foundation, Inc. + Copyright (C) 2001-2015 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/elf/hppa.h b/external/gpl3/gdb/dist/include/elf/hppa.h index 8d3ea45f41f5..c2ba41ea7bf7 100644 --- a/external/gpl3/gdb/dist/include/elf/hppa.h +++ b/external/gpl3/gdb/dist/include/elf/hppa.h @@ -1,6 +1,5 @@ /* HPPA ELF support for BFD. - Copyright 1993, 1994, 1995, 1998, 1999, 2000, 2005, 2006, 2008, 2010 - Free Software Foundation, Inc. + Copyright (C) 1993-2015 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/elf/i370.h b/external/gpl3/gdb/dist/include/elf/i370.h index 7b451ff9db21..c38638892a8f 100644 --- a/external/gpl3/gdb/dist/include/elf/i370.h +++ b/external/gpl3/gdb/dist/include/elf/i370.h @@ -1,5 +1,5 @@ /* i370 ELF support for BFD. - Copyright 2000, 2002, 2010 Free Software Foundation, Inc. + Copyright (C) 2000-2015 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/elf/i386.h b/external/gpl3/gdb/dist/include/elf/i386.h index c4750925fad6..08c94556a300 100644 --- a/external/gpl3/gdb/dist/include/elf/i386.h +++ b/external/gpl3/gdb/dist/include/elf/i386.h @@ -1,6 +1,5 @@ /* ix86 ELF support for BFD. - Copyright 1998, 1999, 2000, 2002, 2004, 2005, 2006, 2009, 2010 - Free Software Foundation, Inc. + Copyright (C) 1998-2015 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/elf/i860.h b/external/gpl3/gdb/dist/include/elf/i860.h index 834c77660aa4..83971754a928 100644 --- a/external/gpl3/gdb/dist/include/elf/i860.h +++ b/external/gpl3/gdb/dist/include/elf/i860.h @@ -1,5 +1,5 @@ /* i860 ELF support for BFD. - Copyright 2000, 2010 Free Software Foundation, Inc. + Copyright (C) 2000-2015 Free Software Foundation, Inc. Contributed by Jason Eckhardt . diff --git a/external/gpl3/gdb/dist/include/elf/i960.h b/external/gpl3/gdb/dist/include/elf/i960.h index c319b3226a36..e65653bf3e38 100644 --- a/external/gpl3/gdb/dist/include/elf/i960.h +++ b/external/gpl3/gdb/dist/include/elf/i960.h @@ -1,5 +1,5 @@ /* Intel 960 ELF support for BFD. - Copyright 1999, 2000, 2010 Free Software Foundation, Inc. + Copyright (C) 1999-2015 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/elf/ia64.h b/external/gpl3/gdb/dist/include/elf/ia64.h index 7f2453d0eaa2..7db3272aa8eb 100644 --- a/external/gpl3/gdb/dist/include/elf/ia64.h +++ b/external/gpl3/gdb/dist/include/elf/ia64.h @@ -1,6 +1,5 @@ /* IA-64 ELF support for BFD. - Copyright 1998, 1999, 2000, 2001, 2002, 2003, 2008, 2009, 2010 - Free Software Foundation, Inc. + Copyright (C) 1998-2015 Free Software Foundation, Inc. Contributed by David Mosberger-Tang This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/elf/internal.h b/external/gpl3/gdb/dist/include/elf/internal.h index 461503783040..04e0582ab505 100644 --- a/external/gpl3/gdb/dist/include/elf/internal.h +++ b/external/gpl3/gdb/dist/include/elf/internal.h @@ -1,6 +1,5 @@ /* ELF support for BFD. - Copyright 1991, 1992, 1993, 1994, 1995, 1997, 1998, 2000, 2001, 2002, - 2003, 2006, 2007, 2008, 2010, 2011 Free Software Foundation, Inc. + Copyright (C) 1991-2015 Free Software Foundation, Inc. Written by Fred Fish @ Cygnus Support, from information published in "UNIX System V Release 4, Programmers Guide: ANSI C and diff --git a/external/gpl3/gdb/dist/include/elf/ip2k.h b/external/gpl3/gdb/dist/include/elf/ip2k.h index 8b4f36ef34fe..81e5c0a90af0 100644 --- a/external/gpl3/gdb/dist/include/elf/ip2k.h +++ b/external/gpl3/gdb/dist/include/elf/ip2k.h @@ -1,5 +1,5 @@ /* IP2xxx ELF support for BFD. - Copyright (C) 2000, 2002, 2010 Free Software Foundation, Inc. + Copyright (C) 2000-2015 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/elf/iq2000.h b/external/gpl3/gdb/dist/include/elf/iq2000.h index 0f8e69714f07..4486b5c89b13 100644 --- a/external/gpl3/gdb/dist/include/elf/iq2000.h +++ b/external/gpl3/gdb/dist/include/elf/iq2000.h @@ -1,5 +1,5 @@ /* IQ2000 ELF support for BFD. - Copyright (C) 2002, 2003, 2010 Free Software Foundation, Inc. + Copyright (C) 2002-2015 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/elf/lm32.h b/external/gpl3/gdb/dist/include/elf/lm32.h index 6ed34ec49965..dcadae209b6a 100644 --- a/external/gpl3/gdb/dist/include/elf/lm32.h +++ b/external/gpl3/gdb/dist/include/elf/lm32.h @@ -1,5 +1,5 @@ /* Lattice Mico32 ELF support for BFD. - Copyright 2008, 2010 Free Software Foundation, Inc. + Copyright (C) 2008-2015 Free Software Foundation, Inc. Contributed by Jon Beniston This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/elf/m32c.h b/external/gpl3/gdb/dist/include/elf/m32c.h index 29b80a679cd0..52eef9e5cda2 100644 --- a/external/gpl3/gdb/dist/include/elf/m32c.h +++ b/external/gpl3/gdb/dist/include/elf/m32c.h @@ -1,5 +1,5 @@ /* M32C ELF support for BFD. - Copyright (C) 2004, 2010 Free Software Foundation, Inc. + Copyright (C) 2004-2015 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/elf/m32r.h b/external/gpl3/gdb/dist/include/elf/m32r.h index 7e06e3f3146a..be09e2baedda 100644 --- a/external/gpl3/gdb/dist/include/elf/m32r.h +++ b/external/gpl3/gdb/dist/include/elf/m32r.h @@ -1,6 +1,5 @@ /* M32R ELF support for BFD. - Copyright 1996, 1997, 1998, 1999, 2000, 2003, 2004, 2008, 2010 - Free Software Foundation, Inc. + Copyright (C) 1996-2015 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/elf/m68hc11.h b/external/gpl3/gdb/dist/include/elf/m68hc11.h index 58d88208878f..a0b72a153081 100644 --- a/external/gpl3/gdb/dist/include/elf/m68hc11.h +++ b/external/gpl3/gdb/dist/include/elf/m68hc11.h @@ -1,5 +1,5 @@ /* m68hc11 & m68hc12 ELF support for BFD. - Copyright 1999, 2000, 2001, 2002, 2010, 2012 Free Software Foundation, Inc. + Copyright (C) 1999-2015 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/elf/m68k.h b/external/gpl3/gdb/dist/include/elf/m68k.h index f6f37ccf43dc..38151dd64530 100644 --- a/external/gpl3/gdb/dist/include/elf/m68k.h +++ b/external/gpl3/gdb/dist/include/elf/m68k.h @@ -1,6 +1,5 @@ /* MC68k ELF support for BFD. - Copyright 1998, 1999, 2000, 2002, 2005, 2006, 2007, 2009, 2010 - Free Software Foundation, Inc. + Copyright (C) 1998-2015 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/elf/mcore.h b/external/gpl3/gdb/dist/include/elf/mcore.h index 2745feebdc44..01b58cea56af 100644 --- a/external/gpl3/gdb/dist/include/elf/mcore.h +++ b/external/gpl3/gdb/dist/include/elf/mcore.h @@ -1,5 +1,5 @@ /* Motorola MCore support for BFD. - Copyright 1995, 1999, 2000, 2010 Free Software Foundation, Inc. + Copyright (C) 1995-2015 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/elf/mep.h b/external/gpl3/gdb/dist/include/elf/mep.h index b0e42adc3871..a107dd0448fe 100644 --- a/external/gpl3/gdb/dist/include/elf/mep.h +++ b/external/gpl3/gdb/dist/include/elf/mep.h @@ -1,6 +1,5 @@ /* Toshiba MeP ELF support for BFD. - Copyright (C) 2001, 2004, 2005, 2007, 2009, 2010 - Free Software Foundation, Inc. + Copyright (C) 2001-2015 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/elf/metag.h b/external/gpl3/gdb/dist/include/elf/metag.h index 7ea699df4514..b86000926c0b 100644 --- a/external/gpl3/gdb/dist/include/elf/metag.h +++ b/external/gpl3/gdb/dist/include/elf/metag.h @@ -1,5 +1,5 @@ /* Meta ELF support for BFD. - Copyright (C) 2013 Free Software Foundation, Inc. + Copyright (C) 2013-2015 Free Software Foundation, Inc. Contributed by Imagination Technologies Ltd. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/elf/microblaze.h b/external/gpl3/gdb/dist/include/elf/microblaze.h index c4d98213ac28..f565c1457f36 100644 --- a/external/gpl3/gdb/dist/include/elf/microblaze.h +++ b/external/gpl3/gdb/dist/include/elf/microblaze.h @@ -1,6 +1,6 @@ /* Xilinx MicroBlaze support for BFD. - Copyright 2009, 2010 Free Software Foundation, Inc. + Copyright (C) 2009-2015 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/elf/mips.h b/external/gpl3/gdb/dist/include/elf/mips.h index 2c5a9a62147a..23c21e208f66 100644 --- a/external/gpl3/gdb/dist/include/elf/mips.h +++ b/external/gpl3/gdb/dist/include/elf/mips.h @@ -1,7 +1,5 @@ /* MIPS ELF support for BFD. - Copyright 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, - 2003, 2004, 2005, 2008, 2009, 2010, 2013 - Free Software Foundation, Inc. + Copyright (C) 1993-2015 Free Software Foundation, Inc. By Ian Lance Taylor, Cygnus Support, , from information in the System V Application Binary Interface, MIPS @@ -89,7 +87,14 @@ START_RELOC_NUMBERS (elf_mips_reloc_type) RELOC_NUMBER (R_MIPS_TLS_TPREL_HI16, 49) RELOC_NUMBER (R_MIPS_TLS_TPREL_LO16, 50) RELOC_NUMBER (R_MIPS_GLOB_DAT, 51) - FAKE_RELOC (R_MIPS_max, 52) + /* Space to grow */ + RELOC_NUMBER (R_MIPS_PC21_S2, 60) + RELOC_NUMBER (R_MIPS_PC26_S2, 61) + RELOC_NUMBER (R_MIPS_PC18_S3, 62) + RELOC_NUMBER (R_MIPS_PC19_S2, 63) + RELOC_NUMBER (R_MIPS_PCHI16, 64) + RELOC_NUMBER (R_MIPS_PCLO16, 65) + FAKE_RELOC (R_MIPS_max, 66) /* These relocs are used for the mips16. */ FAKE_RELOC (R_MIPS16_min, 100) RELOC_NUMBER (R_MIPS16_26, 100) @@ -239,6 +244,12 @@ END_RELOC_NUMBERS (R_MIPS_maxext) /* -mips64r2 code. */ #define E_MIPS_ARCH_64R2 0x80000000 +/* -mips32r6 code. */ +#define E_MIPS_ARCH_32R6 0x90000000 + +/* -mips64r6 code. */ +#define E_MIPS_ARCH_64R6 0xa0000000 + /* The ABI of the file. Also see EF_MIPS_ABI2 above. */ #define EF_MIPS_ABI 0x0000F000 @@ -275,6 +286,7 @@ END_RELOC_NUMBERS (R_MIPS_maxext) #define E_MIPS_MACH_OCTEON 0x008b0000 #define E_MIPS_MACH_XLR 0x008c0000 #define E_MIPS_MACH_OCTEON2 0x008d0000 +#define E_MIPS_MACH_OCTEON3 0x008e0000 #define E_MIPS_MACH_5400 0x00910000 #define E_MIPS_MACH_5900 0x00920000 #define E_MIPS_MACH_5500 0x00980000 @@ -429,6 +441,8 @@ END_RELOC_NUMBERS (R_MIPS_maxext) /* Runtime procedure descriptor table exception information (ucode) ??? */ #define SHT_MIPS_PDR_EXCEPTION 0x70000029 +/* ABI related flags section. */ +#define SHT_MIPS_ABIFLAGS 0x7000002a /* A section of type SHT_MIPS_LIBLIST contains an array of the following structure. The sh_link field is the section index of the @@ -594,6 +608,9 @@ extern void bfd_mips_elf32_swap_reginfo_out /* .MIPS.options section. */ #define PT_MIPS_OPTIONS 0x70000002 + +/* Records ABI related flags. */ +#define PT_MIPS_ABIFLAGS 0x70000003 /* Processor specific dynamic array tags. */ @@ -1049,6 +1066,58 @@ typedef struct bfd_vma ri_gp_value; } Elf64_Internal_RegInfo; +/* ABI Flags structure version 0. */ + +typedef struct +{ + /* Version of flags structure. */ + unsigned char version[2]; + /* The level of the ISA: 1-5, 32, 64. */ + unsigned char isa_level[1]; + /* The revision of ISA: 0 for MIPS V and below, 1-n otherwise. */ + unsigned char isa_rev[1]; + /* The size of general purpose registers. */ + unsigned char gpr_size[1]; + /* The size of co-processor 1 registers. */ + unsigned char cpr1_size[1]; + /* The size of co-processor 2 registers. */ + unsigned char cpr2_size[1]; + /* The floating-point ABI. */ + unsigned char fp_abi[1]; + /* Processor-specific extension. */ + unsigned char isa_ext[4]; + /* Mask of ASEs used. */ + unsigned char ases[4]; + /* Mask of general flags. */ + unsigned char flags1[4]; + unsigned char flags2[4]; +} Elf_External_ABIFlags_v0; + +typedef struct +{ + /* Version of flags structure. */ + unsigned short version; + /* The level of the ISA: 1-5, 32, 64. */ + unsigned char isa_level; + /* The revision of ISA: 0 for MIPS V and below, 1-n otherwise. */ + unsigned char isa_rev; + /* The size of general purpose registers. */ + unsigned char gpr_size; + /* The size of co-processor 1 registers. */ + unsigned char cpr1_size; + /* The size of co-processor 2 registers. */ + unsigned char cpr2_size; + /* The floating-point ABI. */ + unsigned char fp_abi; + /* Processor-specific extension. */ + unsigned long isa_ext; + /* Mask of ASEs used. */ + unsigned long ases; + /* Mask of general flags. */ + unsigned long flags1; + unsigned long flags2; +} Elf_Internal_ABIFlags_v0; + typedef struct { /* The hash value computed from the name of the corresponding @@ -1089,6 +1158,12 @@ extern void bfd_mips_elf64_swap_reginfo_in extern void bfd_mips_elf64_swap_reginfo_out (bfd *, const Elf64_Internal_RegInfo *, Elf64_External_RegInfo *); +/* MIPS ELF flags swapping routines. */ +extern void bfd_mips_elf_swap_abiflags_v0_in + (bfd *, const Elf_External_ABIFlags_v0 *, Elf_Internal_ABIFlags_v0 *); +extern void bfd_mips_elf_swap_abiflags_v0_out + (bfd *, const Elf_Internal_ABIFlags_v0 *, Elf_External_ABIFlags_v0 *); + /* Masks for the info work of an ODK_EXCEPTIONS descriptor. */ #define OEX_FPU_MIN 0x1f /* FPEs which must be enabled. */ #define OEX_FPU_MAX 0x1f00 /* FPEs which may be enabled. */ @@ -1126,6 +1201,57 @@ extern void bfd_mips_elf64_swap_reginfo_out /* Masks for the info word of an ODK_HWAND/ODK_HWOR descriptor. */ #define OHWA0_R4KEOP_CHECKED 0x00000001 #define OHWA0_R4KEOP_CLEAN 0x00000002 + +/* Values for the xxx_size bytes of an ABI flags structure. */ + +#define AFL_REG_NONE 0x00 /* No registers. */ +#define AFL_REG_32 0x01 /* 32-bit registers. */ +#define AFL_REG_64 0x02 /* 64-bit registers. */ +#define AFL_REG_128 0x03 /* 128-bit registers. */ + +/* Masks for the ases word of an ABI flags structure. */ + +#define AFL_ASE_DSP 0x00000001 /* DSP ASE. */ +#define AFL_ASE_DSPR2 0x00000002 /* DSP R2 ASE. */ +#define AFL_ASE_EVA 0x00000004 /* Enhanced VA Scheme. */ +#define AFL_ASE_MCU 0x00000008 /* MCU (MicroController) ASE. */ +#define AFL_ASE_MDMX 0x00000010 /* MDMX ASE. */ +#define AFL_ASE_MIPS3D 0x00000020 /* MIPS-3D ASE. */ +#define AFL_ASE_MT 0x00000040 /* MT ASE. */ +#define AFL_ASE_SMARTMIPS 0x00000080 /* SmartMIPS ASE. */ +#define AFL_ASE_VIRT 0x00000100 /* VZ ASE. */ +#define AFL_ASE_MSA 0x00000200 /* MSA ASE. */ +#define AFL_ASE_MIPS16 0x00000400 /* MIPS16 ASE. */ +#define AFL_ASE_MICROMIPS 0x00000800 /* MICROMIPS ASE. */ +#define AFL_ASE_XPA 0x00001000 /* XPA ASE. */ +#define AFL_ASE_MASK 0x00001fff /* All ASEs. */ + +/* Values for the isa_ext word of an ABI flags structure. */ + +#define AFL_EXT_XLR 1 /* RMI Xlr instruction. */ +#define AFL_EXT_OCTEON2 2 /* Cavium Networks Octeon2. */ +#define AFL_EXT_OCTEONP 3 /* Cavium Networks OcteonP. */ +#define AFL_EXT_LOONGSON_3A 4 /* Loongson 3A. */ +#define AFL_EXT_OCTEON 5 /* Cavium Networks Octeon. */ +#define AFL_EXT_5900 6 /* MIPS R5900 instruction. */ +#define AFL_EXT_4650 7 /* MIPS R4650 instruction. */ +#define AFL_EXT_4010 8 /* LSI R4010 instruction. */ +#define AFL_EXT_4100 9 /* NEC VR4100 instruction. */ +#define AFL_EXT_3900 10 /* Toshiba R3900 instruction. */ +#define AFL_EXT_10000 11 /* MIPS R10000 instruction. */ +#define AFL_EXT_SB1 12 /* Broadcom SB-1 instruction. */ +#define AFL_EXT_4111 13 /* NEC VR4111/VR4181 instruction. */ +#define AFL_EXT_4120 14 /* NEC VR4120 instruction. */ +#define AFL_EXT_5400 15 /* NEC VR5400 instruction. */ +#define AFL_EXT_5500 16 /* NEC VR5500 instruction. */ +#define AFL_EXT_LOONGSON_2E 17 /* ST Microelectronics Loongson 2E. */ +#define AFL_EXT_LOONGSON_2F 18 /* ST Microelectronics Loongson 2F. */ +#define AFL_EXT_OCTEON3 19 /* Cavium Networks Octeon3. */ + +/* Masks for the flags1 word of an ABI flags structure. */ +#define AFL_FLAGS1_ODDSPREG 1 /* Uses odd single-precision registers. */ + +extern unsigned int bfd_mips_isa_ext (bfd *); /* Object attribute tags. */ @@ -1158,7 +1284,16 @@ enum Val_GNU_MIPS_ABI_FP_SOFT = 3, /* Using -mips32r2 -mfp64. */ - Val_GNU_MIPS_ABI_FP_64 = 4, + Val_GNU_MIPS_ABI_FP_OLD_64 = 4, + + /* Using -mfpxx */ + Val_GNU_MIPS_ABI_FP_XX = 5, + + /* Using -mips32r2 -mfp64. */ + Val_GNU_MIPS_ABI_FP_64 = 6, + + /* Using -mips32r2 -mfp64 -mno-odd-spreg. */ + Val_GNU_MIPS_ABI_FP_64A = 7, /* Values defined for Tag_GNU_MIPS_ABI_MSA. */ diff --git a/external/gpl3/gdb/dist/include/elf/mmix.h b/external/gpl3/gdb/dist/include/elf/mmix.h index 6d15f7ae421c..b96425a869ee 100644 --- a/external/gpl3/gdb/dist/include/elf/mmix.h +++ b/external/gpl3/gdb/dist/include/elf/mmix.h @@ -1,5 +1,5 @@ /* MMIX support for BFD. - Copyright 2001, 2002, 2003, 2010 Free Software Foundation, Inc. + Copyright (C) 2001-2015 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/elf/mn10200.h b/external/gpl3/gdb/dist/include/elf/mn10200.h index 24972b6890f1..f0ee100185d3 100644 --- a/external/gpl3/gdb/dist/include/elf/mn10200.h +++ b/external/gpl3/gdb/dist/include/elf/mn10200.h @@ -1,5 +1,5 @@ /* MN10200 ELF support for BFD. - Copyright 1998, 2000, 2010 Free Software Foundation, Inc. + Copyright (C) 1998-2015 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/elf/mn10300.h b/external/gpl3/gdb/dist/include/elf/mn10300.h index 529b3897b4d1..5d4adfc4ce05 100644 --- a/external/gpl3/gdb/dist/include/elf/mn10300.h +++ b/external/gpl3/gdb/dist/include/elf/mn10300.h @@ -1,5 +1,5 @@ /* MN10300 ELF support for BFD. - Copyright 1998, 1999, 2000, 2003, 2007 Free Software Foundation, Inc. + Copyright (C) 1998-2015 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/elf/moxie.h b/external/gpl3/gdb/dist/include/elf/moxie.h index 0b3eb3810c20..d9454fbd97e2 100644 --- a/external/gpl3/gdb/dist/include/elf/moxie.h +++ b/external/gpl3/gdb/dist/include/elf/moxie.h @@ -1,5 +1,5 @@ /* moxie ELF support for BFD. - Copyright 2009, 2010 Free Software Foundation, Inc. + Copyright (C) 2009-2015 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/elf/msp430.h b/external/gpl3/gdb/dist/include/elf/msp430.h index ac8e28c31e79..7c67569dee72 100644 --- a/external/gpl3/gdb/dist/include/elf/msp430.h +++ b/external/gpl3/gdb/dist/include/elf/msp430.h @@ -1,5 +1,5 @@ /* MSP430 ELF support for BFD. - Copyright (C) 2002-2013 Free Software Foundation, Inc. + Copyright (C) 2002-2015 Free Software Foundation, Inc. Contributed by Dmitry Diky This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/elf/mt.h b/external/gpl3/gdb/dist/include/elf/mt.h index 2bc09f42dcb1..9d4673531a1c 100644 --- a/external/gpl3/gdb/dist/include/elf/mt.h +++ b/external/gpl3/gdb/dist/include/elf/mt.h @@ -1,5 +1,5 @@ /* MS1 ELF support for BFD. - Copyright (C) 2000, 2005, 2010 Free Software Foundation, Inc. + Copyright (C) 2000-2015 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/elf/nds32.h b/external/gpl3/gdb/dist/include/elf/nds32.h index 5f410cf45b6b..a25ed5850a51 100644 --- a/external/gpl3/gdb/dist/include/elf/nds32.h +++ b/external/gpl3/gdb/dist/include/elf/nds32.h @@ -1,5 +1,5 @@ /* NDS32 ELF support for BFD. - Copyright (C) 2012-2013 Free Software Foundation, Inc. + Copyright (C) 2012-2015 Free Software Foundation, Inc. Contributed by Andes Technology Corporation. This file is part of BFD, the Binary File Descriptor library. @@ -76,7 +76,6 @@ START_RELOC_NUMBERS (elf_nds32_reloc_type) RELOC_NUMBER (R_NDS32_GOTOFF, 43) RELOC_NUMBER (R_NDS32_GOTPC20, 44) RELOC_NUMBER (R_NDS32_GOT_HI20, 45) - RELOC_NUMBER (R_NDS32_GOT_LO12, 46) RELOC_NUMBER (R_NDS32_GOTPC_HI20, 47) RELOC_NUMBER (R_NDS32_GOTPC_LO12, 48) @@ -95,8 +94,8 @@ START_RELOC_NUMBERS (elf_nds32_reloc_type) RELOC_NUMBER (R_NDS32_15_FIXED_RELA, 61) RELOC_NUMBER (R_NDS32_17_FIXED_RELA, 62) RELOC_NUMBER (R_NDS32_25_FIXED_RELA, 63) - RELOC_NUMBER (R_NDS32_PLTREL_HI20, 64) - RELOC_NUMBER (R_NDS32_PLTREL_LO12, 65) + RELOC_NUMBER (R_NDS32_PLTREL_HI20, 64) /* This is obsoleted. */ + RELOC_NUMBER (R_NDS32_PLTREL_LO12, 65) /* This is obsoleted. */ RELOC_NUMBER (R_NDS32_PLT_GOTREL_HI20, 66) RELOC_NUMBER (R_NDS32_PLT_GOTREL_LO12, 67) RELOC_NUMBER (R_NDS32_SDA12S2_DP_RELA, 68) @@ -123,22 +122,38 @@ START_RELOC_NUMBERS (elf_nds32_reloc_type) RELOC_NUMBER (R_NDS32_GOT15S2_RELA, 89) RELOC_NUMBER (R_NDS32_GOT17S2_RELA, 90) RELOC_NUMBER (R_NDS32_5_RELA, 91) - RELOC_NUMBER (R_NDS32_10_UPCREL_RELA, 92) + RELOC_NUMBER (R_NDS32_10_UPCREL_RELA, 92) /* This is obsoleted. */ RELOC_NUMBER (R_NDS32_SDA_FP7U2_RELA, 93) RELOC_NUMBER (R_NDS32_WORD_9_PCREL_RELA, 94) RELOC_NUMBER (R_NDS32_25_ABS_RELA, 95) RELOC_NUMBER (R_NDS32_17IFC_PCREL_RELA, 96) RELOC_NUMBER (R_NDS32_10IFCU_PCREL_RELA, 97) + RELOC_NUMBER (R_NDS32_TLS_LE_HI20, 98) + RELOC_NUMBER (R_NDS32_TLS_LE_LO12, 99) + RELOC_NUMBER (R_NDS32_TLS_IE_HI20, 100) + RELOC_NUMBER (R_NDS32_TLS_IE_LO12S2, 101) + RELOC_NUMBER (R_NDS32_TLS_TPOFF, 102) + RELOC_NUMBER (R_NDS32_TLS_LE_20, 103) + RELOC_NUMBER (R_NDS32_TLS_LE_15S0, 104) + RELOC_NUMBER (R_NDS32_TLS_LE_15S1, 105) + RELOC_NUMBER (R_NDS32_TLS_LE_15S2, 106) + RELOC_NUMBER (R_NDS32_LONGCALL4, 107) + RELOC_NUMBER (R_NDS32_LONGCALL5, 108) + RELOC_NUMBER (R_NDS32_LONGCALL6, 109) + RELOC_NUMBER (R_NDS32_LONGJUMP4, 110) + RELOC_NUMBER (R_NDS32_LONGJUMP5, 111) + RELOC_NUMBER (R_NDS32_LONGJUMP6, 112) + RELOC_NUMBER (R_NDS32_LONGJUMP7, 113) RELOC_NUMBER (R_NDS32_RELAX_ENTRY, 192) RELOC_NUMBER (R_NDS32_GOT_SUFF, 193) RELOC_NUMBER (R_NDS32_GOTOFF_SUFF, 194) RELOC_NUMBER (R_NDS32_PLT_GOT_SUFF, 195) - RELOC_NUMBER (R_NDS32_MULCALL_SUFF, 196) + RELOC_NUMBER (R_NDS32_MULCALL_SUFF, 196) /* This is obsoleted. */ RELOC_NUMBER (R_NDS32_PTR, 197) RELOC_NUMBER (R_NDS32_PTR_COUNT, 198) RELOC_NUMBER (R_NDS32_PTR_RESOLVED, 199) - RELOC_NUMBER (R_NDS32_PLTBLOCK, 200) + RELOC_NUMBER (R_NDS32_PLTBLOCK, 200) /* This is obsoleted. */ RELOC_NUMBER (R_NDS32_RELAX_REGION_BEGIN, 201) RELOC_NUMBER (R_NDS32_RELAX_REGION_END, 202) RELOC_NUMBER (R_NDS32_MINUEND, 203) @@ -149,7 +164,9 @@ START_RELOC_NUMBERS (elf_nds32_reloc_type) RELOC_NUMBER (R_NDS32_DIFF_ULEB128, 208) RELOC_NUMBER (R_NDS32_DATA, 209) RELOC_NUMBER (R_NDS32_TRAN, 210) - RELOC_NUMBER (R_NDS32_FPBASE, 211) + RELOC_NUMBER (R_NDS32_TLS_LE_ADD, 211) + RELOC_NUMBER (R_NDS32_TLS_LE_LS, 212) + RELOC_NUMBER (R_NDS32_EMPTY, 213) END_RELOC_NUMBERS (R_NDS32_max) diff --git a/external/gpl3/gdb/dist/include/elf/nios2.h b/external/gpl3/gdb/dist/include/elf/nios2.h index ff5947bf77b7..429b8ba2451f 100644 --- a/external/gpl3/gdb/dist/include/elf/nios2.h +++ b/external/gpl3/gdb/dist/include/elf/nios2.h @@ -1,5 +1,5 @@ /* Altera Nios II ELF support for BFD. - Copyright (C) 2012, 2013 Free Software Foundation, Inc. + Copyright (C) 2012-2015 Free Software Foundation, Inc. Contributed by Nigel Gray (ngray@altera.com). Contributed by Mentor Graphics, Inc. @@ -75,7 +75,12 @@ START_RELOC_NUMBERS (elf_nios2_reloc_type) RELOC_NUMBER (R_NIOS2_JUMP_SLOT, 38) RELOC_NUMBER (R_NIOS2_RELATIVE, 39) RELOC_NUMBER (R_NIOS2_GOTOFF, 40) - RELOC_NUMBER (R_NIOS2_ILLEGAL, 41) + RELOC_NUMBER (R_NIOS2_CALL26_NOAT, 41) + RELOC_NUMBER (R_NIOS2_GOT_LO, 42) + RELOC_NUMBER (R_NIOS2_GOT_HA, 43) + RELOC_NUMBER (R_NIOS2_CALL_LO, 44) + RELOC_NUMBER (R_NIOS2_CALL_HA, 45) + RELOC_NUMBER (R_NIOS2_ILLEGAL, 46) END_RELOC_NUMBERS (R_NIOS2_maxext) /* Processor-specific section flags. */ diff --git a/external/gpl3/gdb/dist/include/elf/or1k.h b/external/gpl3/gdb/dist/include/elf/or1k.h new file mode 100644 index 000000000000..3fb0d028c623 --- /dev/null +++ b/external/gpl3/gdb/dist/include/elf/or1k.h @@ -0,0 +1,65 @@ +/* Or1k ELF support for BFD. + Copyright (C) 2001-2015 Free Software Foundation, 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, see */ + +#ifndef _ELF_OR1K_H +#define _ELF_OR1K_H + +#include "elf/reloc-macros.h" + +/* Relocations. */ +START_RELOC_NUMBERS (elf_or1k_reloc_type) + RELOC_NUMBER (R_OR1K_NONE, 0) + RELOC_NUMBER (R_OR1K_32, 1) + RELOC_NUMBER (R_OR1K_16, 2) + RELOC_NUMBER (R_OR1K_8, 3) + RELOC_NUMBER (R_OR1K_LO_16_IN_INSN, 4) + RELOC_NUMBER (R_OR1K_HI_16_IN_INSN, 5) + RELOC_NUMBER (R_OR1K_INSN_REL_26, 6) + RELOC_NUMBER (R_OR1K_GNU_VTENTRY, 7) + RELOC_NUMBER (R_OR1K_GNU_VTINHERIT, 8) + RELOC_NUMBER (R_OR1K_32_PCREL, 9) + RELOC_NUMBER (R_OR1K_16_PCREL, 10) + RELOC_NUMBER (R_OR1K_8_PCREL, 11) + RELOC_NUMBER (R_OR1K_GOTPC_HI16, 12) + RELOC_NUMBER (R_OR1K_GOTPC_LO16, 13) + RELOC_NUMBER (R_OR1K_GOT16, 14) + RELOC_NUMBER (R_OR1K_PLT26, 15) + RELOC_NUMBER (R_OR1K_GOTOFF_HI16, 16) + RELOC_NUMBER (R_OR1K_GOTOFF_LO16, 17) + RELOC_NUMBER (R_OR1K_COPY, 18) + RELOC_NUMBER (R_OR1K_GLOB_DAT, 19) + RELOC_NUMBER (R_OR1K_JMP_SLOT, 20) + RELOC_NUMBER (R_OR1K_RELATIVE, 21) + RELOC_NUMBER (R_OR1K_TLS_GD_HI16, 22) + RELOC_NUMBER (R_OR1K_TLS_GD_LO16, 23) + RELOC_NUMBER (R_OR1K_TLS_LDM_HI16, 24) + RELOC_NUMBER (R_OR1K_TLS_LDM_LO16, 25) + RELOC_NUMBER (R_OR1K_TLS_LDO_HI16, 26) + RELOC_NUMBER (R_OR1K_TLS_LDO_LO16, 27) + RELOC_NUMBER (R_OR1K_TLS_IE_HI16, 28) + RELOC_NUMBER (R_OR1K_TLS_IE_LO16, 29) + RELOC_NUMBER (R_OR1K_TLS_LE_HI16, 30) + RELOC_NUMBER (R_OR1K_TLS_LE_LO16, 31) + RELOC_NUMBER (R_OR1K_TLS_TPOFF, 32) + RELOC_NUMBER (R_OR1K_TLS_DTPOFF, 33) + RELOC_NUMBER (R_OR1K_TLS_DTPMOD, 34) +END_RELOC_NUMBERS (R_OR1K_max) + +#define EF_OR1K_NODELAY (1UL << 0) + +#endif /* _ELF_OR1K_H */ diff --git a/external/gpl3/gdb/dist/include/elf/pj.h b/external/gpl3/gdb/dist/include/elf/pj.h index afd19e8dc71b..f487b1aeaa60 100644 --- a/external/gpl3/gdb/dist/include/elf/pj.h +++ b/external/gpl3/gdb/dist/include/elf/pj.h @@ -1,5 +1,5 @@ /* picoJava ELF support for BFD. - Copyright 1999, 2000, 2010 Free Software Foundation, Inc. + Copyright (C) 1999-2015 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/elf/ppc.h b/external/gpl3/gdb/dist/include/elf/ppc.h index da00df8688d5..c8d7c1fef4d0 100644 --- a/external/gpl3/gdb/dist/include/elf/ppc.h +++ b/external/gpl3/gdb/dist/include/elf/ppc.h @@ -1,6 +1,5 @@ /* PPC ELF support for BFD. - Copyright 1995, 1996, 1998, 2000, 2001, 2002, 2003, 2005, 2007, 2008, - 2009, 2010 Free Software Foundation, Inc. + Copyright (C) 1995-2015 Free Software Foundation, Inc. By Michael Meissner, Cygnus Support, , from information in the System V Application Binary Interface, diff --git a/external/gpl3/gdb/dist/include/elf/ppc64.h b/external/gpl3/gdb/dist/include/elf/ppc64.h index 78d947baea90..7d6311d5e226 100644 --- a/external/gpl3/gdb/dist/include/elf/ppc64.h +++ b/external/gpl3/gdb/dist/include/elf/ppc64.h @@ -1,5 +1,5 @@ /* PPC64 ELF support for BFD. - Copyright 2003, 2005, 2009, 2010, 2011 Free Software Foundation, Inc. + Copyright (C) 2003-2015 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. @@ -149,6 +149,10 @@ START_RELOC_NUMBERS (elf_ppc64_reloc_type) RELOC_NUMBER (R_PPC64_DTPREL16_HIGH, 114) RELOC_NUMBER (R_PPC64_DTPREL16_HIGHA, 115) +/* Added for ELFv2. */ + RELOC_NUMBER (R_PPC64_REL24_NOTOC, 116) + RELOC_NUMBER (R_PPC64_ADDR64_LOCAL, 117) + #ifndef RELOC_MACROS_GEN_FUNC /* Fake relocation only used internally by ld. */ RELOC_NUMBER (R_PPC64_LO_DS_OPT, 128) diff --git a/external/gpl3/gdb/dist/include/elf/reloc-macros.h b/external/gpl3/gdb/dist/include/elf/reloc-macros.h index 92fc9c145058..9da06b2d2b34 100644 --- a/external/gpl3/gdb/dist/include/elf/reloc-macros.h +++ b/external/gpl3/gdb/dist/include/elf/reloc-macros.h @@ -1,5 +1,5 @@ /* Generic relocation support for BFD. - Copyright 1998, 1999, 2000, 2003, 2010, 2011 Free Software Foundation, Inc. + Copyright (C) 1998-2015 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/elf/rl78.h b/external/gpl3/gdb/dist/include/elf/rl78.h index b281d3af6dc3..e7df0d72f934 100644 --- a/external/gpl3/gdb/dist/include/elf/rl78.h +++ b/external/gpl3/gdb/dist/include/elf/rl78.h @@ -1,5 +1,5 @@ /* RL78 ELF support for BFD. - Copyright (C) 2008-2013 Free Software Foundation, Inc. + Copyright (C) 2008-2015 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. @@ -109,6 +109,7 @@ END_RELOC_NUMBERS (R_RL78_max) #define E_FLAG_RL78_G10 (1 << 2) /* CPU is missing register banks 1-3, so uses different ABI. */ /* These define the addend field of R_RL78_RH_RELAX relocations. */ +#define RL78_RELAXA_MASK 0x000000f0 /* Mask for relax types */ #define RL78_RELAXA_BRA 0x00000010 /* Any type of branch (must be decoded). */ #define RL78_RELAXA_ADDR16 0x00000020 /* addr16->sfr/saddr opportunity */ #define RL78_RELAXA_RNUM 0x0000000f /* Number of associated relocations. */ diff --git a/external/gpl3/gdb/dist/include/elf/rx.h b/external/gpl3/gdb/dist/include/elf/rx.h index 83980853e7b5..de367d245086 100644 --- a/external/gpl3/gdb/dist/include/elf/rx.h +++ b/external/gpl3/gdb/dist/include/elf/rx.h @@ -1,5 +1,5 @@ /* RX ELF support for BFD. - Copyright (C) 2008, 2009, 2010 Free Software Foundation, Inc. + Copyright (C) 2008-2015 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/elf/s390.h b/external/gpl3/gdb/dist/include/elf/s390.h index 9128f8680ad9..0642d2e96274 100644 --- a/external/gpl3/gdb/dist/include/elf/s390.h +++ b/external/gpl3/gdb/dist/include/elf/s390.h @@ -1,5 +1,5 @@ /* 390 ELF support for BFD. - Copyright 2000, 2001, 2003, 2010 Free Software Foundation, Inc. + Copyright (C) 2000-2015 Free Software Foundation, Inc. Contributed by Carl B. Pedersen and Martin Schwidefsky. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/elf/score.h b/external/gpl3/gdb/dist/include/elf/score.h index 8d9c026bb047..c4f94a5df7c6 100644 --- a/external/gpl3/gdb/dist/include/elf/score.h +++ b/external/gpl3/gdb/dist/include/elf/score.h @@ -1,5 +1,5 @@ /* Score ELF support for BFD. - Copyright 2006, 2007, 2008, 2009 Free Software Foundation, Inc. + Copyright (C) 2006-2015 Free Software Foundation, Inc. Contributed by Brain.lin (brain.lin@sunplusct.com) Mei Ligang (ligang@sunnorth.com.cn) diff --git a/external/gpl3/gdb/dist/include/elf/sh.h b/external/gpl3/gdb/dist/include/elf/sh.h index c2bd50d2a87b..a54158f0d387 100644 --- a/external/gpl3/gdb/dist/include/elf/sh.h +++ b/external/gpl3/gdb/dist/include/elf/sh.h @@ -1,6 +1,5 @@ /* SH ELF support for BFD. - Copyright 1998, 2000, 2001, 2002, 2003, 2004, 2005, 2010 - Free Software Foundation, Inc. + Copyright (C) 1998-2015 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/elf/sparc.h b/external/gpl3/gdb/dist/include/elf/sparc.h index d182f4d76962..36a379cab56a 100644 --- a/external/gpl3/gdb/dist/include/elf/sparc.h +++ b/external/gpl3/gdb/dist/include/elf/sparc.h @@ -1,7 +1,5 @@ /* SPARC ELF support for BFD. - Copyright 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2008, 2010, - 2011 - Free Software Foundation, Inc. + Copyright (C) 1996-2015 Free Software Foundation, Inc. By Doug Evans, Cygnus Support, . This file is part of BFD, the Binary File Descriptor library. @@ -192,9 +190,19 @@ enum { /* 0-3 are generic. */ Tag_GNU_Sparc_HWCAPS = 4, + Tag_GNU_Sparc_HWCAPS2 = 8 }; -/* These values match the AV_SPARC_* hwcap bits defined under Solaris. */ +/* Generally speaking the ELF_SPARC_HWCAP_* and ELF_SPARC_HWCAP2_* + values match the AV_SPARC_* and AV2_SPARC_* bits respectively. + + However Solaris 11 introduced a backwards-incompatible change + deprecating the RANDOM, TRANS and ASI_CACHE_SPARING bits in the + AT_SUNW_CAP_HW1 flags, reusing the bits for the unrelated hwcaps + FJATHHPC, FJDES and FJAES respectively. In GNU/Linux we opted to + keep the old hwcaps in Tag_GNU_Sparc_HWCAPS and allocate bits for + FJATHHPC, FJDES and JFAES in Tag_GNU_Sparc_HWCAPS2. */ + #define ELF_SPARC_HWCAP_MUL32 0x00000001 /* umul/umulcc/smul/smulcc insns */ #define ELF_SPARC_HWCAP_DIV32 0x00000002 /* udiv/udivcc/sdiv/sdivcc insns */ #define ELF_SPARC_HWCAP_FSMULD 0x00000004 /* 'fsmuld' insn */ @@ -228,4 +236,17 @@ enum #define ELF_SPARC_HWCAP_CBCOND 0x10000000 /* Compare and Branch insns */ #define ELF_SPARC_HWCAP_CRC32C 0x20000000 /* CRC32C insn */ +#define ELF_SPARC_HWCAP2_FJATHPLUS 0x00000001 /* Fujitsu Athena+ */ +#define ELF_SPARC_HWCAP2_VIS3B 0x00000002 /* Subset of VIS3 present on sparc64 X+ */ +#define ELF_SPARC_HWCAP2_ADP 0x00000004 /* Application Data Protection */ +#define ELF_SPARC_HWCAP2_SPARC5 0x00000008 /* The 29 new fp and sub instructions */ +#define ELF_SPARC_HWCAP2_MWAIT 0x00000010 /* mwait instruction and load/monitor ASIs */ +#define ELF_SPARC_HWCAP2_XMPMUL 0x00000020 /* XOR multiple precision multiply */ +#define ELF_SPARC_HWCAP2_XMONT 0x00000040 /* XOR Montgomery mult/sqr instructions */ +#define ELF_SPARC_HWCAP2_NSEC \ + 0x00000080 /* pause insn with support for nsec timings */ +#define ELF_SPARC_HWCAP2_FJATHHPC 0x00001000 /* Fujitsu HPC instrs */ +#define ELF_SPARC_HWCAP2_FJDES 0x00002000 /* Fujitsu DES instrs */ +#define ELF_SPARC_HWCAP2_FJAES 0x00010000 /* Fujitsu AES instrs */ + #endif /* _ELF_SPARC_H */ diff --git a/external/gpl3/gdb/dist/include/elf/spu.h b/external/gpl3/gdb/dist/include/elf/spu.h index 0618ec8fcb1d..1a7db570c7d8 100644 --- a/external/gpl3/gdb/dist/include/elf/spu.h +++ b/external/gpl3/gdb/dist/include/elf/spu.h @@ -1,6 +1,6 @@ /* SPU ELF support for BFD. - Copyright 2006, 2007, 2009, 2010 Free Software Foundation, Inc. + Copyright (C) 2006-2015 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/elf/tic6x-attrs.h b/external/gpl3/gdb/dist/include/elf/tic6x-attrs.h index 21ce1e4f5369..89602dd9d727 100644 --- a/external/gpl3/gdb/dist/include/elf/tic6x-attrs.h +++ b/external/gpl3/gdb/dist/include/elf/tic6x-attrs.h @@ -1,6 +1,5 @@ /* TI C6X ELF attributes. - Copyright 2010 - Free Software Foundation, Inc. + Copyright (C) 2010-2015 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/elf/tic6x.h b/external/gpl3/gdb/dist/include/elf/tic6x.h index e686cc3a584b..d80009721697 100644 --- a/external/gpl3/gdb/dist/include/elf/tic6x.h +++ b/external/gpl3/gdb/dist/include/elf/tic6x.h @@ -1,6 +1,5 @@ /* TI C6X ELF support for BFD. - Copyright 2010, 2011 - Free Software Foundation, Inc. + Copyright (C) 2010-2015 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/elf/tilegx.h b/external/gpl3/gdb/dist/include/elf/tilegx.h index e838b8097da4..edfbb6814fea 100644 --- a/external/gpl3/gdb/dist/include/elf/tilegx.h +++ b/external/gpl3/gdb/dist/include/elf/tilegx.h @@ -1,5 +1,5 @@ /* TILE-Gx ELF support for BFD. - Copyright 2011 Free Software Foundation, Inc. + Copyright (C) 2011-2015 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/elf/tilepro.h b/external/gpl3/gdb/dist/include/elf/tilepro.h index 0079a2fe4a46..8545f869f0a0 100644 --- a/external/gpl3/gdb/dist/include/elf/tilepro.h +++ b/external/gpl3/gdb/dist/include/elf/tilepro.h @@ -1,5 +1,5 @@ /* TILEPro ELF support for BFD. - Copyright 2011 Free Software Foundation, Inc. + Copyright (C) 2011-2015 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/elf/v850.h b/external/gpl3/gdb/dist/include/elf/v850.h index 5a0882029544..5cc358170afa 100644 --- a/external/gpl3/gdb/dist/include/elf/v850.h +++ b/external/gpl3/gdb/dist/include/elf/v850.h @@ -1,5 +1,5 @@ /* V850 ELF support for BFD. - Copyright 1997-2013 Free Software Foundation, Inc. + Copyright (C) 1997-2015 Free Software Foundation, Inc. Created by Michael Meissner, Cygnus Support This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/elf/vax.h b/external/gpl3/gdb/dist/include/elf/vax.h index e44c48e7bf09..b5cc203826dc 100644 --- a/external/gpl3/gdb/dist/include/elf/vax.h +++ b/external/gpl3/gdb/dist/include/elf/vax.h @@ -1,5 +1,5 @@ /* VAX ELF support for BFD. - Copyright (C) 2002, 2010 Free Software Foundation, Inc. + Copyright (C) 2002-2015 Free Software Foundation, Inc. Contributed by Matt Thomas . This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/elf/visium.h b/external/gpl3/gdb/dist/include/elf/visium.h new file mode 100644 index 000000000000..104c0b86658a --- /dev/null +++ b/external/gpl3/gdb/dist/include/elf/visium.h @@ -0,0 +1,51 @@ +/* Visium ELF support for BFD. + + Copyright (C) 2002-2015 Free Software Foundation, 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. */ + +#ifndef _ELF_VISIUM_H +#define _ELF_VISIUM_H + +#include "elf/reloc-macros.h" + +/* Processor specific flags for the ELF header e_flags field. */ +#define EF_VISIUM_ARCH_MCM 0x01 +#define EF_VISIUM_ARCH_MCM24 0x02 +#define EF_VISIUM_ARCH_GR6 0x04 + +/* Relocations. */ +START_RELOC_NUMBERS (elf_visium_reloc_type) + RELOC_NUMBER (R_VISIUM_NONE, 0) + RELOC_NUMBER (R_VISIUM_8, 1) + RELOC_NUMBER (R_VISIUM_16, 2) + RELOC_NUMBER (R_VISIUM_32, 3) + RELOC_NUMBER (R_VISIUM_8_PCREL, 4) + RELOC_NUMBER (R_VISIUM_16_PCREL, 5) + RELOC_NUMBER (R_VISIUM_32_PCREL, 6) + RELOC_NUMBER (R_VISIUM_PC16, 7) + RELOC_NUMBER (R_VISIUM_HI16, 8) + RELOC_NUMBER (R_VISIUM_LO16, 9) + RELOC_NUMBER (R_VISIUM_IM16, 10) + RELOC_NUMBER (R_VISIUM_HI16_PCREL, 11) + RELOC_NUMBER (R_VISIUM_LO16_PCREL, 12) + RELOC_NUMBER (R_VISIUM_IM16_PCREL, 13) + RELOC_NUMBER (R_VISIUM_GNU_VTINHERIT, 200) + RELOC_NUMBER (R_VISIUM_GNU_VTENTRY, 201) +END_RELOC_NUMBERS(R_VISIUM_max) + +#endif /* _ELF_VISIUM_H */ diff --git a/external/gpl3/gdb/dist/include/elf/vxworks.h b/external/gpl3/gdb/dist/include/elf/vxworks.h index f25f012951ff..8ad8c4a9f416 100644 --- a/external/gpl3/gdb/dist/include/elf/vxworks.h +++ b/external/gpl3/gdb/dist/include/elf/vxworks.h @@ -1,6 +1,5 @@ /* VxWorks ELF support for BFD. - Copyright 2007, 2010 - Free Software Foundation, Inc. + Copyright (C) 2007-2015 Free Software Foundation, Inc. Contributed by Nathan Sidwell diff --git a/external/gpl3/gdb/dist/include/elf/x86-64.h b/external/gpl3/gdb/dist/include/elf/x86-64.h index ec59dbd868d6..f18ec662db3a 100644 --- a/external/gpl3/gdb/dist/include/elf/x86-64.h +++ b/external/gpl3/gdb/dist/include/elf/x86-64.h @@ -1,6 +1,5 @@ /* x86_64 ELF support for BFD. - Copyright (C) 2000, 2001, 2002, 2004, 2005, 2006, 2008, 2009, 2010 - Free Software Foundation, Inc. + Copyright (C) 2000-2015 Free Software Foundation, Inc. Contributed by Jan Hubicka This file is part of BFD, the Binary File Descriptor library. @@ -59,8 +58,7 @@ START_RELOC_NUMBERS (elf_x86_64_reloc_type) offset to GOT entry */ RELOC_NUMBER (R_X86_64_GOTPC64, 29) /* 64 bit signed pc relative offset to GOT */ - RELOC_NUMBER (R_X86_64_GOTPLT64, 30) /* like GOT64, but indicates - that PLT entry is needed */ + RELOC_NUMBER (R_X86_64_GOTPLT64, 30) /* Obsolete. The same as GOT64. */ RELOC_NUMBER (R_X86_64_PLTOFF64, 31) /* 64 bit GOT relative offset to PLT entry */ RELOC_NUMBER (R_X86_64_SIZE32, 32) /* 32-bit symbol size */ diff --git a/external/gpl3/gdb/dist/include/elf/xc16x.h b/external/gpl3/gdb/dist/include/elf/xc16x.h index b46d903524bb..b58dfabbad47 100644 --- a/external/gpl3/gdb/dist/include/elf/xc16x.h +++ b/external/gpl3/gdb/dist/include/elf/xc16x.h @@ -1,5 +1,5 @@ /* Infineon XC16X ELF support for BFD. - Copyright 2006, 2010 Free Software Foundation, Inc. + Copyright (C) 2006-2015 Free Software Foundation, Inc. Contributed by KPIT Cummins Infosystems This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/elf/xgate.h b/external/gpl3/gdb/dist/include/elf/xgate.h index 33286a8d0cd4..b959687c61c4 100644 --- a/external/gpl3/gdb/dist/include/elf/xgate.h +++ b/external/gpl3/gdb/dist/include/elf/xgate.h @@ -1,5 +1,5 @@ /* XGATE ELF support for BFD. - Copyright 2010, 2011, 2012 Free Software Foundation, Inc. + Copyright (C) 2010-2015 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/elf/xstormy16.h b/external/gpl3/gdb/dist/include/elf/xstormy16.h index 0ae0def86d30..ea1bda0f9c55 100644 --- a/external/gpl3/gdb/dist/include/elf/xstormy16.h +++ b/external/gpl3/gdb/dist/include/elf/xstormy16.h @@ -1,5 +1,5 @@ /* XSTORMY16 ELF support for BFD. - Copyright (C) 2001, 2002, 2010 Free Software Foundation, Inc. + Copyright (C) 2001-2015 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/elf/xtensa.h b/external/gpl3/gdb/dist/include/elf/xtensa.h index 0d35f7abc046..eb05deaa2214 100644 --- a/external/gpl3/gdb/dist/include/elf/xtensa.h +++ b/external/gpl3/gdb/dist/include/elf/xtensa.h @@ -1,5 +1,5 @@ /* Xtensa ELF support for BFD. - Copyright 2003, 2004, 2007, 2008, 2010 Free Software Foundation, Inc. + Copyright (C) 2003-2015 Free Software Foundation, Inc. Contributed by Bob Wilson (bwilson@tensilica.com) at Tensilica. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/fibheap.h b/external/gpl3/gdb/dist/include/fibheap.h index a3d09dd9db8d..85b10c58b60a 100644 --- a/external/gpl3/gdb/dist/include/fibheap.h +++ b/external/gpl3/gdb/dist/include/fibheap.h @@ -1,6 +1,5 @@ /* A Fibonacci heap datatype. - Copyright 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2009 - Free Software Foundation, Inc. + Copyright (C) 1998-2015 Free Software Foundation, Inc. Contributed by Daniel Berlin (dan@cgsoftware.com). This file is part of GCC. diff --git a/external/gpl3/gdb/dist/include/filenames.h b/external/gpl3/gdb/dist/include/filenames.h index e799a51b6ad0..5ce977055fa1 100644 --- a/external/gpl3/gdb/dist/include/filenames.h +++ b/external/gpl3/gdb/dist/include/filenames.h @@ -5,7 +5,7 @@ use forward- and back-slash in path names interchangeably, and some of them have case-insensitive file names. - Copyright 2000, 2001, 2007, 2010 Free Software Foundation, Inc. + Copyright (C) 2000-2015 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/floatformat.h b/external/gpl3/gdb/dist/include/floatformat.h index 04db61a2659f..6b55986413c8 100644 --- a/external/gpl3/gdb/dist/include/floatformat.h +++ b/external/gpl3/gdb/dist/include/floatformat.h @@ -1,6 +1,5 @@ /* IEEE floating point support declarations, for GDB, the GNU Debugger. - Copyright 1991, 1994, 1995, 1997, 2000, 2003, 2005, 2010 - Free Software Foundation, Inc. + Copyright (C) 1991-2015 Free Software Foundation, Inc. This file is part of GDB. diff --git a/external/gpl3/gdb/dist/include/fnmatch.h b/external/gpl3/gdb/dist/include/fnmatch.h index 5b9953ca3f52..0789fc1469cc 100644 --- a/external/gpl3/gdb/dist/include/fnmatch.h +++ b/external/gpl3/gdb/dist/include/fnmatch.h @@ -1,4 +1,4 @@ -/* Copyright 1991, 1992, 1993, 1996 Free Software Foundation, Inc. +/* Copyright (C) 1991-2015 Free Software Foundation, Inc. NOTE: The canonical source of this file is maintained with the GNU C Library. Bugs can be reported to bug-glibc@prep.ai.mit.edu. diff --git a/external/gpl3/gdb/dist/include/fopen-bin.h b/external/gpl3/gdb/dist/include/fopen-bin.h index 8f5f771007c4..fb4ca4d2efbf 100644 --- a/external/gpl3/gdb/dist/include/fopen-bin.h +++ b/external/gpl3/gdb/dist/include/fopen-bin.h @@ -7,7 +7,7 @@ cope with a "b" in the string, indicating binary files, but some reject this (and thereby don't conform to ANSI C, but what else is new?). - Copyright 1996-2012 Free Software Foundation, Inc. + Copyright (C) 1996-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/fopen-same.h b/external/gpl3/gdb/dist/include/fopen-same.h index d139e02ecb40..2c009afe4386 100644 --- a/external/gpl3/gdb/dist/include/fopen-same.h +++ b/external/gpl3/gdb/dist/include/fopen-same.h @@ -7,7 +7,7 @@ "b" to the string, indicating binary files, but some reject this (and thereby don't conform to ANSI C, but what else is new?). - Copyright 1996-2012 Free Software Foundation, Inc. + Copyright (C) 1996-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/fopen-vms.h b/external/gpl3/gdb/dist/include/fopen-vms.h index e2b2dc7ad2ff..2767a3d4775e 100644 --- a/external/gpl3/gdb/dist/include/fopen-vms.h +++ b/external/gpl3/gdb/dist/include/fopen-vms.h @@ -5,7 +5,7 @@ This version is for VMS systems, where text and binary files are different. - Copyright 1996-2012 Free Software Foundation, Inc. + Copyright (C) 1996-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/gcc-c-fe.def b/external/gpl3/gdb/dist/include/gcc-c-fe.def new file mode 100644 index 000000000000..25ace1c8521a --- /dev/null +++ b/external/gpl3/gdb/dist/include/gcc-c-fe.def @@ -0,0 +1,197 @@ +/* Interface between GCC C FE and GDB -*- c -*- + + Copyright (C) 2014-2015 Free Software Foundation, Inc. + + This file is part of GCC. + + 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, see . */ + + + +/* Create a new "decl" in GCC. A decl is a declaration, basically a + kind of symbol. + + NAME is the name of the new symbol. SYM_KIND is the kind of + symbol being requested. SYM_TYPE is the new symbol's C type; + except for labels, where this is not meaningful and should be + zero. If SUBSTITUTION_NAME is not NULL, then a reference to this + decl in the source will later be substituted with a dereference + of a variable of the given name. Otherwise, for symbols having + an address (e.g., functions), ADDRESS is the address. FILENAME + and LINE_NUMBER refer to the symbol's source location. If this + is not known, FILENAME can be NULL and LINE_NUMBER can be 0. + This function returns the new decl. */ + +GCC_METHOD7 (gcc_decl, build_decl, + const char *, /* Argument NAME. */ + enum gcc_c_symbol_kind, /* Argument SYM_KIND. */ + gcc_type, /* Argument SYM_TYPE. */ + const char *, /* Argument SUBSTITUTION_NAME. */ + gcc_address, /* Argument ADDRESS. */ + const char *, /* Argument FILENAME. */ + unsigned int) /* Argument LINE_NUMBER. */ + +/* Insert a GCC decl into the symbol table. DECL is the decl to + insert. IS_GLOBAL is true if this is an outermost binding, and + false if it is a possibly-shadowing binding. */ + +GCC_METHOD2 (int /* bool */, bind, + gcc_decl, /* Argument DECL. */ + int /* bool */) /* Argument IS_GLOBAL. */ + +/* Insert a tagged type into the symbol table. NAME is the tag name + of the type and TAGGED_TYPE is the type itself. TAGGED_TYPE must + be either a struct, union, or enum type, as these are the only + types that have tags. FILENAME and LINE_NUMBER refer to the type's + source location. If this is not known, FILENAME can be NULL and + LINE_NUMBER can be 0. */ + +GCC_METHOD4 (int /* bool */, tagbind, + const char *, /* Argument NAME. */ + gcc_type, /* Argument TAGGED_TYPE. */ + const char *, /* Argument FILENAME. */ + unsigned int) /* Argument LINE_NUMBER. */ + +/* Return the type of a pointer to a given base type. */ + +GCC_METHOD1 (gcc_type, build_pointer_type, + gcc_type) /* Argument BASE_TYPE. */ + +/* Create a new 'struct' type. Initially it has no fields. */ + +GCC_METHOD0 (gcc_type, build_record_type) + +/* Create a new 'union' type. Initially it has no fields. */ + +GCC_METHOD0 (gcc_type, build_union_type) + +/* Add a field to a struct or union type. FIELD_NAME is the field's + name. FIELD_TYPE is the type of the field. BITSIZE and BITPOS + indicate where in the struct the field occurs. */ + +GCC_METHOD5 (int /* bool */, build_add_field, + gcc_type, /* Argument RECORD_OR_UNION_TYPE. */ + const char *, /* Argument FIELD_NAME. */ + gcc_type, /* Argument FIELD_TYPE. */ + unsigned long, /* Argument BITSIZE. */ + unsigned long) /* Argument BITPOS. */ + +/* After all the fields have been added to a struct or union, the + struct or union type must be "finished". This does some final + cleanups in GCC. */ + +GCC_METHOD2 (int /* bool */, finish_record_or_union, + gcc_type, /* Argument RECORD_OR_UNION_TYPE. */ + unsigned long) /* Argument SIZE_IN_BYTES. */ + +/* Create a new 'enum' type. The new type initially has no + associated constants. */ + +GCC_METHOD1 (gcc_type, build_enum_type, + gcc_type) /* Argument UNDERLYING_INT_TYPE. */ + +/* Add a new constant to an enum type. NAME is the constant's + name and VALUE is its value. */ + +GCC_METHOD3 (int /* bool */, build_add_enum_constant, + gcc_type, /* Argument ENUM_TYPE. */ + const char *, /* Argument NAME. */ + unsigned long) /* Argument VALUE. */ + +/* After all the constants have been added to an enum, the type must + be "finished". This does some final cleanups in GCC. */ + +GCC_METHOD1 (int /* bool */, finish_enum_type, + gcc_type) /* Argument ENUM_TYPE. */ + +/* Create a new function type. RETURN_TYPE is the type returned by + the function, and ARGUMENT_TYPES is a vector, of length NARGS, of + the argument types. IS_VARARGS is true if the function is + varargs. */ + +GCC_METHOD3 (gcc_type, build_function_type, + gcc_type, /* Argument RETURN_TYPE. */ + const struct gcc_type_array *, /* Argument ARGUMENT_TYPES. */ + int /* bool */) /* Argument IS_VARARGS. */ + +/* Return an integer type with the given properties. */ + +GCC_METHOD2 (gcc_type, int_type, + int /* bool */, /* Argument IS_UNSIGNED. */ + unsigned long) /* Argument SIZE_IN_BYTES. */ + +/* Return a floating point type with the given properties. */ + +GCC_METHOD1 (gcc_type, float_type, + unsigned long) /* Argument SIZE_IN_BYTES. */ + +/* Return the 'void' type. */ + +GCC_METHOD0 (gcc_type, void_type) + +/* Return the 'bool' type. */ + +GCC_METHOD0 (gcc_type, bool_type) + +/* Create a new array type. If NUM_ELEMENTS is -1, then the array + is assumed to have an unknown length. */ + +GCC_METHOD2 (gcc_type, build_array_type, + gcc_type, /* Argument ELEMENT_TYPE. */ + int) /* Argument NUM_ELEMENTS. */ + +/* Create a new variably-sized array type. UPPER_BOUND_NAME is the + name of a local variable that holds the upper bound of the array; + it is one less than the array size. */ + +GCC_METHOD2 (gcc_type, build_vla_array_type, + gcc_type, /* Argument ELEMENT_TYPE. */ + const char *) /* Argument UPPER_BOUND_NAME. */ + +/* Return a qualified variant of a given base type. QUALIFIERS says + which qualifiers to use; it is composed of or'd together + constants from 'enum gcc_qualifiers'. */ + +GCC_METHOD2 (gcc_type, build_qualified_type, + gcc_type, /* Argument UNQUALIFIED_TYPE. */ + enum gcc_qualifiers) /* Argument QUALIFIERS. */ + +/* Build a complex type given its element type. */ + +GCC_METHOD1 (gcc_type, build_complex_type, + gcc_type) /* Argument ELEMENT_TYPE. */ + +/* Build a vector type given its element type and number of + elements. */ + +GCC_METHOD2 (gcc_type, build_vector_type, + gcc_type, /* Argument ELEMENT_TYPE. */ + int) /* Argument NUM_ELEMENTS. */ + +/* Build a constant. NAME is the constant's name and VALUE is its + value. FILENAME and LINE_NUMBER refer to the type's source + location. If this is not known, FILENAME can be NULL and + LINE_NUMBER can be 0. */ + +GCC_METHOD5 (int /* bool */, build_constant, + gcc_type, /* Argument TYPE. */ + const char *, /* Argument NAME. */ + unsigned long, /* Argument VALUE. */ + const char *, /* Argument FILENAME. */ + unsigned int) /* Argument LINE_NUMBER. */ + +/* Emit an error and return an error type object. */ + +GCC_METHOD1 (gcc_type, error, + const char *) /* Argument MESSAGE. */ diff --git a/external/gpl3/gdb/dist/include/gcc-c-interface.h b/external/gpl3/gdb/dist/include/gcc-c-interface.h new file mode 100644 index 000000000000..95d0fc94e55d --- /dev/null +++ b/external/gpl3/gdb/dist/include/gcc-c-interface.h @@ -0,0 +1,220 @@ +/* Interface between GCC C FE and GDB + + Copyright (C) 2014-2015 Free Software Foundation, Inc. + + This file is part of GCC. + + 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, see . */ + +#ifndef GCC_C_INTERFACE_H +#define GCC_C_INTERFACE_H + +#include "gcc-interface.h" + +/* This header defines the interface to the GCC API. It must be both + valid C and valid C++, because it is included by both programs. */ + +#ifdef __cplusplus +extern "C" { +#endif + +/* Forward declaration. */ + +struct gcc_c_context; + +/* + * Definitions and declarations for the C front end. + */ + +/* Defined versions of the C front-end API. */ + +enum gcc_c_api_version +{ + GCC_C_FE_VERSION_0 = 0 +}; + +/* Qualifiers. */ + +enum gcc_qualifiers +{ + GCC_QUALIFIER_CONST = 1, + GCC_QUALIFIER_VOLATILE = 2, + GCC_QUALIFIER_RESTRICT = 4 +}; + +/* This enumerates the kinds of decls that GDB can create. */ + +enum gcc_c_symbol_kind +{ + /* A function. */ + + GCC_C_SYMBOL_FUNCTION, + + /* A variable. */ + + GCC_C_SYMBOL_VARIABLE, + + /* A typedef. */ + + GCC_C_SYMBOL_TYPEDEF, + + /* A label. */ + + GCC_C_SYMBOL_LABEL +}; + +/* This enumerates the types of symbols that GCC might request from + GDB. */ + +enum gcc_c_oracle_request +{ + /* An ordinary symbol -- a variable, function, typedef, or enum + constant. */ + + GCC_C_ORACLE_SYMBOL, + + /* A struct, union, or enum tag. */ + + GCC_C_ORACLE_TAG, + + /* A label. */ + + GCC_C_ORACLE_LABEL +}; + +/* The type of the function called by GCC to ask GDB for a symbol's + definition. DATUM is an arbitrary value supplied when the oracle + function is registered. CONTEXT is the GCC context in which the + request is being made. REQUEST specifies what sort of symbol is + being requested, and IDENTIFIER is the name of the symbol. */ + +typedef void gcc_c_oracle_function (void *datum, + struct gcc_c_context *context, + enum gcc_c_oracle_request request, + const char *identifier); + +/* The type of the function called by GCC to ask GDB for a symbol's + address. This should return 0 if the address is not known. */ + +typedef gcc_address gcc_c_symbol_address_function (void *datum, + struct gcc_c_context *ctxt, + const char *identifier); + +/* An array of types used for creating a function type. */ + +struct gcc_type_array +{ + /* Number of elements. */ + + int n_elements; + + /* The elements. */ + + gcc_type *elements; +}; + +/* The vtable used by the C front end. */ + +struct gcc_c_fe_vtable +{ + /* The version of the C interface. The value is one of the + gcc_c_api_version constants. */ + + unsigned int c_version; + + /* Set the callbacks for this context. + + The binding oracle is called whenever the C parser needs to look + up a symbol. This gives the caller a chance to lazily + instantiate symbols using other parts of the gcc_c_fe_interface + API. + + The address oracle is called whenever the C parser needs to look + up a symbol. This is only called for symbols not provided by the + symbol oracle -- that is, just built-in functions where GCC + provides the declaration. + + DATUM is an arbitrary piece of data that is passed back verbatim + to the callbakcs in requests. */ + + void (*set_callbacks) (struct gcc_c_context *self, + gcc_c_oracle_function *binding_oracle, + gcc_c_symbol_address_function *address_oracle, + void *datum); + +#define GCC_METHOD0(R, N) \ + R (*N) (struct gcc_c_context *); +#define GCC_METHOD1(R, N, A) \ + R (*N) (struct gcc_c_context *, A); +#define GCC_METHOD2(R, N, A, B) \ + R (*N) (struct gcc_c_context *, A, B); +#define GCC_METHOD3(R, N, A, B, C) \ + R (*N) (struct gcc_c_context *, A, B, C); +#define GCC_METHOD4(R, N, A, B, C, D) \ + R (*N) (struct gcc_c_context *, A, B, C, D); +#define GCC_METHOD5(R, N, A, B, C, D, E) \ + R (*N) (struct gcc_c_context *, A, B, C, D, E); +#define GCC_METHOD7(R, N, A, B, C, D, E, F, G) \ + R (*N) (struct gcc_c_context *, A, B, C, D, E, F, G); + +#include "gcc-c-fe.def" + +#undef GCC_METHOD0 +#undef GCC_METHOD1 +#undef GCC_METHOD2 +#undef GCC_METHOD3 +#undef GCC_METHOD4 +#undef GCC_METHOD5 +#undef GCC_METHOD7 + +}; + +/* The C front end object. */ + +struct gcc_c_context +{ + /* Base class. */ + + struct gcc_base_context base; + + /* Our vtable. This is a separate field because this is simpler + than implementing a vtable inheritance scheme in C. */ + + const struct gcc_c_fe_vtable *c_ops; +}; + +/* The name of the .so that the compiler builds. We dlopen this + later. */ + +#define GCC_C_FE_LIBCC libcc1.so + +/* The compiler exports a single initialization function. This macro + holds its name as a symbol. */ + +#define GCC_C_FE_CONTEXT gcc_c_fe_context + +/* The type of the initialization function. The caller passes in the + desired base version and desired C-specific version. If the + request can be satisfied, a compatible gcc_context object will be + returned. Otherwise, the function returns NULL. */ + +typedef struct gcc_c_context *gcc_c_fe_context_function + (enum gcc_base_api_version, + enum gcc_c_api_version); + +#ifdef __cplusplus +} +#endif + +#endif /* GCC_C_INTERFACE_H */ diff --git a/external/gpl3/gdb/dist/include/gcc-interface.h b/external/gpl3/gdb/dist/include/gcc-interface.h new file mode 100644 index 000000000000..df7db6ec1dfb --- /dev/null +++ b/external/gpl3/gdb/dist/include/gcc-interface.h @@ -0,0 +1,127 @@ +/* Generic interface between GCC and GDB + + Copyright (C) 2014-2015 Free Software Foundation, Inc. + + This file is part of GCC. + + 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, see . */ + +#ifndef GCC_INTERFACE_H +#define GCC_INTERFACE_H + +/* This header defines the interface to the GCC API. It must be both + valid C and valid C++, because it is included by both programs. */ + +#ifdef __cplusplus +extern "C" { +#endif + +/* Opaque typedefs for objects passed through the interface. */ + +typedef unsigned long long gcc_type; +typedef unsigned long long gcc_decl; + +/* An address in the inferior. */ + +typedef unsigned long long gcc_address; + +/* Forward declaration. */ + +struct gcc_base_context; + +/* Defined versions of the generic API. */ + +enum gcc_base_api_version +{ + GCC_FE_VERSION_0 = 0 +}; + +/* The operations defined by the GCC base API. This is the vtable for + the real context structure which is passed around. + + The "base" API is concerned with basics shared by all compiler + front ends: setting command-line arguments, the file names, etc. + + Front-end-specific interfaces inherit from this one. */ + +struct gcc_base_vtable +{ + /* The actual version implemented in this interface. This field can + be relied on not to move, so users can always check it if they + desire. The value is one of the gcc_base_api_version constants. + */ + + unsigned int version; + + /* Set the compiler's command-line options for the next compilation. + TRIPLET_REGEXP is a regular expression that is used to match the + configury triplet prefix to the compiler. + The arguments are copied by GCC. ARGV need not be + NULL-terminated. The arguments must be set separately for each + compilation; that is, after a compile is requested, the + previously-set arguments cannot be reused. + + This returns NULL on success. On failure, returns a malloc()d + error message. The caller is responsible for freeing it. */ + + char *(*set_arguments) (struct gcc_base_context *self, + const char *triplet_regexp, + int argc, char **argv); + + /* Set the file name of the program to compile. The string is + copied by the method implementation, but the caller must + guarantee that the file exists through the compilation. */ + + void (*set_source_file) (struct gcc_base_context *self, const char *file); + + /* Set a callback to use for printing error messages. DATUM is + passed through to the callback unchanged. */ + + void (*set_print_callback) (struct gcc_base_context *self, + void (*print_function) (void *datum, + const char *message), + void *datum); + + /* Perform the compilation. FILENAME is the name of the resulting + object file. VERBOSE can be set to cause GCC to print some + information as it works. Returns true on success, false on + error. */ + + int /* bool */ (*compile) (struct gcc_base_context *self, + const char *filename, + int /* bool */ verbose); + + /* Destroy this object. */ + + void (*destroy) (struct gcc_base_context *self); +}; + +/* The GCC object. */ + +struct gcc_base_context +{ + /* The virtual table. */ + + const struct gcc_base_vtable *ops; +}; + +/* The name of the dummy wrapper function generated by gdb. */ + +#define GCC_FE_WRAPPER_FUNCTION "_gdb_expr" + +#ifdef __cplusplus +} +#endif + +#endif /* GCC_INTERFACE_H */ diff --git a/external/gpl3/gdb/dist/include/gdb/ChangeLog b/external/gpl3/gdb/dist/include/gdb/ChangeLog index e47428f6d702..79fd370a3f60 100644 --- a/external/gpl3/gdb/dist/include/gdb/ChangeLog +++ b/external/gpl3/gdb/dist/include/gdb/ChangeLog @@ -1,3 +1,26 @@ +2014-12-03 Joel Brobecker + + * callback.h (struct host_callback_struct) : Renamed + from "stat". + : Renamed from "fstat". + : Renamed from "lstat". + +2014-03-10 Mike Frysinger + + * remote-sim.h (sim_do_command): Add const to cmd. + +2014-03-05 Alan Modra + + Update copyright notice. + +2014-03-05 Mike Frysinger + + * remote-sim.h (sim_load): Add const to prog. + +2014-02-09 Doug Evans + + * section-scripts.h: New file. + 2013-03-15 Steve Ellcey * gdb/remote-sim.h (sim_command_completer): Make char arguments const. @@ -258,7 +281,7 @@ Wed Jul 17 19:36:38 2002 J"orn Rennecke * signals.h: New file, from gdb/defs.h. -Copyright (C) 2002-2014 Free Software Foundation, Inc. +Copyright (C) 2002-2015 Free Software Foundation, Inc. Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright diff --git a/external/gpl3/gdb/dist/include/gdb/callback.h b/external/gpl3/gdb/dist/include/gdb/callback.h index c5ed06a75134..4628b7eb2aa6 100644 --- a/external/gpl3/gdb/dist/include/gdb/callback.h +++ b/external/gpl3/gdb/dist/include/gdb/callback.h @@ -1,5 +1,5 @@ /* Remote target system call callback support. - Copyright 1997-2014 Free Software Foundation, Inc. + Copyright (C) 1997-2015 Free Software Foundation, Inc. Contributed by Cygnus Solutions. This file is part of GDB. @@ -88,9 +88,9 @@ struct host_callback_struct void (*flush_stdout) (host_callback *); int (*write_stderr) (host_callback *, const char *, int); void (*flush_stderr) (host_callback *); - int (*stat) (host_callback *, const char *, struct stat *); - int (*fstat) (host_callback *, int, struct stat *); - int (*lstat) (host_callback *, const char *, struct stat *); + int (*to_stat) (host_callback *, const char *, struct stat *); + int (*to_fstat) (host_callback *, int, struct stat *); + int (*to_lstat) (host_callback *, const char *, struct stat *); int (*ftruncate) (host_callback *, int, long); int (*truncate) (host_callback *, const char *, long); int (*pipe) (host_callback *, int *); diff --git a/external/gpl3/gdb/dist/include/gdb/fileio.h b/external/gpl3/gdb/dist/include/gdb/fileio.h index 9f5887d89db5..28673cc97481 100644 --- a/external/gpl3/gdb/dist/include/gdb/fileio.h +++ b/external/gpl3/gdb/dist/include/gdb/fileio.h @@ -1,6 +1,6 @@ /* Hosted File I/O interface definitions, for GDB, the GNU Debugger. - Copyright 2003-2014 Free Software Foundation, Inc. + Copyright (C) 2003-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/gdb/gdb-index.h b/external/gpl3/gdb/dist/include/gdb/gdb-index.h index d846b04c3384..4e3d0a754450 100644 --- a/external/gpl3/gdb/dist/include/gdb/gdb-index.h +++ b/external/gpl3/gdb/dist/include/gdb/gdb-index.h @@ -1,5 +1,5 @@ /* Public attributes of the .gdb_index section. - Copyright 2012-2014 Free Software Foundation, Inc. + Copyright (C) 2012-2015 Free Software Foundation, Inc. This file is part of GDB. diff --git a/external/gpl3/gdb/dist/include/gdb/remote-sim.h b/external/gpl3/gdb/dist/include/gdb/remote-sim.h index 985b2cd6a9b0..3dca380e4b75 100644 --- a/external/gpl3/gdb/dist/include/gdb/remote-sim.h +++ b/external/gpl3/gdb/dist/include/gdb/remote-sim.h @@ -1,6 +1,6 @@ /* This file defines the interface between the simulator and gdb. - Copyright 1993-2014 Free Software Foundation, Inc. + Copyright (C) 1993-2015 Free Software Foundation, Inc. This file is part of GDB. @@ -140,7 +140,7 @@ void sim_close (SIM_DESC sd, int quitting); Such manipulation should probably (?) occure in sim_create_inferior. */ -SIM_RC sim_load (SIM_DESC sd, char *prog, struct bfd *abfd, int from_tty); +SIM_RC sim_load (SIM_DESC sd, const char *prog, struct bfd *abfd, int from_tty); /* Prepare to run the simulated program. @@ -273,7 +273,7 @@ void sim_stop_reason (SIM_DESC sd, enum sim_stop *reason, int *sigrc); Simulators should be prepared to deal with any combination of NULL or empty CMD. */ -void sim_do_command (SIM_DESC sd, char *cmd); +void sim_do_command (SIM_DESC sd, const char *cmd); /* Complete a command based on the available sim commands. Returns an array of possible matches. */ diff --git a/external/gpl3/gdb/dist/include/gdb/section-scripts.h b/external/gpl3/gdb/dist/include/gdb/section-scripts.h new file mode 100644 index 000000000000..c4b7a1cd56f6 --- /dev/null +++ b/external/gpl3/gdb/dist/include/gdb/section-scripts.h @@ -0,0 +1,50 @@ +/* Definition of kinds of records in section .debug_gdb_scripts. + + Copyright (C) 2014-2015 Free Software Foundation, Inc. + + This file is part of GDB. + + 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, see . */ + +#ifndef GDB_SECTION_SCRIPTS_H +#define GDB_SECTION_SCRIPTS_H + +/* Each entry in section .debug_gdb_scripts begins with a byte that is used to + identify the entry. This byte is to use as we choose. + 0 is reserved so that it is never used (to catch errors). + It is recommended to avoid ASCII values 32-127 to help catch (most) cases + of forgetting to include this byte. + Other unused values needn't specify different scripting languages, + but we have no need for anything else at the moment. + + Future extension: Include the contents of the script in the section. + + These values are defined as macros so that they can be used in embedded + asms and assembler source files. */ + +/* Reserved. */ +#define SECTION_SCRIPT_ID_NEVER_USE 0 + +/* The record is a nul-terminated file name to load as a python file. */ +#define SECTION_SCRIPT_ID_PYTHON_FILE 1 + +/* Native GDB scripts are not currently supported in .debug_gdb_scripts, + but we reserve a value for it. */ +/*#define SECTION_SCRIPT_ID_GDB_FILE 2*/ + +/* The record is a nul-terminated file name to load as a guile(scheme) + file. */ +#define SECTION_SCRIPT_ID_SCHEME_FILE 3 + +#endif /* GDB_SECTION_SCRIPTS_H */ diff --git a/external/gpl3/gdb/dist/include/gdb/signals.def b/external/gpl3/gdb/dist/include/gdb/signals.def index 272b15802b8c..3f49980f6320 100644 --- a/external/gpl3/gdb/dist/include/gdb/signals.def +++ b/external/gpl3/gdb/dist/include/gdb/signals.def @@ -1,5 +1,5 @@ /* Target signal numbers for GDB and the GDB remote protocol. - Copyright 2010-2014 Free Software Foundation, Inc. + Copyright (C) 2010-2015 Free Software Foundation, Inc. This file is part of GDB. diff --git a/external/gpl3/gdb/dist/include/gdb/signals.h b/external/gpl3/gdb/dist/include/gdb/signals.h index af9f78a88874..1429e3904fdd 100644 --- a/external/gpl3/gdb/dist/include/gdb/signals.h +++ b/external/gpl3/gdb/dist/include/gdb/signals.h @@ -1,5 +1,5 @@ /* Target signal numbers for GDB and the GDB remote protocol. - Copyright 1986-2014 Free Software Foundation, Inc. + Copyright (C) 1986-2015 Free Software Foundation, Inc. This file is part of GDB. diff --git a/external/gpl3/gdb/dist/include/gdb/sim-arm.h b/external/gpl3/gdb/dist/include/gdb/sim-arm.h index c701036f9688..d1b1272b7466 100644 --- a/external/gpl3/gdb/dist/include/gdb/sim-arm.h +++ b/external/gpl3/gdb/dist/include/gdb/sim-arm.h @@ -1,6 +1,6 @@ /* This file defines the interface between the Arm simulator and GDB. - Copyright 2002-2014 Free Software Foundation, Inc. + Copyright (C) 2002-2015 Free Software Foundation, Inc. Contributed by Red Hat. diff --git a/external/gpl3/gdb/dist/include/gdb/sim-bfin.h b/external/gpl3/gdb/dist/include/gdb/sim-bfin.h index 24e403941261..82608ef71bad 100644 --- a/external/gpl3/gdb/dist/include/gdb/sim-bfin.h +++ b/external/gpl3/gdb/dist/include/gdb/sim-bfin.h @@ -1,6 +1,6 @@ /* This file defines the interface between the Blackfin simulator and GDB. - Copyright (C) 2005-2014 Free Software Foundation, Inc. + Copyright (C) 2005-2015 Free Software Foundation, Inc. Contributed by Analog Devices. This file is part of GDB. diff --git a/external/gpl3/gdb/dist/include/gdb/sim-cr16.h b/external/gpl3/gdb/dist/include/gdb/sim-cr16.h index 017d6b1db8a5..4d4da0405d0c 100644 --- a/external/gpl3/gdb/dist/include/gdb/sim-cr16.h +++ b/external/gpl3/gdb/dist/include/gdb/sim-cr16.h @@ -1,6 +1,6 @@ /* This file defines the interface between the cr16 simulator and gdb. - Copyright 2008-2014 Free Software Foundation, Inc. + Copyright (C) 2008-2015 Free Software Foundation, Inc. This file is part of GDB. diff --git a/external/gpl3/gdb/dist/include/gdb/sim-d10v.h b/external/gpl3/gdb/dist/include/gdb/sim-d10v.h index dc44311c1704..5040dd60dab4 100644 --- a/external/gpl3/gdb/dist/include/gdb/sim-d10v.h +++ b/external/gpl3/gdb/dist/include/gdb/sim-d10v.h @@ -1,6 +1,6 @@ /* This file defines the interface between the d10v simulator and gdb. - Copyright 1999-2014 Free Software Foundation, Inc. + Copyright (C) 1999-2015 Free Software Foundation, Inc. This file is part of GDB. diff --git a/external/gpl3/gdb/dist/include/gdb/sim-frv.h b/external/gpl3/gdb/dist/include/gdb/sim-frv.h index 0c573392d748..fa31e34ad3ab 100644 --- a/external/gpl3/gdb/dist/include/gdb/sim-frv.h +++ b/external/gpl3/gdb/dist/include/gdb/sim-frv.h @@ -1,6 +1,6 @@ /* This file defines the interface between the FR-V simulator and GDB. - Copyright 2003-2014 Free Software Foundation, Inc. + Copyright (C) 2003-2015 Free Software Foundation, Inc. Contributed by Red Hat. diff --git a/external/gpl3/gdb/dist/include/gdb/sim-h8300.h b/external/gpl3/gdb/dist/include/gdb/sim-h8300.h index 9020cdb49086..282143392bf9 100644 --- a/external/gpl3/gdb/dist/include/gdb/sim-h8300.h +++ b/external/gpl3/gdb/dist/include/gdb/sim-h8300.h @@ -1,5 +1,5 @@ /* This file defines the interface between the h8300 simulator and gdb. - Copyright (C) 2002-2014 Free Software Foundation, Inc. + Copyright (C) 2002-2015 Free Software Foundation, Inc. This file is part of GDB. diff --git a/external/gpl3/gdb/dist/include/gdb/sim-lm32.h b/external/gpl3/gdb/dist/include/gdb/sim-lm32.h index c81caf2a5ede..8fa5cf417e8d 100644 --- a/external/gpl3/gdb/dist/include/gdb/sim-lm32.h +++ b/external/gpl3/gdb/dist/include/gdb/sim-lm32.h @@ -1,7 +1,7 @@ /* This file defines the interface between the LM32 simulator and GDB. Contributed by Jon Beniston - Copyright (C) 2009-2014 Free Software Foundation, Inc. + Copyright (C) 2009-2015 Free Software Foundation, Inc. This file is part of GDB. diff --git a/external/gpl3/gdb/dist/include/gdb/sim-m32c.h b/external/gpl3/gdb/dist/include/gdb/sim-m32c.h index a240b818da5d..122c460e30bd 100644 --- a/external/gpl3/gdb/dist/include/gdb/sim-m32c.h +++ b/external/gpl3/gdb/dist/include/gdb/sim-m32c.h @@ -1,5 +1,5 @@ /* This file defines the interface between the m32c simulator and gdb. - Copyright (C) 2005-2014 Free Software Foundation, Inc. + Copyright (C) 2005-2015 Free Software Foundation, Inc. This file is part of GDB. diff --git a/external/gpl3/gdb/dist/include/gdb/sim-ppc.h b/external/gpl3/gdb/dist/include/gdb/sim-ppc.h index 7ae3a0dc8564..fda13e82efce 100644 --- a/external/gpl3/gdb/dist/include/gdb/sim-ppc.h +++ b/external/gpl3/gdb/dist/include/gdb/sim-ppc.h @@ -1,6 +1,6 @@ /* sim-ppc.h --- interface between PowerPC simulator and GDB. - Copyright 2004-2014 Free Software Foundation, Inc. + Copyright (C) 2004-2015 Free Software Foundation, Inc. Contributed by Red Hat. diff --git a/external/gpl3/gdb/dist/include/gdb/sim-rl78.h b/external/gpl3/gdb/dist/include/gdb/sim-rl78.h index fa5f266b7302..64b230c40f1a 100644 --- a/external/gpl3/gdb/dist/include/gdb/sim-rl78.h +++ b/external/gpl3/gdb/dist/include/gdb/sim-rl78.h @@ -1,6 +1,6 @@ /* sim-rx.h --- interface between rl78 simulator and GDB. - Copyright 2011-2014 Free Software Foundation, Inc. + Copyright (C) 2011-2015 Free Software Foundation, Inc. Contributed by Red Hat. diff --git a/external/gpl3/gdb/dist/include/gdb/sim-rx.h b/external/gpl3/gdb/dist/include/gdb/sim-rx.h index 4d727fb73254..40e18c156d7c 100644 --- a/external/gpl3/gdb/dist/include/gdb/sim-rx.h +++ b/external/gpl3/gdb/dist/include/gdb/sim-rx.h @@ -1,6 +1,6 @@ /* sim-rx.h --- interface between RX simulator and GDB. - Copyright 2008-2014 Free Software Foundation, Inc. + Copyright (C) 2008-2015 Free Software Foundation, Inc. Contributed by Red Hat. diff --git a/external/gpl3/gdb/dist/include/gdb/sim-sh.h b/external/gpl3/gdb/dist/include/gdb/sim-sh.h index 83307e98ecfe..fc42212b4068 100644 --- a/external/gpl3/gdb/dist/include/gdb/sim-sh.h +++ b/external/gpl3/gdb/dist/include/gdb/sim-sh.h @@ -1,5 +1,5 @@ /* This file defines the interface between the sh simulator and gdb. - Copyright (C) 2000-2014 Free Software Foundation, Inc. + Copyright (C) 2000-2015 Free Software Foundation, Inc. This file is part of GDB. diff --git a/external/gpl3/gdb/dist/include/getopt.h b/external/gpl3/gdb/dist/include/getopt.h index 5421cabed822..6f496b113c99 100644 --- a/external/gpl3/gdb/dist/include/getopt.h +++ b/external/gpl3/gdb/dist/include/getopt.h @@ -1,6 +1,5 @@ /* Declarations for getopt. - Copyright 1989, 1990, 1991, 1992, 1993, 1994, 1996, 1997, 1998, 2000, - 2002 Free Software Foundation, Inc. + Copyright (C) 1989-2015 Free Software Foundation, Inc. NOTE: The canonical source of this file is maintained with the GNU C Library. Bugs can be reported to bug-glibc@gnu.org. diff --git a/external/gpl3/gdb/dist/include/hashtab.h b/external/gpl3/gdb/dist/include/hashtab.h index 4bb65d6c7a2b..10d19bb33954 100644 --- a/external/gpl3/gdb/dist/include/hashtab.h +++ b/external/gpl3/gdb/dist/include/hashtab.h @@ -1,6 +1,5 @@ /* An expandable hash tables datatype. - Copyright (C) 1999, 2000, 2002, 2003, 2004, 2005, 2009, 2010 - Free Software Foundation, Inc. + Copyright (C) 1999-2015 Free Software Foundation, Inc. Contributed by Vladimir Makarov (vmakarov@cygnus.com). This program is free software; you can redistribute it and/or modify diff --git a/external/gpl3/gdb/dist/include/hp-symtab.h b/external/gpl3/gdb/dist/include/hp-symtab.h index e944e9091620..414c1774e02d 100644 --- a/external/gpl3/gdb/dist/include/hp-symtab.h +++ b/external/gpl3/gdb/dist/include/hp-symtab.h @@ -4,7 +4,7 @@ Written by the Center for Software Science at the University of Utah and by Cygnus Support. - Copyright 1994, 1995, 1998, 1999, 2003 Free Software Foundation, Inc. + Copyright (C) 1994-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/ieee.h b/external/gpl3/gdb/dist/include/ieee.h index 72fcad420f9f..d3028ecb535b 100644 --- a/external/gpl3/gdb/dist/include/ieee.h +++ b/external/gpl3/gdb/dist/include/ieee.h @@ -1,6 +1,6 @@ /* IEEE Standard 695-1980 "Universal Format for Object Modules" header file - Copyright 2001 Free Software Foundation, Inc. + Copyright (C) 2001-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/leb128.h b/external/gpl3/gdb/dist/include/leb128.h index f584f72e5a9a..56016b0f77af 100644 --- a/external/gpl3/gdb/dist/include/leb128.h +++ b/external/gpl3/gdb/dist/include/leb128.h @@ -1,5 +1,5 @@ /* Utilities for reading leb128 values. - Copyright (C) 2012 Free Software Foundation, Inc. + Copyright (C) 2012-2015 Free Software Foundation, Inc. This file is part of the libiberty library. Libiberty is free software; you can redistribute it and/or diff --git a/external/gpl3/gdb/dist/include/libiberty.h b/external/gpl3/gdb/dist/include/libiberty.h index f2cf573d1b69..b33dd65982d4 100644 --- a/external/gpl3/gdb/dist/include/libiberty.h +++ b/external/gpl3/gdb/dist/include/libiberty.h @@ -1,7 +1,6 @@ /* Function declarations for libiberty. - Copyright 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, - 2006, 2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc. + Copyright (C) 1997-2015 Free Software Foundation, Inc. Note - certain prototypes declared in this header file are for functions whoes implementation copyright does not belong to the @@ -85,11 +84,11 @@ extern char **dupargv (char **) ATTRIBUTE_MALLOC; /* Expand "@file" arguments in argv. */ -extern void expandargv PARAMS ((int *, char ***)); +extern void expandargv (int *, char ***); /* Write argv to an @-file, inserting necessary quoting. */ -extern int writeargv PARAMS ((char **, FILE *)); +extern int writeargv (char **, FILE *); /* Return the number of elements in argv. */ @@ -106,7 +105,10 @@ extern int countargv (char**); to find the declaration so provide a fully prototyped one. If it is 1, we found it so don't provide any declaration at all. */ #if !HAVE_DECL_BASENAME -#if defined (__GNU_LIBRARY__ ) || defined (__linux__) || defined (__FreeBSD__) || defined (__OpenBSD__) || defined(__NetBSD__) || defined (__CYGWIN__) || defined (__CYGWIN32__) || defined (__MINGW32__) || defined (HAVE_DECL_BASENAME) +#if defined (__GNU_LIBRARY__ ) || defined (__linux__) \ + || defined (__FreeBSD__) || defined (__OpenBSD__) || defined (__NetBSD__) \ + || defined (__CYGWIN__) || defined (__CYGWIN32__) || defined (__MINGW32__) \ + || defined (__DragonFly__) || defined (HAVE_DECL_BASENAME) extern char *basename (const char *) ATTRIBUTE_RETURNS_NONNULL ATTRIBUTE_NONNULL(1); #else /* Do not allow basename to be used if there is no prototype seen. We @@ -224,6 +226,11 @@ extern char *make_relative_prefix (const char *, const char *, extern char *make_relative_prefix_ignore_links (const char *, const char *, const char *) ATTRIBUTE_MALLOC; +/* Returns a pointer to a directory path suitable for creating temporary + files in. */ + +extern const char *choose_tmpdir (void) ATTRIBUTE_RETURNS_NONNULL; + /* Choose a temporary directory to use for scratch files. */ extern char *choose_temp_base (void) ATTRIBUTE_MALLOC ATTRIBUTE_RETURNS_NONNULL; @@ -442,6 +449,11 @@ extern struct pex_obj *pex_init (int flags, const char *pname, on Unix. */ #define PEX_BINARY_ERROR 0x80 +/* Append stdout to existing file instead of truncating it. */ +#define PEX_STDOUT_APPEND 0x100 + +/* Thes same as PEX_STDOUT_APPEND, but for STDERR. */ +#define PEX_STDERR_APPEND 0x200 /* Execute one program. Returns NULL on success. On error returns an error string (typically just the name of a system call); the error @@ -616,6 +628,11 @@ extern int pwait (int, int *, int); extern int asprintf (char **, const char *, ...) ATTRIBUTE_PRINTF_2; #endif +/* Like asprintf but allocates memory without fail. This works like + xmalloc. */ + +extern char *xasprintf (const char *, ...) ATTRIBUTE_MALLOC ATTRIBUTE_PRINTF_1; + #if !HAVE_DECL_VASPRINTF /* Like vsprintf but provides a pointer to malloc'd storage, which must be freed by the caller. */ @@ -623,6 +640,11 @@ extern int asprintf (char **, const char *, ...) ATTRIBUTE_PRINTF_2; extern int vasprintf (char **, const char *, va_list) ATTRIBUTE_PRINTF(2,0); #endif +/* Like vasprintf but allocates memory without fail. This works like + xmalloc. */ + +extern char *xvasprintf (const char *, va_list) ATTRIBUTE_MALLOC ATTRIBUTE_PRINTF(1,0); + #if defined(HAVE_DECL_SNPRINTF) && !HAVE_DECL_SNPRINTF /* Like sprintf but prints at most N characters. */ extern int snprintf (char *, size_t, const char *, ...) ATTRIBUTE_PRINTF_3; @@ -633,6 +655,37 @@ extern int snprintf (char *, size_t, const char *, ...) ATTRIBUTE_PRINTF_3; extern int vsnprintf (char *, size_t, const char *, va_list) ATTRIBUTE_PRINTF(3,0); #endif +#if defined (HAVE_DECL_STRNLEN) && !HAVE_DECL_STRNLEN +extern size_t strnlen (const char *, size_t); +#endif + +#if defined(HAVE_DECL_STRVERSCMP) && !HAVE_DECL_STRVERSCMP +/* Compare version strings. */ +extern int strverscmp (const char *, const char *); +#endif + +#if defined(HAVE_DECL_STRTOL) && !HAVE_DECL_STRTOL +extern long int strtol (const char *nptr, + char **endptr, int base); +#endif + +#if defined(HAVE_DECL_STRTOUL) && !HAVE_DECL_STRTOUL +extern unsigned long int strtoul (const char *nptr, + char **endptr, int base); +#endif + +#if defined(HAVE_LONG_LONG) && defined(HAVE_DECL_STRTOLL) && !HAVE_DECL_STRTOLL +__extension__ +extern long long int strtoll (const char *nptr, + char **endptr, int base); +#endif + +#if defined(HAVE_LONG_LONG) && defined(HAVE_DECL_STRTOULL) && !HAVE_DECL_STRTOULL +__extension__ +extern unsigned long long int strtoull (const char *nptr, + char **endptr, int base); +#endif + #if defined(HAVE_DECL_STRVERSCMP) && !HAVE_DECL_STRVERSCMP /* Compare version strings. */ extern int strverscmp (const char *, const char *); diff --git a/external/gpl3/gdb/dist/include/longlong.h b/external/gpl3/gdb/dist/include/longlong.h index 5f00e548a709..4f2c4f5dfcc0 100644 --- a/external/gpl3/gdb/dist/include/longlong.h +++ b/external/gpl3/gdb/dist/include/longlong.h @@ -1,5 +1,5 @@ /* longlong.h -- definitions for mixed size 32/64 bit arithmetic. - Copyright (C) 1991-2013 Free Software Foundation, Inc. + Copyright (C) 1991-2015 Free Software Foundation, Inc. This file is part of the GNU C Library. @@ -122,6 +122,22 @@ extern const UQItype __clz_tab[256] attribute_hidden; #define __AND_CLOBBER_CC , "cc" #endif /* __GNUC__ < 2 */ +#if defined (__aarch64__) + +#if W_TYPE_SIZE == 32 +#define count_leading_zeros(COUNT, X) ((COUNT) = __builtin_clz (X)) +#define count_trailing_zeros(COUNT, X) ((COUNT) = __builtin_ctz (X)) +#define COUNT_LEADING_ZEROS_0 32 +#endif /* W_TYPE_SIZE == 32 */ + +#if W_TYPE_SIZE == 64 +#define count_leading_zeros(COUNT, X) ((COUNT) = __builtin_clzll (X)) +#define count_trailing_zeros(COUNT, X) ((COUNT) = __builtin_ctzll (X)) +#define COUNT_LEADING_ZEROS_0 64 +#endif /* W_TYPE_SIZE == 64 */ + +#endif /* __aarch64__ */ + #if defined (__alpha) && W_TYPE_SIZE == 64 #define umul_ppmm(ph, pl, m0, m1) \ do { \ @@ -467,7 +483,7 @@ extern UDItype __umulsidi3 (USItype, USItype); #define UDIV_TIME 40 #endif /* 80x86 */ -#if (defined (__x86_64__) || defined (__i386__)) && W_TYPE_SIZE == 64 +#if defined (__x86_64__) && W_TYPE_SIZE == 64 #define add_ssaaaa(sh, sl, ah, al, bh, bl) \ __asm__ ("add{q} {%5,%1|%1,%5}\n\tadc{q} {%3,%0|%0,%3}" \ : "=r" ((UDItype) (sh)), \ @@ -832,7 +848,7 @@ extern UDItype __umulsidi3 (USItype, USItype); #define UMUL_TIME 10 #define UDIV_TIME 100 -#if (__mips == 32 || __mips == 64) && ! __mips16 +#if (__mips == 32 || __mips == 64) && ! defined (__mips16) #define count_leading_zeros(COUNT,X) ((COUNT) = __builtin_clz (X)) #define COUNT_LEADING_ZEROS_0 32 #endif @@ -1671,7 +1687,8 @@ extern UHItype __stormy16_count_leading_zeros (UHItype); #if !defined (udiv_qrnnd) && defined (sdiv_qrnnd) #define udiv_qrnnd(q, r, nh, nl, d) \ do { \ - USItype __r; \ + extern UWtype __udiv_w_sdiv (UWtype *, UWtype, UWtype, UWtype); \ + UWtype __r; \ (q) = __udiv_w_sdiv (&__r, nh, nl, d); \ (r) = __r; \ } while (0) diff --git a/external/gpl3/gdb/dist/include/lto-symtab.h b/external/gpl3/gdb/dist/include/lto-symtab.h index 9312c5d9d33a..878d0502c958 100644 --- a/external/gpl3/gdb/dist/include/lto-symtab.h +++ b/external/gpl3/gdb/dist/include/lto-symtab.h @@ -1,5 +1,5 @@ /* Data types used in the IL symbol table. - Copyright (C) 2009 Free Software Foundation, Inc. + Copyright (C) 2009-2015 Free Software Foundation, Inc. Contributed by Rafael Espindola This file is part of GCC. diff --git a/external/gpl3/gdb/dist/include/mach-o/ChangeLog b/external/gpl3/gdb/dist/include/mach-o/ChangeLog index a36c546133db..8df85c58744c 100644 --- a/external/gpl3/gdb/dist/include/mach-o/ChangeLog +++ b/external/gpl3/gdb/dist/include/mach-o/ChangeLog @@ -1,3 +1,38 @@ +2015-01-01 Alan Modra + + Update year range in copyright notice of all files. + +2014-04-16 Tristan Gingold + + * loader.h: Add macros for rebase, bind and export constants. + +2014-04-16 Tristan Gingold + + * loader.h (BFD_MACH_O_CPU_ARCH_MASK, BFD_MACH_O_CPU_ARCH_ABI64) + (BFD_MACH_O_CPU_SUBTYPE_MASK, BFD_MACH_O_CPU_SUBTYPE_LIB64): Define. + +2014-04-03 Tristan Gingold + + * unwind.h (mach_o_compact_unwind_64): Fix typo in personality. + +2014-04-02 Tristan Gingold + + * external.h (mach_o_prebound_dylib_command_external) + (mach_o_prebind_cksum_command_external) + (mach_o_twolevel_hints_command_external): New types. + +2014-03-26 Tristan Gingold + + * loader.h (bfd_mach_o_cpu_type): Add BFD_MACH_O_CPU_TYPE_ARM64. + +2014-03-17 Tristan Gingold + + * unwind.h: New file. + +2014-03-05 Alan Modra + + Update copyright years. + 2012-11-14 Tristan Gingold * external.h (mach_o_entry_point_command_external) @@ -6,7 +41,7 @@ * loader.h (bfd_mach_o_load_command_type): Add BFD_MACH_O_LC_MAIN, BFD_MACH_O_LC_DATA_IN_CODE, - BFD_MACH_O_LC_SOURCE_VERSION and BFD_MACH_O_LC_DYLIB_CODE_SIGN_DRS. + BFD_MACH_O_LC_SOURCE_VERSION and BFD_MACH_O_LC_DYLIB_CODE_SIGN_DRS. (BFD_MACH_O_REFERENCE_MASK): Adjust value. (BFD_MACH_O_N_REF_TO_WEAK): New definition. (BFD_MACH_O_N_ARM_THUMB_DEF, BFD_MACH_O_N_SYMBOL_RESOLVER): Likewise. @@ -67,7 +102,7 @@ * loader.h: New file. -Copyright (C) 2011-2012 Free Software Foundation, Inc. +Copyright (C) 2011-2015 Free Software Foundation, Inc. Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright diff --git a/external/gpl3/gdb/dist/include/mach-o/arm.h b/external/gpl3/gdb/dist/include/mach-o/arm.h index f37ff77e229a..18b12c16fcaa 100644 --- a/external/gpl3/gdb/dist/include/mach-o/arm.h +++ b/external/gpl3/gdb/dist/include/mach-o/arm.h @@ -1,6 +1,5 @@ /* Mach-O arm declarations for BFD. - Copyright 2012 - Free Software Foundation, Inc. + Copyright (C) 2012-2015 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/mach-o/codesign.h b/external/gpl3/gdb/dist/include/mach-o/codesign.h index ee2f792acc3e..32da64e7ab4e 100644 --- a/external/gpl3/gdb/dist/include/mach-o/codesign.h +++ b/external/gpl3/gdb/dist/include/mach-o/codesign.h @@ -1,6 +1,5 @@ /* Mach-O support for BFD. - Copyright 2011 - Free Software Foundation, Inc. + Copyright (C) 2011-2015 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/mach-o/external.h b/external/gpl3/gdb/dist/include/mach-o/external.h index 4b0a83e80dc1..34393d2d58bf 100644 --- a/external/gpl3/gdb/dist/include/mach-o/external.h +++ b/external/gpl3/gdb/dist/include/mach-o/external.h @@ -1,6 +1,5 @@ /* Mach-O support for BFD. - Copyright 2011, 2012 - Free Software Foundation, Inc. + Copyright (C) 2011-2015 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. @@ -288,6 +287,24 @@ struct mach_o_dyld_info_command_external unsigned char export_size[4]; }; +struct mach_o_prebound_dylib_command_external +{ + unsigned char name[4]; + unsigned char nmodules[4]; + unsigned char linked_modules[4]; +}; + +struct mach_o_prebind_cksum_command_external +{ + unsigned char cksum[4]; +}; + +struct mach_o_twolevel_hints_command_external +{ + unsigned char offset[4]; + unsigned char nhints[4]; +}; + struct mach_o_version_min_command_external { unsigned char version[4]; diff --git a/external/gpl3/gdb/dist/include/mach-o/loader.h b/external/gpl3/gdb/dist/include/mach-o/loader.h index 952bc8f4fdc7..cd25baa146de 100644 --- a/external/gpl3/gdb/dist/include/mach-o/loader.h +++ b/external/gpl3/gdb/dist/include/mach-o/loader.h @@ -1,6 +1,5 @@ /* Mach-O support for BFD. - Copyright 2011, 2012 - Free Software Foundation, Inc. + Copyright (C) 2011-2015 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. @@ -33,7 +32,10 @@ typedef enum bfd_mach_o_mach_header_magic } bfd_mach_o_mach_header_magic; -#define BFD_MACH_O_CPU_IS64BIT 0x1000000 +/* Capability bits in cpu type. */ +#define BFD_MACH_O_CPU_ARCH_MASK 0xff000000 +#define BFD_MACH_O_CPU_ARCH_ABI64 0x01000000 +#define BFD_MACH_O_CPU_IS64BIT 0x01000000 typedef enum bfd_mach_o_cpu_type { @@ -49,11 +51,19 @@ typedef enum bfd_mach_o_cpu_type BFD_MACH_O_CPU_TYPE_I860 = 15, BFD_MACH_O_CPU_TYPE_ALPHA = 16, BFD_MACH_O_CPU_TYPE_POWERPC = 18, - BFD_MACH_O_CPU_TYPE_POWERPC_64 = (BFD_MACH_O_CPU_TYPE_POWERPC | BFD_MACH_O_CPU_IS64BIT), - BFD_MACH_O_CPU_TYPE_X86_64 = (BFD_MACH_O_CPU_TYPE_I386 | BFD_MACH_O_CPU_IS64BIT) + BFD_MACH_O_CPU_TYPE_POWERPC_64 = + (BFD_MACH_O_CPU_TYPE_POWERPC | BFD_MACH_O_CPU_IS64BIT), + BFD_MACH_O_CPU_TYPE_X86_64 = + (BFD_MACH_O_CPU_TYPE_I386 | BFD_MACH_O_CPU_IS64BIT), + BFD_MACH_O_CPU_TYPE_ARM64 = + (BFD_MACH_O_CPU_TYPE_ARM | BFD_MACH_O_CPU_IS64BIT) } bfd_mach_o_cpu_type; +/* Capability bits in cpu subtype. */ +#define BFD_MACH_O_CPU_SUBTYPE_MASK 0xff000000 +#define BFD_MACH_O_CPU_SUBTYPE_LIB64 0x80000000 + typedef enum bfd_mach_o_cpu_subtype { /* i386. */ @@ -332,6 +342,63 @@ bfd_mach_o_section_attribute; #define BFD_MACH_O_INDIRECT_SYM_LOCAL 0x80000000 #define BFD_MACH_O_INDIRECT_SYM_ABS 0x40000000 +/* Constants for dyld info rebase. */ +#define BFD_MACH_O_REBASE_OPCODE_MASK 0xf0 +#define BFD_MACH_O_REBASE_IMMEDIATE_MASK 0x0f + +/* The rebase opcodes. */ +#define BFD_MACH_O_REBASE_OPCODE_DONE 0x00 +#define BFD_MACH_O_REBASE_OPCODE_SET_TYPE_IMM 0x10 +#define BFD_MACH_O_REBASE_OPCODE_SET_SEGMENT_AND_OFFSET_ULEB 0x20 +#define BFD_MACH_O_REBASE_OPCODE_ADD_ADDR_ULEB 0x30 +#define BFD_MACH_O_REBASE_OPCODE_ADD_ADDR_IMM_SCALED 0x40 +#define BFD_MACH_O_REBASE_OPCODE_DO_REBASE_IMM_TIMES 0x50 +#define BFD_MACH_O_REBASE_OPCODE_DO_REBASE_ULEB_TIMES 0x60 +#define BFD_MACH_O_REBASE_OPCODE_DO_REBASE_ADD_ADDR_ULEB 0x70 +#define BFD_MACH_O_REBASE_OPCODE_DO_REBASE_ULEB_TIMES_SKIPPING_ULEB 0x80 + +/* The rebase type. */ +#define BFD_MACH_O_REBASE_TYPE_POINTER 1 +#define BFD_MACH_O_REBASE_TYPE_TEXT_ABSOLUTE32 2 +#define BFD_MACH_O_REBASE_TYPE_TEXT_PCREL32 3 + +/* Constants for dyld info bind. */ +#define BFD_MACH_O_BIND_OPCODE_MASK 0xf0 +#define BFD_MACH_O_BIND_IMMEDIATE_MASK 0x0f + +/* The bind opcodes. */ +#define BFD_MACH_O_BIND_OPCODE_DONE 0x00 +#define BFD_MACH_O_BIND_OPCODE_SET_DYLIB_ORDINAL_IMM 0x10 +#define BFD_MACH_O_BIND_OPCODE_SET_DYLIB_ORDINAL_ULEB 0x20 +#define BFD_MACH_O_BIND_OPCODE_SET_DYLIB_SPECIAL_IMM 0x30 +#define BFD_MACH_O_BIND_OPCODE_SET_SYMBOL_TRAILING_FLAGS_IMM 0x40 +#define BFD_MACH_O_BIND_OPCODE_SET_TYPE_IMM 0x50 +#define BFD_MACH_O_BIND_OPCODE_SET_ADDEND_SLEB 0x60 +#define BFD_MACH_O_BIND_OPCODE_SET_SEGMENT_AND_OFFSET_ULEB 0x70 +#define BFD_MACH_O_BIND_OPCODE_ADD_ADDR_ULEB 0x80 +#define BFD_MACH_O_BIND_OPCODE_DO_BIND 0x90 +#define BFD_MACH_O_BIND_OPCODE_DO_BIND_ADD_ADDR_ULEB 0xa0 +#define BFD_MACH_O_BIND_OPCODE_DO_BIND_ADD_ADDR_IMM_SCALED 0xb0 +#define BFD_MACH_O_BIND_OPCODE_DO_BIND_ULEB_TIMES_SKIPPING_ULEB 0xc0 + +/* The bind types. */ +#define BFD_MACH_O_BIND_TYPE_POINTER 1 +#define BFD_MACH_O_BIND_TYPE_TEXT_ABSOLUTE32 2 +#define BFD_MACH_O_BIND_TYPE_TEXT_PCREL32 3 + +/* The special dylib. */ +#define BFD_MACH_O_BIND_SPECIAL_DYLIB_SELF 0 +#define BFD_MACH_O_BIND_SPECIAL_DYLIB_MAIN_EXECUTABLE -1 +#define BFD_MACH_O_BIND_SPECIAL_DYLIB_FLAT_LOOKUP -2 + +/* Constants for dyld info export. */ +#define BFD_MACH_O_EXPORT_SYMBOL_FLAGS_KIND_MASK 0x03 +#define BFD_MACH_O_EXPORT_SYMBOL_FLAGS_KIND_REGULAR 0x00 +#define BFD_MACH_O_EXPORT_SYMBOL_FLAGS_KIND_THREAD_LOCAL 0x01 +#define BFD_MACH_O_EXPORT_SYMBOL_FLAGS_WEAK_DEFINITION 0x04 +#define BFD_MACH_O_EXPORT_SYMBOL_FLAGS_REEXPORT 0x08 +#define BFD_MACH_O_EXPORT_SYMBOL_FLAGS_STUB_AND_RESOLVER 0x10 + /* Constants for DATA_IN_CODE entries. */ typedef enum bfd_mach_o_data_in_code_entry_kind { diff --git a/external/gpl3/gdb/dist/include/mach-o/reloc.h b/external/gpl3/gdb/dist/include/mach-o/reloc.h index bab31efeb93f..c31000867d41 100644 --- a/external/gpl3/gdb/dist/include/mach-o/reloc.h +++ b/external/gpl3/gdb/dist/include/mach-o/reloc.h @@ -1,6 +1,5 @@ /* Mach-O support for BFD. - Copyright 2011, 2012 - Free Software Foundation, Inc. + Copyright (C) 2011-2015 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/mach-o/unwind.h b/external/gpl3/gdb/dist/include/mach-o/unwind.h new file mode 100644 index 000000000000..1addb97f1473 --- /dev/null +++ b/external/gpl3/gdb/dist/include/mach-o/unwind.h @@ -0,0 +1,199 @@ +/* Mach-O compact unwind encoding. + Copyright (C) 2014-2015 Free Software Foundation, 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. */ + +#ifndef _MACH_O_UNWIND_H +#define _MACH_O_UNWIND_H + +/* Encodings bits for all cpus. */ +#define MACH_O_UNWIND_IS_NOT_FUNCTION_START 0x80000000 +#define MACH_O_UNWIND_HAS_LSDA 0x40000000 +#define MACH_O_UNWIND_PERSONALITY_MASK 0x30000000 +#define MACH_O_UNWIND_PERSONALITY_SHIFT 28 + +/* Encodings for x86-64. */ + +/* Kind of encoding (4 bits). */ +#define MACH_O_UNWIND_X86_64_MODE_MASK 0x0f000000 + +/* Frame is RBP based, using the standard sequence: push %rbp; mov %rsp, %rbp. + Non-volatile registers must be saved in the stack starting at %rbp-8 to + %rbp-2040 (offset is encoded in offset bits * 8). Registers saved are + encoded in registers bits, 3 bits per register. */ +#define MACH_O_UNWIND_X86_64_MODE_RBP_FRAME 0x01000000 +#define MACH_O_UNWIND_X86_64_RBP_FRAME_REGSITERS 0x00007FFF +#define MACH_O_UNWIND_X86_64_RBP_FRAME_OFFSET 0x00FF0000 + +/* Frameless function, with a small stack size. */ +#define MACH_O_UNWIND_X86_64_MODE_STACK_IMMD 0x02000000 +#define MACH_O_UNWIND_X86_64_FRAMELESS_STACK_SIZE 0x00FF0000 +#define MACH_O_UNWIND_X86_64_FRAMELESS_REG_COUNT 0x00001C00 +#define MACH_O_UNWIND_X86_64_FRAMELESS_REG_PERMUTATION 0x000003FF + +/* Frameless function, with a larger stack size. The stack size is the sum + of the X in subq $X,%rsp (address of X is at function + stack size bits) + and stack adjust. */ +#define MACH_O_UNWIND_X86_64_MODE_STACK_IND 0x03000000 +#define MACH_O_UNWIND_X86_64_FRAMELESS_STACK_ADJUST 0x0000E000 + +/* Use dwarf. */ +#define MACH_O_UNWIND_X86_64_MODE_DWARF 0x04000000 +#define MACH_O_UNWIND_X86_64_DWARF_SECTION_OFFSET 0x00ffffff + +/* Registers. */ +#define MACH_O_UNWIND_X86_64_REG_NONE 0 +#define MACH_O_UNWIND_X86_64_REG_RBX 1 +#define MACH_O_UNWIND_X86_64_REG_R12 2 +#define MACH_O_UNWIND_X86_64_REG_R13 3 +#define MACH_O_UNWIND_X86_64_REG_R14 4 +#define MACH_O_UNWIND_X86_64_REG_R15 5 +#define MACH_O_UNWIND_X86_64_REG_RBP 6 + +/* Encodings for x86 (almot the same as x86-64). */ + +/* Kind of encoding (4 bits). */ +#define MACH_O_UNWIND_X86_MODE_MASK 0x0f000000 + +/* Frame is EBP based, using the standard sequence: push %ebp; mov %esp, %ebp. + Non-volatile registers must be saved in the stack starting at %ebp-4 to + %ebp-240 (offset is encoded in offset bits * 4). Registers saved are + encoded in registers bits, 3 bits per register. */ +#define MACH_O_UNWIND_X86_MODE_EBP_FRAME 0x01000000 +#define MACH_O_UNWIND_X86_EBP_FRAME_REGSITERS 0x00007FFF +#define MACH_O_UNWIND_X86_EBP_FRAME_OFFSET 0x00FF0000 + +/* Frameless function, with a small stack size. */ +#define MACH_O_UNWIND_X86_MODE_STACK_IMMD 0x02000000 +#define MACH_O_UNWIND_X86_FRAMELESS_STACK_SIZE 0x00FF0000 +#define MACH_O_UNWIND_X86_FRAMELESS_REG_COUNT 0x00001C00 +#define MACH_O_UNWIND_X86_FRAMELESS_REG_PERMUTATION 0x000003FF + +/* Frameless function, with a larger stack size. The stack size is the sum + of the X in subq $X,%esp (address of X is at function + stack size bits) + and stack adjust. */ +#define MACH_O_UNWIND_X86_MODE_STACK_IND 0x03000000 +#define MACH_O_UNWIND_X86_FRAMELESS_STACK_ADJUST 0x0000E000 + +/* Use dwarf. */ +#define MACH_O_UNWIND_X86_MODE_DWARF 0x04000000 +#define MACH_O_UNWIND_X86_DWARF_SECTION_OFFSET 0x00ffffff + +/* Registers. */ +#define MACH_O_UNWIND_X86_REG_NONE 0 +#define MACH_O_UNWIND_X86_REG_EBX 1 +#define MACH_O_UNWIND_X86_REG_ECX 2 +#define MACH_O_UNWIND_X86_REG_EDX 3 +#define MACH_O_UNWIND_X86_REG_EDI 4 +#define MACH_O_UNWIND_X86_REG_ESI 5 +#define MACH_O_UNWIND_X86_REG_EBP 6 + +/* Entry in object file (in __LD,__compact_unwind section). */ + +struct mach_o_compact_unwind_32 +{ + unsigned char start[4]; + unsigned char length[4]; + unsigned char encoding[4]; + unsigned char personality[4]; + unsigned char lsda[4]; +}; + +struct mach_o_compact_unwind_64 +{ + unsigned char start[8]; + unsigned char length[4]; + unsigned char encoding[4]; + unsigned char personality[8]; + unsigned char lsda[8]; +}; + +/* Header in images (in __TEXT,__unwind_info). */ + +#define MACH_O_UNWIND_SECTION_VERSION 1 /* Current verion in header. */ +struct mach_o_unwind_info_header +{ + unsigned char version[4]; /* Currently MACH_O_UNWIND_SECTION_VERSION. */ + unsigned char encodings_array_offset[4]; + unsigned char encodings_array_count[4]; + unsigned char personality_array_offset[4]; + unsigned char personality_array_count[4]; + unsigned char index_offset[4]; + unsigned char index_count[4]; + /* Followed by: + - encodings array + These are the encodings shared, for index < encoding_array_count + - personality array + count given by personality_array_count + - index entries + count given by index_count + - lsda index entries + last offset given by lsda offset of last index_entry. + */ +}; + +struct mach_o_unwind_index_entry +{ + unsigned char function_offset[4]; + unsigned char second_level_offset[4]; + unsigned char lsda_index_offset[4]; +}; + +struct mach_o_unwind_lsda_index_entry +{ + unsigned char function_offset[4]; + unsigned char lsda_offset[4]; +}; + +/* Second level index pages. */ + +#define MACH_O_UNWIND_SECOND_LEVEL_REGULAR 2 +struct mach_o_unwind_regular_second_level_page_header +{ + unsigned char kind[4]; + unsigned char entry_page_offset[2]; + unsigned char entry_count[2]; + /* Array of entries. */ +}; + +struct mach_o_unwind_regular_second_level_entry +{ + unsigned char function_offset[4]; + unsigned char encoding[4]; +}; + +#define MACH_O_UNWIND_SECOND_LEVEL_COMPRESSED 3 +struct mach_o_unwind_compressed_second_level_page_header +{ + unsigned char kind[4]; + unsigned char entry_page_offset[2]; + unsigned char entry_count[2]; + unsigned char encodings_offset[2]; + unsigned char encodings_count[2]; + /* Followed by entries array (one word, see below). */ + /* Followed by (non-common) encodings array. */ +}; + +/* Compressed entries are one word, containing function offset and encoding + index. */ +#define MACH_O_UNWIND_INFO_COMPRESSED_ENTRY_FUNC_OFFSET(en) \ + ((en) & 0x00FFFFFF) +#define MACH_O_UNWIND_INFO_COMPRESSED_ENTRY_ENCODING_INDEX(en) \ + (((en) >> 24) & 0xFF) + +#endif /* _MACH_O_UNWIND_H */ diff --git a/external/gpl3/gdb/dist/include/mach-o/x86-64.h b/external/gpl3/gdb/dist/include/mach-o/x86-64.h index d06bc26a7dae..9d8fad479f04 100644 --- a/external/gpl3/gdb/dist/include/mach-o/x86-64.h +++ b/external/gpl3/gdb/dist/include/mach-o/x86-64.h @@ -1,6 +1,5 @@ /* Mach-O support for BFD. - Copyright 2011 - Free Software Foundation, Inc. + Copyright (C) 2011-2015 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/md5.h b/external/gpl3/gdb/dist/include/md5.h index 6da2fefe1611..909f7b4df13c 100644 --- a/external/gpl3/gdb/dist/include/md5.h +++ b/external/gpl3/gdb/dist/include/md5.h @@ -1,6 +1,6 @@ /* md5.h - Declaration of functions and data types used for MD5 sum computing library functions. - Copyright 1995, 1996, 2000 Free Software Foundation, Inc. + Copyright (C) 1995-2015 Free Software Foundation, Inc. NOTE: The canonical source of this file is maintained with the GNU C Library. Bugs can be reported to bug-glibc@prep.ai.mit.edu. diff --git a/external/gpl3/gdb/dist/include/nlm/ChangeLog b/external/gpl3/gdb/dist/include/nlm/ChangeLog index 9d5f54b17f80..7f0ce047f96c 100644 --- a/external/gpl3/gdb/dist/include/nlm/ChangeLog +++ b/external/gpl3/gdb/dist/include/nlm/ChangeLog @@ -1,3 +1,11 @@ +2015-01-01 Alan Modra + + Update year range in copyright notice of all files. + +2014-03-05 Alan Modra + + Update copyright years. + 2010-04-15 Nick Clifton * alpha-ext.h: Update copyright notice to use GPLv3. @@ -105,7 +113,7 @@ support. -Copyright (C) 1993-2012 Free Software Foundation, Inc. +Copyright (C) 1993-2015 Free Software Foundation, Inc. Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright diff --git a/external/gpl3/gdb/dist/include/nlm/alpha-ext.h b/external/gpl3/gdb/dist/include/nlm/alpha-ext.h index 7dc65688f20e..dd8fd99d473a 100644 --- a/external/gpl3/gdb/dist/include/nlm/alpha-ext.h +++ b/external/gpl3/gdb/dist/include/nlm/alpha-ext.h @@ -1,5 +1,5 @@ /* Alpha NLM (NetWare Loadable Module) support for BFD. - Copyright 1993, 2005, 2010 Free Software Foundation, Inc. + Copyright (C) 1993-2015 Free Software Foundation, Inc. By Ian Lance Taylor, Cygnus Support This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/nlm/common.h b/external/gpl3/gdb/dist/include/nlm/common.h index fcd290e0c7a2..ea8240ec3202 100644 --- a/external/gpl3/gdb/dist/include/nlm/common.h +++ b/external/gpl3/gdb/dist/include/nlm/common.h @@ -1,5 +1,5 @@ /* NLM (NetWare Loadable Module) support for BFD. - Copyright 1993, 2001, 2005, 2010 Free Software Foundation, Inc. + Copyright (C) 1993-2015 Free Software Foundation, Inc. Written by Fred Fish @ Cygnus Support diff --git a/external/gpl3/gdb/dist/include/nlm/external.h b/external/gpl3/gdb/dist/include/nlm/external.h index eebd1cca9253..ed749f5ad944 100644 --- a/external/gpl3/gdb/dist/include/nlm/external.h +++ b/external/gpl3/gdb/dist/include/nlm/external.h @@ -1,5 +1,5 @@ /* NLM (NetWare Loadable Module) support for BFD. - Copyright 1993, 1994, 2005, 2010 Free Software Foundation, Inc. + Copyright (C) 1993-2015 Free Software Foundation, Inc. Written by Fred Fish @ Cygnus Support diff --git a/external/gpl3/gdb/dist/include/nlm/i386-ext.h b/external/gpl3/gdb/dist/include/nlm/i386-ext.h index 4de8b340d412..063ce1e1d25d 100644 --- a/external/gpl3/gdb/dist/include/nlm/i386-ext.h +++ b/external/gpl3/gdb/dist/include/nlm/i386-ext.h @@ -1,5 +1,5 @@ /* i386 NLM (NetWare Loadable Module) support for BFD. - Copyright 1993, 2005, 2010 Free Software Foundation, Inc. + Copyright (C) 1993-2015 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/nlm/internal.h b/external/gpl3/gdb/dist/include/nlm/internal.h index 51e1f00e9809..174bfc40b99f 100644 --- a/external/gpl3/gdb/dist/include/nlm/internal.h +++ b/external/gpl3/gdb/dist/include/nlm/internal.h @@ -1,5 +1,5 @@ /* NLM (NetWare Loadable Module) support for BFD. - Copyright 1993, 1994, 2003, 2005, 2010 Free Software Foundation, Inc. + Copyright (C) 1993-2015 Free Software Foundation, Inc. Written by Fred Fish @ Cygnus Support. diff --git a/external/gpl3/gdb/dist/include/nlm/ppc-ext.h b/external/gpl3/gdb/dist/include/nlm/ppc-ext.h index 026984b85d07..2d95f190890c 100644 --- a/external/gpl3/gdb/dist/include/nlm/ppc-ext.h +++ b/external/gpl3/gdb/dist/include/nlm/ppc-ext.h @@ -1,5 +1,5 @@ /* PowerPC NLM (NetWare Loadable Module) support for BFD. - Copyright (C) 1994, 2005, 2010 Free Software Foundation, Inc. + Copyright (C) 1994-2015 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/nlm/sparc32-ext.h b/external/gpl3/gdb/dist/include/nlm/sparc32-ext.h index a5c78e34baea..e66a3dbadd2b 100644 --- a/external/gpl3/gdb/dist/include/nlm/sparc32-ext.h +++ b/external/gpl3/gdb/dist/include/nlm/sparc32-ext.h @@ -1,5 +1,5 @@ /* SPARC NLM (NetWare Loadable Module) support for BFD. - Copyright 1993, 2005, 2010 Free Software Foundation, Inc. + Copyright (C) 1993-2015 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/oasys.h b/external/gpl3/gdb/dist/include/oasys.h index 92d5c266f3dd..7a5730ef5ad2 100644 --- a/external/gpl3/gdb/dist/include/oasys.h +++ b/external/gpl3/gdb/dist/include/oasys.h @@ -1,6 +1,6 @@ /* Oasys object format header file for BFD. - Copyright 2001, 2010 Free Software Foundation, Inc. + Copyright (C) 2001-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/objalloc.h b/external/gpl3/gdb/dist/include/objalloc.h index 52857663ba24..2c0635090898 100644 --- a/external/gpl3/gdb/dist/include/objalloc.h +++ b/external/gpl3/gdb/dist/include/objalloc.h @@ -1,5 +1,5 @@ /* objalloc.h -- routines to allocate memory for objects - Copyright 1997-2012 Free Software Foundation, Inc. + Copyright (C) 1997-2015 Free Software Foundation, Inc. Written by Ian Lance Taylor, Cygnus Solutions. This program is free software; you can redistribute it and/or modify it diff --git a/external/gpl3/gdb/dist/include/obstack.h b/external/gpl3/gdb/dist/include/obstack.h index 23487ba4f4ae..9759af48ffea 100644 --- a/external/gpl3/gdb/dist/include/obstack.h +++ b/external/gpl3/gdb/dist/include/obstack.h @@ -1,7 +1,5 @@ /* obstack.h - object stack macros - Copyright 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1996, 1997, 1998, - 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2008 - Free Software Foundation, Inc. + Copyright (C) 1988-2015 Free Software Foundation, Inc. NOTE: The canonical source of this file is maintained with the GNU C Library. diff --git a/external/gpl3/gdb/dist/include/opcode/ChangeLog b/external/gpl3/gdb/dist/include/opcode/ChangeLog index 16356843c1d7..a5e79f48f1cf 100644 --- a/external/gpl3/gdb/dist/include/opcode/ChangeLog +++ b/external/gpl3/gdb/dist/include/opcode/ChangeLog @@ -1,3 +1,197 @@ +2015-01-01 Alan Modra + + Update year range in copyright notice of all files. + +2014-12-27 Anthony Green + + * moxie.h (MOXIE_F1_AiB2, MOXIE_F1_ABi2): Renamed from + MOXIE_F1_AiB4 and MOXIE_F1_ABi2. + +2014-12-06 Eric Botcazou + + * visium.h: New file. + +2014-11-28 Sandra Loosemore + + * nios2.h (NIOS2_INSN_ADDI, NIOS2_INSN_ANDI): Delete. + (NIOS2_INSN_ORI, NIOS2_INSN_XORI): Delete. + (NIOS2_INSN_OPTARG): Renumber. + +2014-11-06 Sandra Loosemore + + * nios2.h (nios2_find_opcode_hash): Add mach parameter to + declaration. Fix obsolete comment. + +2014-10-23 Sandra Loosemore + + * nios2.h (enum iw_format_type): New. + (struct nios2_opcode): Update comments. Add size and format fields. + (NIOS2_INSN_OPTARG): New. + (REG_NORMAL, REG_CONTROL, REG_COPROCESSOR): New. + (struct nios2_reg): Add regtype field. + (GET_INSN_FIELD, SET_INSN_FIELD): Delete. + (IW_A_LSB, IW_A_MSB, IW_A_SZ, IW_A_MASK): Delete. + (IW_B_LSB, IW_B_MSB, IW_B_SZ, IW_B_MASK): Delete. + (IW_C_LSB, IW_C_MSB, IW_C_SZ, IW_C_MASK): Delete. + (IW_IMM16_LSB, IW_IMM16_MSB, IW_IMM16_SZ, IW_IMM16_MASK): Delete. + (IW_IMM26_LSB, IW_IMM26_MSB, IW_IMM26_SZ, IW_IMM26_MASK): Delete. + (IW_OP_LSB, IW_OP_MSB, IW_OP_SZ, IW_OP_MASK): Delete. + (IW_OPX_LSB, IW_OPX_MSB, IW_OPX_SZ, IW_OPX_MASK): Delete. + (IW_SHIFT_IMM5_LSB, IW_SHIFT_IMM5_MSB): Delete. + (IW_SHIFT_IMM5_SZ, IW_SHIFT_IMM5_MASK): Delete. + (IW_CONTROL_REGNUM_LSB, IW_CONTROL_REGNUM_MSB): Delete. + (IW_CONTROL_REGNUM_SZ, IW_CONTROL_REGNUM_MASK): Delete. + (OP_MASK_OP, OP_SH_OP): Delete. + (OP_MASK_IOP, OP_SH_IOP): Delete. + (OP_MASK_IRD, OP_SH_IRD): Delete. + (OP_MASK_IRT, OP_SH_IRT): Delete. + (OP_MASK_IRS, OP_SH_IRS): Delete. + (OP_MASK_ROP, OP_SH_ROP): Delete. + (OP_MASK_RRD, OP_SH_RRD): Delete. + (OP_MASK_RRT, OP_SH_RRT): Delete. + (OP_MASK_RRS, OP_SH_RRS): Delete. + (OP_MASK_JOP, OP_SH_JOP): Delete. + (OP_MASK_IMM26, OP_SH_IMM26): Delete. + (OP_MASK_RCTL, OP_SH_RCTL): Delete. + (OP_MASK_IMM5, OP_SH_IMM5): Delete. + (OP_MASK_CACHE_OPX, OP_SH_CACHE_OPX): Delete. + (OP_MASK_CACHE_RRS, OP_SH_CACHE_RRS): Delete. + (OP_MASK_CUSTOM_A, OP_SH_CUSTOM_A): Delete. + (OP_MASK_CUSTOM_B, OP_SH_CUSTOM_B): Delete. + (OP_MASK_CUSTOM_C, OP_SH_CUSTOM_C): Delete. + (OP_MASK_CUSTOM_N, OP_SH_CUSTOM_N): Delete. + (OP_, OPX_, OP_MATCH_, OPX_MATCH_): Delete. + (OP_MASK_, OP_MASK): Delete. + (GET_IW_A, GET_IW_B, GET_IW_C, GET_IW_CONTROL_REGNUM): Delete. + (GET_IW_IMM16, GET_IW_IMM26, GET_IW_OP, GET_IW_OPX): Delete. + Include nios2r1.h to define new instruction opcode constants + and accessors. + (nios2_builtin_opcodes): Rename to nios2_r1_opcodes. + (bfd_nios2_num_builtin_opcodes): Rename to nios2_num_r1_opcodes. + (bfd_nios2_num_opcodes): Rename to nios2_num_opcodes. + (NUMOPCODES, NUMREGISTERS): Delete. + * nios2r1.h: New file. + +2014-10-17 Jose E. Marchesi + + * sparc.h (HWCAP2_VIS3B): Documentation improved. + +2014-10-09 Jose E. Marchesi + + * sparc.h (sparc_opcode): new field `hwcaps2'. + (HWCAP2_FJATHPLUS): New define. + (HWCAP2_VIS3B): Likewise. + (HWCAP2_ADP): Likewise. + (HWCAP2_SPARC5): Likewise. + (HWCAP2_MWAIT): Likewise. + (HWCAP2_XMPMUL): Likewise. + (HWCAP2_XMONT): Likewise. + (HWCAP2_NSEC): Likewise. + (HWCAP2_FJATHHPC): Likewise. + (HWCAP2_FJDES): Likewise. + (HWCAP2_FJAES): Likewise. + Document the new operand kind `{', corresponding to the mcdper + ancillary state register. + Document the new operand kind }, which represents frsd floating + point registers (double precision) which must be the same than + frs1 in its containing instruction. + +2014-09-16 Kuan-Lin Chen + + * nds32.h: Add new opcode declaration. + +2014-09-15 Andrew Bennett + Matthew Fortune + + * mips.h (mips_operand_type): Add new entries: OP_SAME_RS_RT, + OP_CHECK_PREV and OP_NON_ZERO_REG. Add descriptions for the MIPS R6 + instruction arguments: -a, -b, -d, -s, -t, -u, -v, -w, -x, -y, -A, -B, + +I, +O, +R, +:, +\, +", +; + (mips_check_prev_operand): New struct. + (INSN2_FORBIDDEN_SLOT): New define. + (INSN_ISA32R6): New define. + (INSN_ISA64R6): New define. + (INSN_UPTO32R6): New define. + (INSN_UPTO64R6): New define. + (mips_isa_table): Add INSN_UPTO32R6 and INSN_UPTO64R6. + (ISA_MIPS32R6): New define. + (ISA_MIPS64R6): New define. + (CPU_MIPS32R6): New define. + (CPU_MIPS64R6): New define. + (cpu_is_member): Add cases for CPU_MIPS32R6, and CPU_MIPS64R6. + +2014-09-03 Jiong Wang + + * aarch64.h (AARCH64_FEATURE_LSE): New feature added. + (aarch64_opnd): Add AARCH64_OPND_PAIRREG. + (aarch64_insn_class): Add lse_atomic. + (F_LSE_SZ): New field added. + (opcode_has_special_coder): Recognize F_LSE_SZ. + +2014-08-26 Maciej W. Rozycki + + * mips.h: Document the move of `MICROMIPSOP_*_CODE10' from `B' + over to `+J'. + +2014-07-29 Matthew Fortune + + * mips.h (INSN_LOAD_COPROC_DELAY): Rename to... + (INSN_LOAD_COPROC): New define. + (INSN_COPROC_MOVE_DELAY): Rename to... + (INSN_COPROC_MOVE): New define. + +2014-07-01 Barney Stratford + Senthil Kumar Selvaraj + Pitchumani Sivanupandi + Soundararajan + + * avr.h (AVR_ISA_TINY): Define avrtiny specific ISA. + (AVR_ISA_2xxxa): Define ISA without LPM. + (AVR_ISA_AVRTINY): Define avrtiny arch ISA. + Add doc for contraint used in 16 bit lds/sts. + Adjust ISA group for icall, ijmp, pop and push. + Add 16 bit lds/sts encoding and update 32 bit lds/sts constraints. + +2014-05-19 Nick Clifton + + * msp430.h (struct msp430_operand_s): Add vshift field. + +2014-05-07 Andrew Bennett + + * mips.h (INSN_ISA_MASK): Updated. + (INSN_ISA32R3): New define. + (INSN_ISA32R5): New define. + (INSN_ISA64R3): New define. + (INSN_ISA64R5): New define. + (INSN_ISA64, INSN_ISA64R2, INSN_ISA3_32, INSN_ISA3_32R2, INSN_ISA4_32 + INSN_ISA4_32R2, INSN_ISA5_32R2): Renumbered. + (mips_isa_table): Add entries for mips32r3, mips32r5, mips64r3 and + mips64r5. + (INSN_UPTO32R3): New define. + (INSN_UPTO32R5): New define. + (INSN_UPTO64R3): New define. + (INSN_UPTO64R5): New define. + (ISA_MIPS32R3): New define. + (ISA_MIPS32R5): New define. + (ISA_MIPS64R3): New define. + (ISA_MIPS64R5): New define. + (CPU_MIPS32R3): New define. + (CPU_MIPS32R5): New define. + (CPU_MIPS64R3): New define. + (CPU_MIPS64R5): New define. + +2014-05-01 Richard Sandiford + + * mips.h (mips_isa_table): Avoid hard-coding INSN_ISA* values. + +2014-04-22 Christian Svensson + + * or32.h: Delete. + +2014-03-05 Alan Modra + + Update copyright years. + 2013-12-16 Andrew Bennett * mips.h: Updated description of +o, +u, +v and +w for MIPS and @@ -1952,7 +2146,7 @@ For older changes see ChangeLog-9103 -Copyright (C) 2004-2012 Free Software Foundation, Inc. +Copyright (C) 2004-2015 Free Software Foundation, Inc. Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright diff --git a/external/gpl3/gdb/dist/include/opcode/aarch64.h b/external/gpl3/gdb/dist/include/opcode/aarch64.h index 053294e33588..7130d2dd0c6e 100644 --- a/external/gpl3/gdb/dist/include/opcode/aarch64.h +++ b/external/gpl3/gdb/dist/include/opcode/aarch64.h @@ -1,6 +1,6 @@ /* AArch64 assembler/disassembler support. - Copyright 2009, 2010, 2011, 2012, 2013 Free Software Foundation, Inc. + Copyright (C) 2009-2015 Free Software Foundation, Inc. Contributed by ARM Ltd. This file is part of GNU Binutils. @@ -38,6 +38,7 @@ typedef uint32_t aarch64_insn; #define AARCH64_FEATURE_FP 0x00020000 /* FP instructions. */ #define AARCH64_FEATURE_SIMD 0x00040000 /* SIMD instructions. */ #define AARCH64_FEATURE_CRC 0x00080000 /* CRC instructions. */ +#define AARCH64_FEATURE_LSE 0x00100000 /* LSE instructions. */ /* Architectures are the sum of the base and extensions. */ #define AARCH64_ARCH_V8 AARCH64_FEATURE (AARCH64_FEATURE_V8, \ @@ -106,6 +107,7 @@ enum aarch64_opnd AARCH64_OPND_Rd_SP, /* Integer Rd or SP. */ AARCH64_OPND_Rn_SP, /* Integer Rn or SP. */ + AARCH64_OPND_PAIRREG, /* Paired register operand. */ AARCH64_OPND_Rm_EXT, /* Integer Rm extended. */ AARCH64_OPND_Rm_SFT, /* Integer Rm shifted. */ @@ -340,6 +342,7 @@ enum aarch64_insn_class loadlit, log_imm, log_shift, + lse_atomic, movewide, pcreladdr, ic_system, @@ -550,7 +553,9 @@ extern aarch64_opcode aarch64_opcode_table[]; #define F_N (1 << 23) /* Opcode dependent field. */ #define F_OD(X) (((X) & 0x7) << 24) -/* Next bit is 27. */ +/* Instruction has the field of 'sz'. */ +#define F_LSE_SZ (1 << 27) +/* Next bit is 28. */ static inline bfd_boolean alias_opcode_p (const aarch64_opcode *opcode) @@ -599,7 +604,7 @@ get_opcode_dependent_value (const aarch64_opcode *opcode) static inline bfd_boolean opcode_has_special_coder (const aarch64_opcode *opcode) { - return (opcode->flags & (F_SF | F_SIZEQ | F_FPTYPE | F_SSIZE | F_T + return (opcode->flags & (F_SF | F_LSE_SZ | F_SIZEQ | F_FPTYPE | F_SSIZE | F_T | F_GPRSIZE_IN_Q | F_LDS_SIZE | F_MISC | F_N | F_COND)) ? TRUE : FALSE; } diff --git a/external/gpl3/gdb/dist/include/opcode/alpha.h b/external/gpl3/gdb/dist/include/opcode/alpha.h index 2c0d4f6cc740..3eda733f3811 100644 --- a/external/gpl3/gdb/dist/include/opcode/alpha.h +++ b/external/gpl3/gdb/dist/include/opcode/alpha.h @@ -1,5 +1,5 @@ /* alpha.h -- Header file for Alpha opcode table - Copyright 1996, 1999, 2001, 2003, 2010 Free Software Foundation, Inc. + Copyright (C) 1996-2015 Free Software Foundation, Inc. Contributed by Richard Henderson , patterned after the PPC opcode table written by Ian Lance Taylor. diff --git a/external/gpl3/gdb/dist/include/opcode/arc.h b/external/gpl3/gdb/dist/include/opcode/arc.h index 695fec1ea8c8..907e4fbcd528 100644 --- a/external/gpl3/gdb/dist/include/opcode/arc.h +++ b/external/gpl3/gdb/dist/include/opcode/arc.h @@ -1,6 +1,5 @@ /* Opcode table for the ARC. - Copyright 1994, 1995, 1997, 2001, 2002, 2003, 2010 - Free Software Foundation, Inc. + Copyright (C) 1994-2015 Free Software Foundation, Inc. Contributed by Doug Evans (dje@cygnus.com). This file is part of GAS, the GNU Assembler, GDB, the GNU debugger, and diff --git a/external/gpl3/gdb/dist/include/opcode/arm.h b/external/gpl3/gdb/dist/include/opcode/arm.h index b7e4cca237f9..cd1953c6c524 100644 --- a/external/gpl3/gdb/dist/include/opcode/arm.h +++ b/external/gpl3/gdb/dist/include/opcode/arm.h @@ -1,5 +1,5 @@ /* ARM assembler/disassembler support. - Copyright 2004, 2010, 2011 Free Software Foundation, Inc. + Copyright (C) 2004-2015 Free Software Foundation, Inc. This file is part of GDB and GAS. @@ -78,10 +78,11 @@ #define FPU_VFP_EXT_FP16 0x00100000 /* Half-precision extensions. */ #define FPU_NEON_EXT_FMA 0x00080000 /* Neon fused multiply-add */ #define FPU_VFP_EXT_FMA 0x00040000 /* VFP fused multiply-add */ -#define FPU_VFP_EXT_ARMV8 0x00020000 /* FP for ARMv8. */ +#define FPU_VFP_EXT_ARMV8 0x00020000 /* Double-precision FP for ARMv8. */ #define FPU_NEON_EXT_ARMV8 0x00010000 /* Neon for ARMv8. */ #define FPU_CRYPTO_EXT_ARMV8 0x00008000 /* Crypto for ARMv8. */ #define CRC_EXT_ARMV8 0x00004000 /* CRC32 for ARMv8. */ +#define FPU_VFP_EXT_ARMV8xD 0x00002000 /* Single-precision FP for ARMv8. */ /* Architectures are the sum of the base and extensions. The ARM ARM (rev E) defines the following: ARMv3, ARMv3M, ARMv4xM, ARMv4, ARMv4TxM, ARMv4T, @@ -153,7 +154,9 @@ #define FPU_VFP_V4D16 (FPU_VFP_V3D16 | FPU_VFP_EXT_FP16 | FPU_VFP_EXT_FMA) #define FPU_VFP_V4 (FPU_VFP_V3 | FPU_VFP_EXT_FP16 | FPU_VFP_EXT_FMA) #define FPU_VFP_V4_SP_D16 (FPU_VFP_V3xD | FPU_VFP_EXT_FP16 | FPU_VFP_EXT_FMA) -#define FPU_VFP_ARMV8 (FPU_VFP_V4 | FPU_VFP_EXT_ARMV8) +#define FPU_VFP_V5D16 (FPU_VFP_V4D16 | FPU_VFP_EXT_ARMV8xD | FPU_VFP_EXT_ARMV8) +#define FPU_VFP_V5_SP_D16 (FPU_VFP_V4_SP_D16 | FPU_VFP_EXT_ARMV8xD) +#define FPU_VFP_ARMV8 (FPU_VFP_V4 | FPU_VFP_EXT_ARMV8 | FPU_VFP_EXT_ARMV8xD) #define FPU_NEON_ARMV8 (FPU_NEON_EXT_V1 | FPU_NEON_EXT_FMA | FPU_NEON_EXT_ARMV8) #define FPU_CRYPTO_ARMV8 (FPU_CRYPTO_EXT_ARMV8) #define FPU_VFP_HARD (FPU_VFP_EXT_V1xD | FPU_VFP_EXT_V1 | FPU_VFP_EXT_V2 \ @@ -186,6 +189,8 @@ #define FPU_ARCH_VFP_V4 ARM_FEATURE(0, FPU_VFP_V4) #define FPU_ARCH_VFP_V4D16 ARM_FEATURE(0, FPU_VFP_V4D16) #define FPU_ARCH_VFP_V4_SP_D16 ARM_FEATURE(0, FPU_VFP_V4_SP_D16) +#define FPU_ARCH_VFP_V5D16 ARM_FEATURE(0, FPU_VFP_V5D16) +#define FPU_ARCH_VFP_V5_SP_D16 ARM_FEATURE(0, FPU_VFP_V5_SP_D16) #define FPU_ARCH_NEON_VFP_V4 \ ARM_FEATURE(0, FPU_VFP_V4 | FPU_NEON_EXT_V1 | FPU_NEON_EXT_FMA) #define FPU_ARCH_VFP_ARMV8 ARM_FEATURE(0, FPU_VFP_ARMV8) diff --git a/external/gpl3/gdb/dist/include/opcode/avr.h b/external/gpl3/gdb/dist/include/opcode/avr.h index f1d73ad92926..211a47d52e4d 100644 --- a/external/gpl3/gdb/dist/include/opcode/avr.h +++ b/external/gpl3/gdb/dist/include/opcode/avr.h @@ -1,6 +1,6 @@ /* Opcode table for the Atmel AVR micro controllers. - Copyright 2000, 2001, 2004, 2006, 2008, 2010, 2012 Free Software Foundation, Inc. + Copyright (C) 2000-2015 Free Software Foundation, Inc. Contributed by Denis Chertykov This program is free software; you can redistribute it and/or modify @@ -22,6 +22,7 @@ #define AVR_ISA_LPM 0x0002 /* device has LPM */ #define AVR_ISA_LPMX 0x0004 /* device has LPM Rd,Z[+] */ #define AVR_ISA_SRAM 0x0008 /* device has SRAM (LD, ST, PUSH, POP, ...) */ +#define AVR_ISA_TINY 0x0010 /* device has Tiny core specific encodings */ #define AVR_ISA_MEGA 0x0020 /* device has >8K program memory (JMP and CALL supported, no 8K wrap on RJMP and RCALL) */ #define AVR_ISA_MUL 0x0040 /* device has new core (MUL, FMUL, ...) */ @@ -37,6 +38,7 @@ #define AVR_ISA_TINY1 (AVR_ISA_1200 | AVR_ISA_LPM) #define AVR_ISA_2xxx (AVR_ISA_TINY1 | AVR_ISA_SRAM) +#define AVR_ISA_2xxxa (AVR_ISA_1200 | AVR_ISA_SRAM) /* For the attiny26 which is missing LPM Rd,Z+. */ #define AVR_ISA_2xxe (AVR_ISA_2xxx | AVR_ISA_LPMX) #define AVR_ISA_RF401 (AVR_ISA_2xxx | AVR_ISA_MOVW | AVR_ISA_LPMX) @@ -72,6 +74,9 @@ AVR_ISA_ELPM | AVR_ISA_ELPMX | AVR_ISA_SPM | \ AVR_ISA_BRK | AVR_ISA_EIND | AVR_ISA_MOVW) +#define AVR_ISA_AVRTINY (AVR_ISA_1200 | AVR_ISA_BRK | AVR_ISA_SRAM | \ + AVR_ISA_TINY) + #define REGISTER_P(x) ((x) == 'r' \ || (x) == 'd' \ || (x) == 'w' \ @@ -94,7 +99,7 @@ `ld r,b' or `st b,r' respectively - next opcode entry)? */ #define AVR_DISP0_P(x) (((x) & 0xFC07) == 0x8000) -/* constraint letters +/* Constraint letters: r - any register d - `ldi' register (r16-r31) v - `movw' even register (r0, r2, ..., r28, r30) @@ -110,6 +115,7 @@ p - Port address value from 0 to 31. (cbi, sbi, sbic, sbis) K - immediate value from 0 to 63 (used in `adiw', `sbiw') i - immediate value + j - 7 bit immediate value from 0x40 to 0xBF (for 16-bit 'lds'/'sts') l - signed pc relative offset from -64 to 63 L - signed pc relative offset from -2048 to 2047 h - absolute code address (call, jmp) @@ -156,12 +162,12 @@ AVR_INSN (set, "", "1001010001101000", 1, AVR_ISA_1200, 0x9468) AVR_INSN (sev, "", "1001010000111000", 1, AVR_ISA_1200, 0x9438) AVR_INSN (sez, "", "1001010000011000", 1, AVR_ISA_1200, 0x9418) - /* Same as {cl,se}[chinstvz] above. */ +/* Same as {cl,se}[chinstvz] above. */ AVR_INSN (bclr, "S", "100101001SSS1000", 1, AVR_ISA_1200, 0x9488) AVR_INSN (bset, "S", "100101000SSS1000", 1, AVR_ISA_1200, 0x9408) -AVR_INSN (icall,"", "1001010100001001", 1, AVR_ISA_2xxx, 0x9509) -AVR_INSN (ijmp, "", "1001010000001001", 1, AVR_ISA_2xxx, 0x9409) +AVR_INSN (icall,"", "1001010100001001", 1, AVR_ISA_2xxxa,0x9509) +AVR_INSN (ijmp, "", "1001010000001001", 1, AVR_ISA_2xxxa,0x9409) AVR_INSN (lpm, "?", "1001010111001000", 1, AVR_ISA_TINY1,0x95c8) AVR_INSN (lpm, "r,z", "1001000ddddd010+", 1, AVR_ISA_LPMX, 0x9004) @@ -190,7 +196,7 @@ AVR_INSN (or, "r,r", "001010rdddddrrrr", 1, AVR_ISA_1200, 0x2800) AVR_INSN (sbc, "r,r", "000010rdddddrrrr", 1, AVR_ISA_1200, 0x0800) AVR_INSN (sub, "r,r", "000110rdddddrrrr", 1, AVR_ISA_1200, 0x1800) - /* Shorthand for {eor,add,adc,and} r,r above. */ +/* Shorthand for {eor,add,adc,and} r,r above. */ AVR_INSN (clr, "r=r", "001001rdddddrrrr", 1, AVR_ISA_1200, 0x2400) AVR_INSN (lsl, "r=r", "000011rdddddrrrr", 1, AVR_ISA_1200, 0x0c00) AVR_INSN (rol, "r=r", "000111rdddddrrrr", 1, AVR_ISA_1200, 0x1c00) @@ -245,7 +251,7 @@ AVR_INSN (brts, "l", "111100lllllll110", 1, AVR_ISA_1200, 0xf006) AVR_INSN (brvc, "l", "111101lllllll011", 1, AVR_ISA_1200, 0xf403) AVR_INSN (brvs, "l", "111100lllllll011", 1, AVR_ISA_1200, 0xf003) - /* Same as br?? above. */ +/* Same as br?? above. */ AVR_INSN (brbc, "s,l", "111101lllllllsss", 1, AVR_ISA_1200, 0xf400) AVR_INSN (brbs, "s,l", "111100lllllllsss", 1, AVR_ISA_1200, 0xf000) @@ -261,18 +267,18 @@ AVR_INSN (dec, "r", "1001010rrrrr1010", 1, AVR_ISA_1200, 0x940a) AVR_INSN (inc, "r", "1001010rrrrr0011", 1, AVR_ISA_1200, 0x9403) AVR_INSN (lsr, "r", "1001010rrrrr0110", 1, AVR_ISA_1200, 0x9406) AVR_INSN (neg, "r", "1001010rrrrr0001", 1, AVR_ISA_1200, 0x9401) -AVR_INSN (pop, "r", "1001000rrrrr1111", 1, AVR_ISA_2xxx, 0x900f) -AVR_INSN (push, "r", "1001001rrrrr1111", 1, AVR_ISA_2xxx, 0x920f) +AVR_INSN (pop, "r", "1001000rrrrr1111", 1, AVR_ISA_2xxxa,0x900f) +AVR_INSN (push, "r", "1001001rrrrr1111", 1, AVR_ISA_2xxxa,0x920f) AVR_INSN (ror, "r", "1001010rrrrr0111", 1, AVR_ISA_1200, 0x9407) AVR_INSN (swap, "r", "1001010rrrrr0010", 1, AVR_ISA_1200, 0x9402) - /* Atomic memory operations for XMEGA. List before `sts'. */ +/* Atomic memory operations for XMEGA. List before `sts'. */ AVR_INSN (xch, "z,r", "1001001rrrrr0100", 1, AVR_ISA_RMW, 0x9204) AVR_INSN (las, "z,r", "1001001rrrrr0101", 1, AVR_ISA_RMW, 0x9205) AVR_INSN (lac, "z,r", "1001001rrrrr0110", 1, AVR_ISA_RMW, 0x9206) AVR_INSN (lat, "z,r", "1001001rrrrr0111", 1, AVR_ISA_RMW, 0x9207) - /* Known to be decoded as `nop' by the old core. */ +/* Known to be decoded as `nop' by the old core. */ AVR_INSN (movw, "v,v", "00000001ddddrrrr", 1, AVR_ISA_MOVW, 0x0100) AVR_INSN (muls, "d,d", "00000010ddddrrrr", 1, AVR_ISA_MUL, 0x0200) AVR_INSN (mulsu,"a,a", "000000110ddd0rrr", 1, AVR_ISA_MUL, 0x0300) @@ -280,21 +286,23 @@ AVR_INSN (fmul, "a,a", "000000110ddd1rrr", 1, AVR_ISA_MUL, 0x0308) AVR_INSN (fmuls,"a,a", "000000111ddd0rrr", 1, AVR_ISA_MUL, 0x0380) AVR_INSN (fmulsu,"a,a","000000111ddd1rrr", 1, AVR_ISA_MUL, 0x0388) -AVR_INSN (sts, "i,r", "1001001ddddd0000", 2, AVR_ISA_2xxx, 0x9200) -AVR_INSN (lds, "r,i", "1001000ddddd0000", 2, AVR_ISA_2xxx, 0x9000) +AVR_INSN (sts, "j,d", "10101kkkddddkkkk", 1, AVR_ISA_TINY, 0xA800) +AVR_INSN (sts, "i,r", "1001001ddddd0000", 2, AVR_ISA_2xxx, 0x9200) +AVR_INSN (lds, "d,j", "10100kkkddddkkkk", 1, AVR_ISA_TINY, 0xA000) +AVR_INSN (lds, "r,i", "1001000ddddd0000", 2, AVR_ISA_2xxx, 0x9000) - /* Special case for b+0, `e' must be next entry after `b', - b={Y=1,Z=0}, ee={X=11,Y=10,Z=00}, !=1 if -e or e+ or X. */ +/* Special case for b+0, `e' must be next entry after `b', + b={Y=1,Z=0}, ee={X=11,Y=10,Z=00}, !=1 if -e or e+ or X. */ AVR_INSN (ldd, "r,b", "10o0oo0dddddbooo", 1, AVR_ISA_2xxx, 0x8000) AVR_INSN (ld, "r,e", "100!000dddddee-+", 1, AVR_ISA_1200, 0x8000) AVR_INSN (std, "b,r", "10o0oo1rrrrrbooo", 1, AVR_ISA_2xxx, 0x8200) AVR_INSN (st, "e,r", "100!001rrrrree-+", 1, AVR_ISA_1200, 0x8200) - /* These are for devices that don't exist yet - (>128K program memory, PC = EIND:Z). */ +/* These are for devices that don't exist yet + (>128K program memory, PC = EIND:Z). */ AVR_INSN (eicall, "", "1001010100011001", 1, AVR_ISA_EIND, 0x9519) AVR_INSN (eijmp, "", "1001010000011001", 1, AVR_ISA_EIND, 0x9419) -/* DES instruction for encryption and decryption */ +/* DES instruction for encryption and decryption. */ AVR_INSN (des, "E", "10010100EEEE1011", 1, AVR_ISA_DES, 0x940B) diff --git a/external/gpl3/gdb/dist/include/opcode/bfin.h b/external/gpl3/gdb/dist/include/opcode/bfin.h index 26f019381b30..252328338fc4 100755 --- a/external/gpl3/gdb/dist/include/opcode/bfin.h +++ b/external/gpl3/gdb/dist/include/opcode/bfin.h @@ -1,5 +1,5 @@ /* bfin.h -- Header file for ADI Blackfin opcode table - Copyright 2005, 2010, 2011 Free Software Foundation, Inc. + Copyright (C) 2005-2015 Free Software Foundation, Inc. This file is part of GDB, GAS, and the GNU binutils. diff --git a/external/gpl3/gdb/dist/include/opcode/cgen.h b/external/gpl3/gdb/dist/include/opcode/cgen.h index b7e82d4dd93a..a23f0fdb0041 100644 --- a/external/gpl3/gdb/dist/include/opcode/cgen.h +++ b/external/gpl3/gdb/dist/include/opcode/cgen.h @@ -1,7 +1,6 @@ /* Header file for targets using CGEN: Cpu tools GENerator. - Copyright 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2005, 2009, 2010 - Free Software Foundation, Inc. + Copyright (C) 1996-2015 Free Software Foundation, Inc. This file is part of GDB, the GNU debugger, and the GNU Binutils. diff --git a/external/gpl3/gdb/dist/include/opcode/convex.h b/external/gpl3/gdb/dist/include/opcode/convex.h index 4643f5e06970..97df46d74212 100644 --- a/external/gpl3/gdb/dist/include/opcode/convex.h +++ b/external/gpl3/gdb/dist/include/opcode/convex.h @@ -1,5 +1,5 @@ /* Information for instruction disassembly on the Convex. - Copyright 1989, 1993, 2002, 2010 Free Software Foundation, Inc. + Copyright (C) 1989-2015 Free Software Foundation, Inc. This file is part of GDB. diff --git a/external/gpl3/gdb/dist/include/opcode/cr16.h b/external/gpl3/gdb/dist/include/opcode/cr16.h index 1f1191dc664a..ad42d14c04ff 100644 --- a/external/gpl3/gdb/dist/include/opcode/cr16.h +++ b/external/gpl3/gdb/dist/include/opcode/cr16.h @@ -1,5 +1,5 @@ /* cr16.h -- Header file for CR16 opcode and register tables. - Copyright 2007, 2008, 2010, 2013 Free Software Foundation, Inc. + Copyright (C) 2007-2015 Free Software Foundation, Inc. Contributed by M R Swami Reddy This file is part of GAS, GDB and the GNU binutils. diff --git a/external/gpl3/gdb/dist/include/opcode/cris.h b/external/gpl3/gdb/dist/include/opcode/cris.h index e57a8825c0cc..0575ddbddd56 100644 --- a/external/gpl3/gdb/dist/include/opcode/cris.h +++ b/external/gpl3/gdb/dist/include/opcode/cris.h @@ -1,5 +1,5 @@ /* cris.h -- Header file for CRIS opcode and register tables. - Copyright (C) 2000, 2001, 2004, 2010 Free Software Foundation, Inc. + Copyright (C) 2000-2015 Free Software Foundation, Inc. Contributed by Axis Communications AB, Lund, Sweden. Originally written for GAS 1.38.1 by Mikael Asker. Updated, BFDized and GNUified by Hans-Peter Nilsson. diff --git a/external/gpl3/gdb/dist/include/opcode/crx.h b/external/gpl3/gdb/dist/include/opcode/crx.h index 6081ea3548d0..fbbff92b0b24 100644 --- a/external/gpl3/gdb/dist/include/opcode/crx.h +++ b/external/gpl3/gdb/dist/include/opcode/crx.h @@ -1,5 +1,5 @@ /* crx.h -- Header file for CRX opcode and register tables. - Copyright 2004, 2010, 2012 Free Software Foundation, Inc. + Copyright (C) 2004-2015 Free Software Foundation, Inc. Contributed by Tomer Levi, NSC, Israel. Originally written for GAS 2.12 by Tomer Levi, NSC, Israel. Updates, BFDizing, GNUifying and ELF support by Tomer Levi. diff --git a/external/gpl3/gdb/dist/include/opcode/d10v.h b/external/gpl3/gdb/dist/include/opcode/d10v.h index d0e115fab202..72004cd68693 100644 --- a/external/gpl3/gdb/dist/include/opcode/d10v.h +++ b/external/gpl3/gdb/dist/include/opcode/d10v.h @@ -1,6 +1,5 @@ /* d10v.h -- Header file for D10V opcode table - Copyright 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2010 - Free Software Foundation, Inc. + Copyright (C) 1996-2015 Free Software Foundation, Inc. Written by Martin Hunt (hunt@cygnus.com), Cygnus Support This file is part of GDB, GAS, and the GNU binutils. diff --git a/external/gpl3/gdb/dist/include/opcode/d30v.h b/external/gpl3/gdb/dist/include/opcode/d30v.h index 62c041da967b..c59167e963ea 100644 --- a/external/gpl3/gdb/dist/include/opcode/d30v.h +++ b/external/gpl3/gdb/dist/include/opcode/d30v.h @@ -1,6 +1,5 @@ /* d30v.h -- Header file for D30V opcode table - Copyright 1997, 1998, 1999, 2000, 2001, 2003, 2010 - Free Software Foundation, Inc. + Copyright (C) 1997-2015 Free Software Foundation, Inc. Written by Martin Hunt (hunt@cygnus.com), Cygnus Solutions This file is part of GDB, GAS, and the GNU binutils. diff --git a/external/gpl3/gdb/dist/include/opcode/dlx.h b/external/gpl3/gdb/dist/include/opcode/dlx.h index 54dadd07277f..6b3d26f4eab8 100644 --- a/external/gpl3/gdb/dist/include/opcode/dlx.h +++ b/external/gpl3/gdb/dist/include/opcode/dlx.h @@ -1,5 +1,5 @@ /* Table of opcodes for the DLX microprocess. - Copyright 2002, 2010 Free Software Foundation, Inc. + Copyright (C) 2002-2015 Free Software Foundation, Inc. This file is part of GDB and GAS. diff --git a/external/gpl3/gdb/dist/include/opcode/h8300.h b/external/gpl3/gdb/dist/include/opcode/h8300.h index 3296debae1f5..526132d59eb0 100644 --- a/external/gpl3/gdb/dist/include/opcode/h8300.h +++ b/external/gpl3/gdb/dist/include/opcode/h8300.h @@ -1,5 +1,5 @@ /* Opcode table for the H8/300 - Copyright 1991-2013 Free Software Foundation, Inc. + Copyright (C) 1991-2015 Free Software Foundation, Inc. Written by Steve Chamberlain . This file is part of GDB, the GNU Debugger and GAS, the GNU Assembler. diff --git a/external/gpl3/gdb/dist/include/opcode/hppa.h b/external/gpl3/gdb/dist/include/opcode/hppa.h index 489ca550d7e4..379727115301 100644 --- a/external/gpl3/gdb/dist/include/opcode/hppa.h +++ b/external/gpl3/gdb/dist/include/opcode/hppa.h @@ -1,7 +1,5 @@ /* Table of opcodes for the PA-RISC. - Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, - 2001, 2002, 2003, 2004, 2005, 2006, 2009, 2010 - Free Software Foundation, Inc. + Copyright (C) 1990-2015 Free Software Foundation, Inc. Contributed by the Center for Software Science at the University of Utah (pa-gdb-bugs@cs.utah.edu). diff --git a/external/gpl3/gdb/dist/include/opcode/i370.h b/external/gpl3/gdb/dist/include/opcode/i370.h index e3b7166d2920..03bdbab109f2 100644 --- a/external/gpl3/gdb/dist/include/opcode/i370.h +++ b/external/gpl3/gdb/dist/include/opcode/i370.h @@ -1,6 +1,5 @@ /* i370.h -- Header file for S/390 opcode table - Copyright 1994, 1995, 1998, 1999, 2000, 2003, 2010 - Free Software Foundation, Inc. + Copyright (C) 1994-2015 Free Software Foundation, Inc. PowerPC version written by Ian Lance Taylor, Cygnus Support Rewritten for i370 ESA/390 support, Linas Vepstas diff --git a/external/gpl3/gdb/dist/include/opcode/i386.h b/external/gpl3/gdb/dist/include/opcode/i386.h index 6021002bc7f6..85d253372aeb 100644 --- a/external/gpl3/gdb/dist/include/opcode/i386.h +++ b/external/gpl3/gdb/dist/include/opcode/i386.h @@ -1,7 +1,5 @@ /* opcode/i386.h -- Intel 80386 opcode macros - Copyright 1989, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, - 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 - Free Software Foundation, Inc. + Copyright (C) 1989-2015 Free Software Foundation, Inc. This file is part of GAS, the GNU Assembler, and GDB, the GNU Debugger. diff --git a/external/gpl3/gdb/dist/include/opcode/i860.h b/external/gpl3/gdb/dist/include/opcode/i860.h index 7f4aafd9c2c6..841dcc4fe777 100644 --- a/external/gpl3/gdb/dist/include/opcode/i860.h +++ b/external/gpl3/gdb/dist/include/opcode/i860.h @@ -1,6 +1,5 @@ /* Table of opcodes for the i860. - Copyright 1989, 1991, 2000, 2002, 2003, 2010 - Free Software Foundation, Inc. + Copyright (C) 1989-2015 Free Software Foundation, Inc. This file is part of GAS, the GNU Assembler, and GDB, the GNU disassembler. diff --git a/external/gpl3/gdb/dist/include/opcode/i960.h b/external/gpl3/gdb/dist/include/opcode/i960.h index 7b8e1f5d5fa1..e651f09fc519 100644 --- a/external/gpl3/gdb/dist/include/opcode/i960.h +++ b/external/gpl3/gdb/dist/include/opcode/i960.h @@ -1,6 +1,6 @@ /* Basic 80960 instruction formats. - Copyright 2001-2013 Free Software Foundation, Inc. + Copyright (C) 2001-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/opcode/ia64.h b/external/gpl3/gdb/dist/include/opcode/ia64.h index 433c5058adec..0f2fd3f07ee5 100644 --- a/external/gpl3/gdb/dist/include/opcode/ia64.h +++ b/external/gpl3/gdb/dist/include/opcode/ia64.h @@ -1,6 +1,5 @@ /* ia64.h -- Header file for ia64 opcode table - Copyright (C) 1998, 1999, 2000, 2002, 2005, 2006, 2010 - Free Software Foundation, Inc. + Copyright (C) 1998-2015 Free Software Foundation, Inc. Contributed by David Mosberger-Tang This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/opcode/m68hc11.h b/external/gpl3/gdb/dist/include/opcode/m68hc11.h index 1a002008c077..66da0c4d2d05 100644 --- a/external/gpl3/gdb/dist/include/opcode/m68hc11.h +++ b/external/gpl3/gdb/dist/include/opcode/m68hc11.h @@ -1,6 +1,5 @@ /* m68hc11.h -- Header file for Motorola 68HC11 & 68HC12 opcode table - Copyright 1999, 2000, 2002, 2003, 2010, 2012 - Free Software Foundation, Inc. + Copyright (C) 1999-2015 Free Software Foundation, Inc. Written by Stephane Carrez (stcarrez@nerim.fr) This file is part of GDB, GAS, and the GNU binutils. diff --git a/external/gpl3/gdb/dist/include/opcode/m68k.h b/external/gpl3/gdb/dist/include/opcode/m68k.h index f7bd8b450e1c..aa122acce924 100644 --- a/external/gpl3/gdb/dist/include/opcode/m68k.h +++ b/external/gpl3/gdb/dist/include/opcode/m68k.h @@ -1,6 +1,5 @@ /* Opcode table header for m680[01234]0/m6888[12]/m68851. - Copyright 1989, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1999, 2001, - 2003, 2004, 2006, 2010 Free Software Foundation, Inc. + Copyright (C) 1989-2015 Free Software Foundation, Inc. This file is part of GDB, GAS, and the GNU binutils. diff --git a/external/gpl3/gdb/dist/include/opcode/m88k.h b/external/gpl3/gdb/dist/include/opcode/m88k.h index 739c0e90af88..f6d38e1306ff 100644 --- a/external/gpl3/gdb/dist/include/opcode/m88k.h +++ b/external/gpl3/gdb/dist/include/opcode/m88k.h @@ -1,6 +1,5 @@ /* Table of opcodes for the Motorola M88k family. - Copyright 1989, 1990, 1991, 1993, 2001, 2002, 2010 - Free Software Foundation, Inc. + Copyright (C) 1989-2015 Free Software Foundation, Inc. This file is part of GDB and GAS. diff --git a/external/gpl3/gdb/dist/include/opcode/metag.h b/external/gpl3/gdb/dist/include/opcode/metag.h index c9bb6680bca7..e086ffa46071 100644 --- a/external/gpl3/gdb/dist/include/opcode/metag.h +++ b/external/gpl3/gdb/dist/include/opcode/metag.h @@ -1,5 +1,5 @@ /* Imagination Technologies Meta opcode table. - Copyright (C) 2013 Free Software Foundation, Inc. + Copyright (C) 2013-2015 Free Software Foundation, Inc. Contributed by Imagination Technologies Ltd. This file is part of GDB and GAS. diff --git a/external/gpl3/gdb/dist/include/opcode/mips.h b/external/gpl3/gdb/dist/include/opcode/mips.h index 7ea0900b9a4b..9318fcce5c1d 100644 --- a/external/gpl3/gdb/dist/include/opcode/mips.h +++ b/external/gpl3/gdb/dist/include/opcode/mips.h @@ -1,7 +1,5 @@ /* mips.h. Mips opcode list for GDB, the GNU debugger. - Copyright 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, - 2003, 2004, 2005, 2008, 2009, 2010, 2013 - Free Software Foundation, Inc. + Copyright (C) 1993-2015 Free Software Foundation, Inc. Contributed by Ralph Campbell and OSF Commented and modified by Ian Lance Taylor, Cygnus Support @@ -419,7 +417,17 @@ enum mips_operand_type { OP_IMM_INDEX, /* An index selected by a register, e.g. [$2]. */ - OP_REG_INDEX + OP_REG_INDEX, + + /* The operand spans two 5-bit register fields, both of which must be set to + the source register. */ + OP_SAME_RS_RT, + + /* Described by mips_prev_operand. */ + OP_CHECK_PREV, + + /* A register operand that must not be zero. */ + OP_NON_ZERO_REG }; /* Enumerates the types of MIPS register. */ @@ -555,6 +563,18 @@ struct mips_reg_operand const unsigned char *reg_map; }; +/* Describes an operand that which must match a condition based on the + previous operand. */ +struct mips_check_prev_operand +{ + struct mips_operand root; + + bfd_boolean greater_than_ok; + bfd_boolean less_than_ok; + bfd_boolean equal_ok; + bfd_boolean zero_ok; +}; + /* Describes an operand that encodes a pair of registers. */ struct mips_reg_pair_operand { @@ -929,6 +949,28 @@ struct mips_opcode "+*" 5-bit register vector element index at bit 16 "+|" 8-bit mask at bit 16 + MIPS R6: + "+:" 11-bit mask at bit 0 + "+'" 26 bit PC relative branch target address + "+"" 21 bit PC relative branch target address + "+;" 5 bit same register in both OP_*_RS and OP_*_RT + "+I" 2bit unsigned bit position at bit 6 + "+O" 3bit unsigned bit position at bit 6 + "+R" must be program counter + "-a" (-262144 .. 262143) << 2 at bit 0 + "-b" (-131072 .. 131071) << 3 at bit 0 + "-d" Same as destination register GP + "-s" 5 bit source register specifier (OP_*_RS) not $0 + "-t" 5 bit source register specifier (OP_*_RT) not $0 + "-u" 5 bit source register specifier (OP_*_RT) greater than OP_*_RS + "-v" 5 bit source register specifier (OP_*_RT) not $0 not OP_*_RS + "-w" 5 bit source register specifier (OP_*_RT) less than or equal to OP_*_RS + "-x" 5 bit source register specifier (OP_*_RT) greater than or + equal to OP_*_RS + "-y" 5 bit source register specifier (OP_*_RT) not $0 less than OP_*_RS + "-A" symbolic offset (-262144 .. 262143) << 2 at bit 0 + "-B" symbolic offset (-131072 .. 131071) << 3 at bit 0 + Other: "()" parens surrounding optional value "," separates operands @@ -936,16 +978,21 @@ struct mips_opcode Characters used so far, for quick reference when adding more: "1234567890" - "%[]<>(),+:'@!#$*&\~" + "%[]<>(),+-:'@!#$*&\~" "ABCDEFGHIJKLMNOPQRSTUVWXYZ" "abcdefghijklopqrstuvwxz" Extension character sequences used so far ("+" followed by the following), for quick reference when adding more: "1234567890" - "~!@#$%^&*|" - "ABCEFGHJKLMNPQSTUVWXZ" + "~!@#$%^&*|:'";" + "ABCEFGHIJKLMNOPQRSTUVWXZ" "abcdefghijklmnopqrstuvwxyz" + + Extension character sequences used so far ("-" followed by the + following), for quick reference when adding more: + "AB" + "abdstuvwxy" */ /* These are the bits which may be set in the pinfo field of an @@ -975,16 +1022,16 @@ struct mips_opcode #define INSN_COP 0x00000400 /* Instruction loads value from memory. */ #define INSN_LOAD_MEMORY 0x00000800 -/* Instruction loads value from coprocessor, requiring delay. */ -#define INSN_LOAD_COPROC_DELAY 0x00001000 +/* Instruction loads value from coprocessor, (may require delay). */ +#define INSN_LOAD_COPROC 0x00001000 /* Instruction has unconditional branch delay slot. */ #define INSN_UNCOND_BRANCH_DELAY 0x00002000 /* Instruction has conditional branch delay slot. */ #define INSN_COND_BRANCH_DELAY 0x00004000 /* Conditional branch likely: if branch not taken, insn nullified. */ #define INSN_COND_BRANCH_LIKELY 0x00008000 -/* Moves to coprocessor register, requiring delay. */ -#define INSN_COPROC_MOVE_DELAY 0x00010000 +/* Moves to coprocessor register, (may require delay). */ +#define INSN_COPROC_MOVE 0x00010000 /* Loads coprocessor register from memory, requiring delay. */ #define INSN_COPROC_MEMORY_DELAY 0x00020000 /* Reads the HI register. */ @@ -1053,6 +1100,8 @@ struct mips_opcode #define INSN2_READ_GPR_16 0x00002000 /* Has an "\.x?y?z?w?" suffix based on mips_vu0_channel_mask. */ #define INSN2_VU0_CHANNEL_SUFFIX 0x00004000 +/* Instruction has a forbidden slot. */ +#define INSN2_FORBIDDEN_SLOT 0x00008000 /* Masks used to mark instructions to indicate which MIPS ISA level they were introduced in. INSN_ISA_MASK masks an enumeration that @@ -1060,7 +1109,7 @@ struct mips_opcode word constructed using these macros is a bitmask of the remaining INSN_* values below. */ -#define INSN_ISA_MASK 0x0000000ful +#define INSN_ISA_MASK 0x0000001ful /* We cannot start at zero due to ISA_UNKNOWN below. */ #define INSN_ISA1 1 @@ -1070,28 +1119,75 @@ struct mips_opcode #define INSN_ISA5 5 #define INSN_ISA32 6 #define INSN_ISA32R2 7 -#define INSN_ISA64 8 -#define INSN_ISA64R2 9 +#define INSN_ISA32R3 8 +#define INSN_ISA32R5 9 +#define INSN_ISA32R6 10 +#define INSN_ISA64 11 +#define INSN_ISA64R2 12 +#define INSN_ISA64R3 13 +#define INSN_ISA64R5 14 +#define INSN_ISA64R6 15 /* Below this point the INSN_* values correspond to combinations of ISAs. They are only for use in the opcodes table to indicate membership of a combination of ISAs that cannot be expressed using the usual inclusion ordering on the above INSN_* values. */ -#define INSN_ISA3_32 10 -#define INSN_ISA3_32R2 11 -#define INSN_ISA4_32 12 -#define INSN_ISA4_32R2 13 -#define INSN_ISA5_32R2 14 +#define INSN_ISA3_32 16 +#define INSN_ISA3_32R2 17 +#define INSN_ISA4_32 18 +#define INSN_ISA4_32R2 19 +#define INSN_ISA5_32R2 20 -/* Given INSN_ISA* values X and Y, where X ranges over INSN_ISA1 through - INSN_ISA5_32R2 and Y ranges over INSN_ISA1 through INSN_ISA64R2, - this table describes whether at least one of the ISAs described by X - is/are implemented by ISA Y. (Think of Y as the ISA level supported by - a particular core and X as the ISA level(s) at which a certain instruction - is defined.) The ISA(s) described by X is/are implemented by Y iff - (mips_isa_table[(Y & INSN_ISA_MASK) - 1] >> ((X & INSN_ISA_MASK) - 1)) & 1 - is non-zero. */ -static const unsigned int mips_isa_table[] = - { 0x0001, 0x0003, 0x0607, 0x1e0f, 0x3e1f, 0x0a23, 0x3e63, 0x3ebf, 0x3fff }; +/* The R6 definitions shown below state that they support all previous ISAs. + This is not actually true as some instructions are removed in R6. + The problem is that the removed instructions in R6 come from different + ISAs. One approach to solve this would be to describe in the membership + field of the opcode table the different ISAs an instruction belongs to. + This would require us to create a large amount of different ISA + combinations which is hard to manage. A cleaner approach (which is + implemented here) is to say that R6 is an extension of R5 and then to + deal with the removed instructions by adding instruction exclusions + for R6 in the opcode table. */ + +/* Bit INSN_ISA - 1 of INSN_UPTO is set if ISA Y includes ISA X. */ + +#define ISAF(X) (1 << (INSN_ISA##X - 1)) +#define INSN_UPTO1 ISAF(1) +#define INSN_UPTO2 INSN_UPTO1 | ISAF(2) +#define INSN_UPTO3 INSN_UPTO2 | ISAF(3) | ISAF(3_32) | ISAF(3_32R2) +#define INSN_UPTO4 INSN_UPTO3 | ISAF(4) | ISAF(4_32) | ISAF(4_32R2) +#define INSN_UPTO5 INSN_UPTO4 | ISAF(5) | ISAF(5_32R2) +#define INSN_UPTO32 INSN_UPTO2 | ISAF(32) | ISAF(3_32) | ISAF(4_32) +#define INSN_UPTO32R2 INSN_UPTO32 | ISAF(32R2) \ + | ISAF(3_32R2) | ISAF(4_32R2) | ISAF(5_32R2) +#define INSN_UPTO32R3 INSN_UPTO32R2 | ISAF(32R3) +#define INSN_UPTO32R5 INSN_UPTO32R3 | ISAF(32R5) +#define INSN_UPTO32R6 INSN_UPTO32R5 | ISAF(32R6) +#define INSN_UPTO64 INSN_UPTO5 | ISAF(64) | ISAF(32) +#define INSN_UPTO64R2 INSN_UPTO64 | ISAF(64R2) | ISAF(32R2) +#define INSN_UPTO64R3 INSN_UPTO64R2 | ISAF(64R3) | ISAF(32R3) +#define INSN_UPTO64R5 INSN_UPTO64R3 | ISAF(64R5) | ISAF(32R5) +#define INSN_UPTO64R6 INSN_UPTO64R5 | ISAF(64R6) | ISAF(32R6) + +/* The same information in table form: bit INSN_ISA - 1 of index + INSN_UPTO - 1 is set if ISA Y includes ISA X. */ +static const unsigned int mips_isa_table[] = { + INSN_UPTO1, + INSN_UPTO2, + INSN_UPTO3, + INSN_UPTO4, + INSN_UPTO5, + INSN_UPTO32, + INSN_UPTO32R2, + INSN_UPTO32R3, + INSN_UPTO32R5, + INSN_UPTO32R6, + INSN_UPTO64, + INSN_UPTO64R2, + INSN_UPTO64R3, + INSN_UPTO64R5, + INSN_UPTO64R6 +}; +#undef ISAF /* Masks used for Chip specific instructions. */ #define INSN_CHIP_MASK 0xc3ff0f20 @@ -1100,6 +1196,7 @@ static const unsigned int mips_isa_table[] = #define INSN_OCTEON 0x00000800 #define INSN_OCTEONP 0x00000200 #define INSN_OCTEON2 0x00000100 +#define INSN_OCTEON3 0x00000040 /* MIPS R5900 instruction */ #define INSN_5900 0x00004000 @@ -1157,6 +1254,8 @@ static const unsigned int mips_isa_table[] = /* MSA Extension */ #define ASE_MSA 0x00000800 #define ASE_MSA64 0x00001000 +/* eXtended Physical Address (XPA) Extension. */ +#define ASE_XPA 0x00002000 /* MIPS ISA defines, use instead of hardcoding ISA level. */ @@ -1171,8 +1270,14 @@ static const unsigned int mips_isa_table[] = #define ISA_MIPS64 INSN_ISA64 #define ISA_MIPS32R2 INSN_ISA32R2 +#define ISA_MIPS32R3 INSN_ISA32R3 +#define ISA_MIPS32R5 INSN_ISA32R5 #define ISA_MIPS64R2 INSN_ISA64R2 +#define ISA_MIPS64R3 INSN_ISA64R3 +#define ISA_MIPS64R5 INSN_ISA64R5 +#define ISA_MIPS32R6 INSN_ISA32R6 +#define ISA_MIPS64R6 INSN_ISA64R6 /* CPU defines, use instead of hardcoding processor number. Keep this in sync with bfd/archures.c in order for machine selection to work. */ @@ -1203,9 +1308,15 @@ static const unsigned int mips_isa_table[] = #define CPU_MIPS16 16 #define CPU_MIPS32 32 #define CPU_MIPS32R2 33 +#define CPU_MIPS32R3 34 +#define CPU_MIPS32R5 36 +#define CPU_MIPS32R6 37 #define CPU_MIPS5 5 #define CPU_MIPS64 64 #define CPU_MIPS64R2 65 +#define CPU_MIPS64R3 66 +#define CPU_MIPS64R5 68 +#define CPU_MIPS64R6 69 #define CPU_SB1 12310201 /* octal 'SB', 01. */ #define CPU_LOONGSON_2E 3001 #define CPU_LOONGSON_2F 3002 @@ -1213,6 +1324,7 @@ static const unsigned int mips_isa_table[] = #define CPU_OCTEON 6501 #define CPU_OCTEONP 6601 #define CPU_OCTEON2 6502 +#define CPU_OCTEON3 6503 #define CPU_XLR 887682 /* decimal 'XLR' */ /* Return true if the given CPU is included in INSN_* mask MASK. */ @@ -1278,9 +1390,19 @@ cpu_is_member (int cpu, unsigned int mask) case CPU_OCTEON2: return (mask & INSN_OCTEON2) != 0; + case CPU_OCTEON3: + return (mask & INSN_OCTEON3) != 0; + case CPU_XLR: return (mask & INSN_XLR) != 0; + case CPU_MIPS32R6: + return (mask & INSN_ISA_MASK) == INSN_ISA32R6; + + case CPU_MIPS64R6: + return ((mask & INSN_ISA_MASK) == INSN_ISA32R6) + || ((mask & INSN_ISA_MASK) == INSN_ISA64R6); + default: return FALSE; } @@ -2018,7 +2140,6 @@ extern const int bfd_mips16_num_opcodes; "y" 5-bit source 3 register for ALNV.PS (MICROMIPSOP_*_RS3) "z" must be zero register "C" 23-bit coprocessor function code (MICROMIPSOP_*_COPZ) - "B" 10-bit syscall/wait function code (MICROMIPSOP_*_CODE10) "K" 5-bit Hardware Register (RDHWR instruction) (MICROMIPSOP_*_RS) "+A" 5-bit INS/EXT/DINS/DEXT/DINSM/DEXTM position, which becomes @@ -2043,6 +2164,8 @@ extern const int bfd_mips16_num_opcodes; "+H" 5-bit DEXTU size, which becomes MSBD (MICROMIPSOP_*_EXTMSBD). Requires that "+A" or "+E" occur first to set position. Enforces: 32 < (pos+size) <= 64. + "+J" 10-bit SYSCALL/WAIT/SDBBP/HYPCALL function code + (MICROMIPSOP_*_CODE10) PC-relative addition (ADDIUPC) instruction: "mQ" 23-bit offset (-4194304 .. 4194303) << 2 (MICROMIPSOP_*_IMMQ) @@ -2121,7 +2244,7 @@ extern const int bfd_mips16_num_opcodes; Characters used so far, for quick reference when adding more: "12345678 0" - "<>(),+.@\^|~" + "<>(),+-.@\^|~" "ABCDEFGHI KLMN RST V " "abcd f hijklmnopqrstuvw yz" @@ -2129,7 +2252,7 @@ extern const int bfd_mips16_num_opcodes; following), for quick reference when adding more: "" "~!@#$%^&*|" - "ABCEFGHTUVW" + "ABCEFGHJTUVW" "dehijklnouvwx" Extension character sequences used so far ("m" followed by the @@ -2138,6 +2261,12 @@ extern const int bfd_mips16_num_opcodes; "" " BCDEFGHIJ LMNOPQ U WXYZ" " bcdefghij lmn pq st xyz" + + Extension character sequences used so far ("-" followed by the + following), for quick reference when adding more: + "" + "" + */ extern const struct mips_operand *decode_micromips_operand (const char *); diff --git a/external/gpl3/gdb/dist/include/opcode/mmix.h b/external/gpl3/gdb/dist/include/opcode/mmix.h index f931545d6700..d6fdbf565047 100644 --- a/external/gpl3/gdb/dist/include/opcode/mmix.h +++ b/external/gpl3/gdb/dist/include/opcode/mmix.h @@ -1,5 +1,5 @@ /* mmix.h -- Header file for MMIX opcode table - Copyright (C) 2001, 2003, 2010 Free Software Foundation, Inc. + Copyright (C) 2001-2015 Free Software Foundation, Inc. Written by Hans-Peter Nilsson (hp@bitrange.com) This file is part of GDB, GAS, and the GNU binutils. diff --git a/external/gpl3/gdb/dist/include/opcode/mn10200.h b/external/gpl3/gdb/dist/include/opcode/mn10200.h index b597d7b4bf70..d44da063cdf6 100644 --- a/external/gpl3/gdb/dist/include/opcode/mn10200.h +++ b/external/gpl3/gdb/dist/include/opcode/mn10200.h @@ -1,5 +1,5 @@ /* mn10200.h -- Header file for Matsushita 10200 opcode table - Copyright 1996, 1997, 2010 Free Software Foundation, Inc. + Copyright (C) 1996-2015 Free Software Foundation, Inc. Written by Jeff Law, Cygnus Support This file is part of GDB, GAS, and the GNU binutils. diff --git a/external/gpl3/gdb/dist/include/opcode/mn10300.h b/external/gpl3/gdb/dist/include/opcode/mn10300.h index 16a139bce5d6..76adb07d6131 100644 --- a/external/gpl3/gdb/dist/include/opcode/mn10300.h +++ b/external/gpl3/gdb/dist/include/opcode/mn10300.h @@ -1,5 +1,5 @@ /* mn10300.h -- Header file for Matsushita 10300 opcode table - Copyright 1996, 1997, 1998, 1999, 2003, 2010 Free Software Foundation, Inc. + Copyright (C) 1996-2015 Free Software Foundation, Inc. Written by Jeff Law, Cygnus Support This file is part of GDB, GAS, and the GNU binutils. diff --git a/external/gpl3/gdb/dist/include/opcode/moxie.h b/external/gpl3/gdb/dist/include/opcode/moxie.h index dae40c8e83cf..07e422686d5c 100644 --- a/external/gpl3/gdb/dist/include/opcode/moxie.h +++ b/external/gpl3/gdb/dist/include/opcode/moxie.h @@ -1,5 +1,5 @@ /* Definitions for decoding the moxie opcode table. - Copyright 2009 Free Software Foundation, Inc. + Copyright (C) 2009-2015 Free Software Foundation, Inc. Contributed by Anthony Green (green@moxielogic.com). This program is free software; you can redistribute it and/or modify @@ -28,8 +28,8 @@ Some use B and an indirect A (MOXIE_F1_AiB) Some use A and an indirect B (MOXIE_F1_ABi) Some consume a 4 byte immediate value and use X (MOXIE_F1_4A) - Some use B and an indirect A plus 4 bytes (MOXIE_F1_AiB4) - Some use A and an indirect B plus 4 bytes (MOXIE_F1_ABi4) + Some use B and an indirect A plus 2 byte offset (MOXIE_F1_AiB2) + Some use A and an indirect B plus 2 byte offset (MOXIE_F1_ABi2) Form 2 instructions also come in different flavors: @@ -50,8 +50,8 @@ #define MOXIE_F1_AiB 0x106 #define MOXIE_F1_ABi 0x107 #define MOXIE_F1_4A 0x108 -#define MOXIE_F1_AiB4 0x109 -#define MOXIE_F1_ABi4 0x10a +#define MOXIE_F1_AiB2 0x109 +#define MOXIE_F1_ABi2 0x10a #define MOXIE_F1_M 0x10b #define MOXIE_F2_NARG 0x200 diff --git a/external/gpl3/gdb/dist/include/opcode/msp430-decode.h b/external/gpl3/gdb/dist/include/opcode/msp430-decode.h index 0653aded7952..39602784808d 100644 --- a/external/gpl3/gdb/dist/include/opcode/msp430-decode.h +++ b/external/gpl3/gdb/dist/include/opcode/msp430-decode.h @@ -1,5 +1,5 @@ /* Opcode decoder for the TI MSP430 - Copyright 2012-2013 Free Software Foundation, Inc. + Copyright (C) 2012-2015 Free Software Foundation, Inc. Written by DJ Delorie This file is part of GDB, the GNU Debugger. diff --git a/external/gpl3/gdb/dist/include/opcode/msp430.h b/external/gpl3/gdb/dist/include/opcode/msp430.h index caddc42db1cb..03dd62bfc4b8 100644 --- a/external/gpl3/gdb/dist/include/opcode/msp430.h +++ b/external/gpl3/gdb/dist/include/opcode/msp430.h @@ -1,6 +1,6 @@ /* Opcode table for the TI MSP430 microcontrollers - Copyright 2002-2013 Free Software Foundation, Inc. + Copyright (C) 2002-2015 Free Software Foundation, Inc. Contributed by Dmitry Diky This program is free software; you can redistribute it and/or modify @@ -26,7 +26,8 @@ struct msp430_operand_s int ol; /* Operand length words. */ int am; /* Addr mode. */ int reg; /* Register. */ - int mode; /* Pperand mode. */ + int mode; /* Operand mode. */ + int vshift; /* Number of bytes to shift operand down. */ #define OP_REG 0 #define OP_EXP 1 #ifndef DASM_SECTION diff --git a/external/gpl3/gdb/dist/include/opcode/nds32.h b/external/gpl3/gdb/dist/include/opcode/nds32.h index 44795694c2e8..415f4d39569c 100644 --- a/external/gpl3/gdb/dist/include/opcode/nds32.h +++ b/external/gpl3/gdb/dist/include/opcode/nds32.h @@ -1,5 +1,5 @@ /* nds32.h -- Header file for nds32 opcode table - Copyright (C) 2012-2013 Free Software Foundation, Inc. + Copyright (C) 2012-2015 Free Software Foundation, Inc. Contributed by Andes Technology Corporation. This program is free software; you can redistribute it and/or modify @@ -29,6 +29,7 @@ #define REG_R16 16 #define REG_R20 20 #define REG_TA 15 +#define REG_TP 27 #define REG_FP 28 #define REG_GP 29 #define REG_LP 30 @@ -358,12 +359,13 @@ enum n32_opcodes N32_ALU2_SUB_SC, N32_ALU2_ADD_WC, N32_ALU2_SUB_WC, - N32_ALU2_0x14, + N32_ALU2_KMxy, N32_ALU2_0x15, N32_ALU2_0x16, N32_ALU2_FFZMISM, - N32_ALU2_QADD = 0x18, - N32_ALU2_QSUB, + N32_ALU2_KADD = 0x18, + N32_ALU2_KSUB, + N32_ALU2_KSLRA, N32_ALU2_MFUSR = 0x20, N32_ALU2_MTUSR, N32_ALU2_0x22, @@ -459,7 +461,7 @@ enum n32_opcodes N32_MISC_TLBOP, N32_MISC_0xf, - /* bit[0;4] */ + /* bit[0:4] */ N32_SIMD_PBSAD = 0, N32_SIMD_PBSADA = 1, diff --git a/external/gpl3/gdb/dist/include/opcode/nios2.h b/external/gpl3/gdb/dist/include/opcode/nios2.h index aa6709819031..44dffb70847e 100644 --- a/external/gpl3/gdb/dist/include/opcode/nios2.h +++ b/external/gpl3/gdb/dist/include/opcode/nios2.h @@ -1,5 +1,5 @@ /* Nios II opcode list for GAS, the GNU assembler. - Copyright (C) 2012, 2013 Free Software Foundation, Inc. + Copyright (C) 2012-2015 Free Software Foundation, Inc. Contributed by Nigel Gray (ngray@altera.com). Contributed by Mentor Graphics, Inc. @@ -31,6 +31,15 @@ * access various opcode fields. ****************************************************************************/ +/* Instruction encoding formats. */ +enum iw_format_type { + /* R1 formats */ + iw_i_type, + iw_r_type, + iw_j_type, + iw_custom_type +}; + /* Identify different overflow situations for error messages. */ enum overflow_type { @@ -56,12 +65,14 @@ enum overflow_type u - a 16-bit unsigned immediate o - a 16-bit signed program counter relative offset j - a 5-bit unsigned immediate - b - a 5-bit break instruction constant l - a 8-bit custom instruction constant m - a 26-bit unsigned immediate Literal ',', '(', and ')' characters may also appear in the args as delimiters. + Note that the args describe the semantics and assembly-language syntax + of the operands, not their encoding into the instruction word. + The pinfo field is INSN_MACRO for a macro. Otherwise, it is a collection of bits describing the instruction, notably any relevant hazard information. @@ -84,6 +95,8 @@ struct nios2_opcode the expected opcode. */ unsigned long num_args; /* The number of arguments the instruction takes. */ + unsigned size; /* Size in bytes of the instruction. */ + enum iw_format_type format; /* Instruction format. */ unsigned long match; /* The basic opcode for the instruction. */ unsigned long mask; /* Mask for the opcode field of the instruction. */ @@ -107,403 +120,28 @@ struct nios2_opcode #define NIOS2_INSN_CBRANCH 0x00000020 #define NIOS2_INSN_CALL 0x00000040 -#define NIOS2_INSN_ADDI 0x00000080 -#define NIOS2_INSN_ANDI 0x00000100 -#define NIOS2_INSN_ORI 0x00000200 -#define NIOS2_INSN_XORI 0x00000400 +#define NIOS2_INSN_OPTARG 0x00000080 +/* Register attributes. */ +#define REG_NORMAL (1<<0) /* Normal registers. */ +#define REG_CONTROL (1<<1) /* Control registers. */ +#define REG_COPROCESSOR (1<<2) /* For custom instructions. */ -/* Associates a register name ($6) with a 5-bit index (eg 6). */ struct nios2_reg { const char *name; const int index; + unsigned long regtype; }; +/* Pull in the instruction field accessors, opcodes, and masks. */ +#include "nios2r1.h" -/* These are bit masks and shift counts for accessing the various - fields of a Nios II instruction. */ - -/* Macros for getting and setting an instruction field. */ -#define GET_INSN_FIELD(X, i) \ - (((i) & OP_MASK_##X) >> OP_SH_##X) -#define SET_INSN_FIELD(X, i, j) \ - ((i) = (((i) & ~OP_MASK_##X) | (((j) << OP_SH_##X) & OP_MASK_##X))) - -/* Instruction field definitions. */ -#define IW_A_LSB 27 -#define IW_A_MSB 31 -#define IW_A_SZ 5 -#define IW_A_MASK 0x1f - -#define IW_B_LSB 22 -#define IW_B_MSB 26 -#define IW_B_SZ 5 -#define IW_B_MASK 0x1f - -#define IW_C_LSB 17 -#define IW_C_MSB 21 -#define IW_C_SZ 5 -#define IW_C_MASK 0x1f - -#define IW_IMM16_LSB 6 -#define IW_IMM16_MSB 21 -#define IW_IMM16_SZ 16 -#define IW_IMM16_MASK 0xffff - -#define IW_IMM26_LSB 6 -#define IW_IMM26_MSB 31 -#define IW_IMM26_SZ 26 -#define IW_IMM26_MASK 0x3ffffff - -#define IW_OP_LSB 0 -#define IW_OP_MSB 5 -#define IW_OP_SZ 6 -#define IW_OP_MASK 0x3f - -#define IW_OPX_LSB 11 -#define IW_OPX_MSB 16 -#define IW_OPX_SZ 6 -#define IW_OPX_MASK 0x3f - -#define IW_SHIFT_IMM5_LSB 6 -#define IW_SHIFT_IMM5_MSB 10 -#define IW_SHIFT_IMM5_SZ 5 -#define IW_SHIFT_IMM5_MASK 0x1f - -#define IW_CONTROL_REGNUM_LSB 6 -#define IW_CONTROL_REGNUM_MSB 9 -#define IW_CONTROL_REGNUM_SZ 4 -#define IW_CONTROL_REGNUM_MASK 0xf - -/* Operator mask and shift. */ -#define OP_MASK_OP (IW_OP_MASK << IW_OP_LSB) -#define OP_SH_OP IW_OP_LSB - -/* Masks and shifts for I-type instructions. */ -#define OP_MASK_IOP (IW_OP_MASK << IW_OP_LSB) -#define OP_SH_IOP IW_OP_LSB - -#define OP_MASK_IMM16 (IW_IMM16_MASK << IW_IMM16_LSB) -#define OP_SH_IMM16 IW_IMM16_LSB - -#define OP_MASK_IRD (IW_B_MASK << IW_B_LSB) -#define OP_SH_IRD IW_B_LSB /* The same as T for I-type. */ - -#define OP_MASK_IRT (IW_B_MASK << IW_B_LSB) -#define OP_SH_IRT IW_B_LSB - -#define OP_MASK_IRS (IW_A_MASK << IW_A_LSB) -#define OP_SH_IRS IW_A_LSB - -/* Masks and shifts for R-type instructions. */ -#define OP_MASK_ROP (IW_OP_MASK << IW_OP_LSB) -#define OP_SH_ROP IW_OP_LSB - -#define OP_MASK_ROPX (IW_OPX_MASK << IW_OPX_LSB) -#define OP_SH_ROPX IW_OPX_LSB - -#define OP_MASK_RRD (IW_C_MASK << IW_C_LSB) -#define OP_SH_RRD IW_C_LSB - -#define OP_MASK_RRT (IW_B_MASK << IW_B_LSB) -#define OP_SH_RRT IW_B_LSB - -#define OP_MASK_RRS (IW_A_MASK << IW_A_LSB) -#define OP_SH_RRS IW_A_LSB - -/* Masks and shifts for J-type instructions. */ -#define OP_MASK_JOP (IW_OP_MASK << IW_OP_LSB) -#define OP_SH_JOP IW_OP_LSB - -#define OP_MASK_IMM26 (IW_IMM26_MASK << IW_IMM26_LSB) -#define OP_SH_IMM26 IW_IMM26_LSB - -/* Masks and shifts for CTL instructions. */ -#define OP_MASK_RCTL 0x000007c0 -#define OP_SH_RCTL 6 - -/* Break instruction imm5 field. */ -#define OP_MASK_TRAP_IMM5 0x000007c0 -#define OP_SH_TRAP_IMM5 6 - -/* Instruction imm5 field. */ -#define OP_MASK_IMM5 (IW_SHIFT_IMM5_MASK << IW_SHIFT_IMM5_LSB) -#define OP_SH_IMM5 IW_SHIFT_IMM5_LSB - -/* Cache operation fields (type j,i(s)). */ -#define OP_MASK_CACHE_OPX (IW_B_MASK << IW_B_LSB) -#define OP_SH_CACHE_OPX IW_B_LSB -#define OP_MASK_CACHE_RRS (IW_A_MASK << IW_A_LSB) -#define OP_SH_CACHE_RRS IW_A_LSB - -/* Custom instruction masks. */ -#define OP_MASK_CUSTOM_A 0x00010000 -#define OP_SH_CUSTOM_A 16 - -#define OP_MASK_CUSTOM_B 0x00008000 -#define OP_SH_CUSTOM_B 15 - -#define OP_MASK_CUSTOM_C 0x00004000 -#define OP_SH_CUSTOM_C 14 - -#define OP_MASK_CUSTOM_N 0x00003fc0 -#define OP_SH_CUSTOM_N 6 -#define OP_MAX_CUSTOM_N 255 - -/* OP instruction values. */ -#define OP_ADDI 4 -#define OP_ANDHI 44 -#define OP_ANDI 12 -#define OP_BEQ 38 -#define OP_BGE 14 -#define OP_BGEU 46 -#define OP_BLT 22 -#define OP_BLTU 54 -#define OP_BNE 30 -#define OP_BR 6 -#define OP_CALL 0 -#define OP_CMPEQI 32 -#define OP_CMPGEI 8 -#define OP_CMPGEUI 40 -#define OP_CMPLTI 16 -#define OP_CMPLTUI 48 -#define OP_CMPNEI 24 -#define OP_CUSTOM 50 -#define OP_FLUSHD 59 -#define OP_FLUSHDA 27 -#define OP_INITD 51 -#define OP_INITDA 19 -#define OP_JMPI 1 -#define OP_LDB 7 -#define OP_LDBIO 39 -#define OP_LDBU 3 -#define OP_LDBUIO 35 -#define OP_LDH 15 -#define OP_LDHIO 47 -#define OP_LDHU 11 -#define OP_LDHUIO 43 -#define OP_LDL 31 -#define OP_LDW 23 -#define OP_LDWIO 55 -#define OP_MULI 36 -#define OP_OPX 58 -#define OP_ORHI 52 -#define OP_ORI 20 -#define OP_RDPRS 56 -#define OP_STB 5 -#define OP_STBIO 37 -#define OP_STC 29 -#define OP_STH 13 -#define OP_STHIO 45 -#define OP_STW 21 -#define OP_STWIO 53 -#define OP_XORHI 60 -#define OP_XORI 28 - -/* OPX instruction values. */ -#define OPX_ADD 49 -#define OPX_AND 14 -#define OPX_BREAK 52 -#define OPX_BRET 9 -#define OPX_CALLR 29 -#define OPX_CMPEQ 32 -#define OPX_CMPGE 8 -#define OPX_CMPGEU 40 -#define OPX_CMPLT 16 -#define OPX_CMPLTU 48 -#define OPX_CMPNE 24 -#define OPX_CRST 62 -#define OPX_DIV 37 -#define OPX_DIVU 36 -#define OPX_ERET 1 -#define OPX_FLUSHI 12 -#define OPX_FLUSHP 4 -#define OPX_HBREAK 53 -#define OPX_INITI 41 -#define OPX_INTR 61 -#define OPX_JMP 13 -#define OPX_MUL 39 -#define OPX_MULXSS 31 -#define OPX_MULXSU 23 -#define OPX_MULXUU 7 -#define OPX_NEXTPC 28 -#define OPX_NOR 6 -#define OPX_OR 22 -#define OPX_RDCTL 38 -#define OPX_RET 5 -#define OPX_ROL 3 -#define OPX_ROLI 2 -#define OPX_ROR 11 -#define OPX_SLL 19 -#define OPX_SLLI 18 -#define OPX_SRA 59 -#define OPX_SRAI 58 -#define OPX_SRL 27 -#define OPX_SRLI 26 -#define OPX_SUB 57 -#define OPX_SYNC 54 -#define OPX_TRAP 45 -#define OPX_WRCTL 46 -#define OPX_WRPRS 20 -#define OPX_XOR 30 - -/* The following macros define the opcode matches for each - instruction code & OP_MASK_INST == OP_MATCH_INST. */ - -/* OP instruction matches. */ -#define OP_MATCH_ADDI OP_ADDI -#define OP_MATCH_ANDHI OP_ANDHI -#define OP_MATCH_ANDI OP_ANDI -#define OP_MATCH_BEQ OP_BEQ -#define OP_MATCH_BGE OP_BGE -#define OP_MATCH_BGEU OP_BGEU -#define OP_MATCH_BLT OP_BLT -#define OP_MATCH_BLTU OP_BLTU -#define OP_MATCH_BNE OP_BNE -#define OP_MATCH_BR OP_BR -#define OP_MATCH_FLUSHD OP_FLUSHD -#define OP_MATCH_FLUSHDA OP_FLUSHDA -#define OP_MATCH_INITD OP_INITD -#define OP_MATCH_INITDA OP_INITDA -#define OP_MATCH_CALL OP_CALL -#define OP_MATCH_CMPEQI OP_CMPEQI -#define OP_MATCH_CMPGEI OP_CMPGEI -#define OP_MATCH_CMPGEUI OP_CMPGEUI -#define OP_MATCH_CMPLTI OP_CMPLTI -#define OP_MATCH_CMPLTUI OP_CMPLTUI -#define OP_MATCH_CMPNEI OP_CMPNEI -#define OP_MATCH_JMPI OP_JMPI -#define OP_MATCH_LDB OP_LDB -#define OP_MATCH_LDBIO OP_LDBIO -#define OP_MATCH_LDBU OP_LDBU -#define OP_MATCH_LDBUIO OP_LDBUIO -#define OP_MATCH_LDH OP_LDH -#define OP_MATCH_LDHIO OP_LDHIO -#define OP_MATCH_LDHU OP_LDHU -#define OP_MATCH_LDHUIO OP_LDHUIO -#define OP_MATCH_LDL OP_LDL -#define OP_MATCH_LDW OP_LDW -#define OP_MATCH_LDWIO OP_LDWIO -#define OP_MATCH_MULI OP_MULI -#define OP_MATCH_OPX OP_OPX -#define OP_MATCH_ORHI OP_ORHI -#define OP_MATCH_ORI OP_ORI -#define OP_MATCH_RDPRS OP_RDPRS -#define OP_MATCH_STB OP_STB -#define OP_MATCH_STBIO OP_STBIO -#define OP_MATCH_STC OP_STC -#define OP_MATCH_STH OP_STH -#define OP_MATCH_STHIO OP_STHIO -#define OP_MATCH_STW OP_STW -#define OP_MATCH_STWIO OP_STWIO -#define OP_MATCH_CUSTOM OP_CUSTOM -#define OP_MATCH_XORHI OP_XORHI -#define OP_MATCH_XORI OP_XORI -#define OP_MATCH_OPX OP_OPX - -/* OPX instruction values. */ -#define OPX_MATCH(code) ((code << IW_OPX_LSB) | OP_OPX) - -#define OP_MATCH_ADD OPX_MATCH (OPX_ADD) -#define OP_MATCH_AND OPX_MATCH (OPX_AND) -#define OP_MATCH_BREAK ((0x1e << 17) | OPX_MATCH (OPX_BREAK)) -#define OP_MATCH_BRET (0xf0000000 | OPX_MATCH (OPX_BRET)) -#define OP_MATCH_CALLR ((0x1f << 17) | OPX_MATCH (OPX_CALLR)) -#define OP_MATCH_CMPEQ OPX_MATCH (OPX_CMPEQ) -#define OP_MATCH_CMPGE OPX_MATCH (OPX_CMPGE) -#define OP_MATCH_CMPGEU OPX_MATCH (OPX_CMPGEU) -#define OP_MATCH_CMPLT OPX_MATCH (OPX_CMPLT) -#define OP_MATCH_CMPLTU OPX_MATCH (OPX_CMPLTU) -#define OP_MATCH_CMPNE OPX_MATCH (OPX_CMPNE) -#define OP_MATCH_DIV OPX_MATCH (OPX_DIV) -#define OP_MATCH_DIVU OPX_MATCH (OPX_DIVU) -#define OP_MATCH_JMP OPX_MATCH (OPX_JMP) -#define OP_MATCH_MUL OPX_MATCH (OPX_MUL) -#define OP_MATCH_MULXSS OPX_MATCH (OPX_MULXSS) -#define OP_MATCH_MULXSU OPX_MATCH (OPX_MULXSU) -#define OP_MATCH_MULXUU OPX_MATCH (OPX_MULXUU) -#define OP_MATCH_NEXTPC OPX_MATCH (OPX_NEXTPC) -#define OP_MATCH_NOR OPX_MATCH (OPX_NOR) -#define OP_MATCH_OR OPX_MATCH (OPX_OR) -#define OP_MATCH_RDCTL OPX_MATCH (OPX_RDCTL) -#define OP_MATCH_RET (0xf8000000 | OPX_MATCH (OPX_RET)) -#define OP_MATCH_ROL OPX_MATCH (OPX_ROL) -#define OP_MATCH_ROLI OPX_MATCH (OPX_ROLI) -#define OP_MATCH_ROR OPX_MATCH (OPX_ROR) -#define OP_MATCH_SLL OPX_MATCH (OPX_SLL) -#define OP_MATCH_SLLI OPX_MATCH (OPX_SLLI) -#define OP_MATCH_SRA OPX_MATCH (OPX_SRA) -#define OP_MATCH_SRAI OPX_MATCH (OPX_SRAI) -#define OP_MATCH_SRL OPX_MATCH (OPX_SRL) -#define OP_MATCH_SRLI OPX_MATCH (OPX_SRLI) -#define OP_MATCH_SUB OPX_MATCH (OPX_SUB) -#define OP_MATCH_SYNC OPX_MATCH (OPX_SYNC) -#define OP_MATCH_TRAP ((0x1d << 17) | OPX_MATCH (OPX_TRAP)) -#define OP_MATCH_ERET (0xef800000 | OPX_MATCH (OPX_ERET)) -#define OP_MATCH_WRCTL OPX_MATCH (OPX_WRCTL) -#define OP_MATCH_WRPRS OPX_MATCH (OPX_WRPRS) -#define OP_MATCH_XOR OPX_MATCH (OPX_XOR) -#define OP_MATCH_FLUSHI OPX_MATCH (OPX_FLUSHI) -#define OP_MATCH_FLUSHP OPX_MATCH (OPX_FLUSHP) -#define OP_MATCH_INITI OPX_MATCH (OPX_INITI) - -/* Some unusual op masks. */ -#define OP_MASK_BREAK ((OP_MASK_RRS | OP_MASK_RRT | OP_MASK_RRD \ - | OP_MASK_ROPX | OP_MASK_OP) \ - & 0xfffff03f) -#define OP_MASK_CALLR ((OP_MASK_RRT | OP_MASK_RRD | OP_MASK_ROPX \ - | OP_MASK_OP)) -#define OP_MASK_JMP ((OP_MASK_RRT | OP_MASK_RRD | OP_MASK_ROPX \ - | OP_MASK_OP)) -#define OP_MASK_SYNC ((OP_MASK_RRT | OP_MASK_RRD | OP_MASK_ROPX \ - | OP_MASK_OP)) -#define OP_MASK_TRAP ((OP_MASK_RRS | OP_MASK_RRT | OP_MASK_RRD \ - | OP_MASK_ROPX | OP_MASK_OP) \ - & 0xfffff83f) -#define OP_MASK_WRCTL ((OP_MASK_RRT | OP_MASK_RRD | OP_MASK_ROPX \ - | OP_MASK_OP)) /*& 0xfffff83f */ -#define OP_MASK_NEXTPC ((OP_MASK_RRS | OP_MASK_RRT | OP_MASK_ROPX \ - | OP_MASK_OP)) -#define OP_MASK_FLUSHI ((OP_MASK_RRT | OP_MASK_RRD | OP_MASK_ROPX \ - | OP_MASK_OP)) -#define OP_MASK_INITI ((OP_MASK_RRT | OP_MASK_RRD | OP_MASK_ROPX \ - | OP_MASK_OP)) - -#define OP_MASK_ROLI ((OP_MASK_RRT | OP_MASK_ROPX | OP_MASK_OP)) -#define OP_MASK_SLLI ((OP_MASK_RRT | OP_MASK_ROPX | OP_MASK_OP)) -#define OP_MASK_SRAI ((OP_MASK_RRT | OP_MASK_ROPX | OP_MASK_OP)) -#define OP_MASK_SRLI ((OP_MASK_RRT | OP_MASK_ROPX | OP_MASK_OP)) -#define OP_MASK_RDCTL ((OP_MASK_RRS | OP_MASK_RRT | OP_MASK_ROPX \ - | OP_MASK_OP)) /*& 0xfffff83f */ - -#ifndef OP_MASK -#define OP_MASK 0xffffffff -#endif - -/* These convenience macros to extract instruction fields are used by GDB. */ -#define GET_IW_A(Iw) \ - (((Iw) >> IW_A_LSB) & IW_A_MASK) -#define GET_IW_B(Iw) \ - (((Iw) >> IW_B_LSB) & IW_B_MASK) -#define GET_IW_C(Iw) \ - (((Iw) >> IW_C_LSB) & IW_C_MASK) -#define GET_IW_CONTROL_REGNUM(Iw) \ - (((Iw) >> IW_CONTROL_REGNUM_LSB) & IW_CONTROL_REGNUM_MASK) -#define GET_IW_IMM16(Iw) \ - (((Iw) >> IW_IMM16_LSB) & IW_IMM16_MASK) -#define GET_IW_IMM26(Iw) \ - (((Iw) >> IW_IMM26_LSB) & IW_IMM26_MASK) -#define GET_IW_OP(Iw) \ - (((Iw) >> IW_OP_LSB) & IW_OP_MASK) -#define GET_IW_OPX(Iw) \ - (((Iw) >> IW_OPX_LSB) & IW_OPX_MASK) - -/* These are the data structures we use to hold the instruction information. */ -extern const struct nios2_opcode nios2_builtin_opcodes[]; -extern const int bfd_nios2_num_builtin_opcodes; +/* These are the data structures used to hold the instruction information. */ +extern const struct nios2_opcode nios2_r1_opcodes[]; +extern const int nios2_num_r1_opcodes; extern struct nios2_opcode *nios2_opcodes; -extern int bfd_nios2_num_opcodes; +extern int nios2_num_opcodes; /* These are the data structures used to hold the register information. */ extern const struct nios2_reg nios2_builtin_regs[]; @@ -511,12 +149,8 @@ extern struct nios2_reg *nios2_regs; extern const int nios2_num_builtin_regs; extern int nios2_num_regs; -/* Machine-independent macro for number of opcodes. */ -#define NUMOPCODES bfd_nios2_num_opcodes -#define NUMREGISTERS nios2_num_regs; - -/* This is made extern so that the assembler can use it to find out - what instruction caused an error. */ -extern const struct nios2_opcode *nios2_find_opcode_hash (unsigned long); +/* Return the opcode descriptor for a single instruction. */ +extern const struct nios2_opcode * +nios2_find_opcode_hash (unsigned long, unsigned long); #endif /* _NIOS2_H */ diff --git a/external/gpl3/gdb/dist/include/opcode/nios2r1.h b/external/gpl3/gdb/dist/include/opcode/nios2r1.h new file mode 100644 index 000000000000..f939a6162827 --- /dev/null +++ b/external/gpl3/gdb/dist/include/opcode/nios2r1.h @@ -0,0 +1,474 @@ +/* Nios II R1 opcode list for GAS, the GNU assembler. + Copyright (C) 2013-2015 Free Software Foundation, Inc. + Contributed by Mentor Graphics, Inc. + + This file is part of GAS, the GNU Assembler, and GDB, the GNU disassembler. + + GAS/GDB 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, or (at your option) + any later version. + + GAS/GDB 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 GAS or GDB; see the file COPYING3. If not, write to + the Free Software Foundation, 51 Franklin Street - Fifth Floor, + Boston, MA 02110-1301, USA. */ + +#ifndef _NIOS2R1_H_ +#define _NIOS2R1_H_ + +/* R1 fields. */ +#define IW_R1_OP_LSB 0 +#define IW_R1_OP_SIZE 6 +#define IW_R1_OP_UNSHIFTED_MASK (0xffffffffu >> (32 - IW_R1_OP_SIZE)) +#define IW_R1_OP_SHIFTED_MASK (IW_R1_OP_UNSHIFTED_MASK << IW_R1_OP_LSB) +#define GET_IW_R1_OP(W) (((W) >> IW_R1_OP_LSB) & IW_R1_OP_UNSHIFTED_MASK) +#define SET_IW_R1_OP(V) (((V) & IW_R1_OP_UNSHIFTED_MASK) << IW_R1_OP_LSB) + +#define IW_I_A_LSB 27 +#define IW_I_A_SIZE 5 +#define IW_I_A_UNSHIFTED_MASK (0xffffffffu >> (32 - IW_I_A_SIZE)) +#define IW_I_A_SHIFTED_MASK (IW_I_A_UNSHIFTED_MASK << IW_I_A_LSB) +#define GET_IW_I_A(W) (((W) >> IW_I_A_LSB) & IW_I_A_UNSHIFTED_MASK) +#define SET_IW_I_A(V) (((V) & IW_I_A_UNSHIFTED_MASK) << IW_I_A_LSB) + +#define IW_I_B_LSB 22 +#define IW_I_B_SIZE 5 +#define IW_I_B_UNSHIFTED_MASK (0xffffffffu >> (32 - IW_I_B_SIZE)) +#define IW_I_B_SHIFTED_MASK (IW_I_B_UNSHIFTED_MASK << IW_I_B_LSB) +#define GET_IW_I_B(W) (((W) >> IW_I_B_LSB) & IW_I_B_UNSHIFTED_MASK) +#define SET_IW_I_B(V) (((V) & IW_I_B_UNSHIFTED_MASK) << IW_I_B_LSB) + +#define IW_I_IMM16_LSB 6 +#define IW_I_IMM16_SIZE 16 +#define IW_I_IMM16_UNSHIFTED_MASK (0xffffffffu >> (32 - IW_I_IMM16_SIZE)) +#define IW_I_IMM16_SHIFTED_MASK (IW_I_IMM16_UNSHIFTED_MASK << IW_I_IMM16_LSB) +#define GET_IW_I_IMM16(W) (((W) >> IW_I_IMM16_LSB) & IW_I_IMM16_UNSHIFTED_MASK) +#define SET_IW_I_IMM16(V) (((V) & IW_I_IMM16_UNSHIFTED_MASK) << IW_I_IMM16_LSB) + +#define IW_R_A_LSB 27 +#define IW_R_A_SIZE 5 +#define IW_R_A_UNSHIFTED_MASK (0xffffffffu >> (32 - IW_R_A_SIZE)) +#define IW_R_A_SHIFTED_MASK (IW_R_A_UNSHIFTED_MASK << IW_R_A_LSB) +#define GET_IW_R_A(W) (((W) >> IW_R_A_LSB) & IW_R_A_UNSHIFTED_MASK) +#define SET_IW_R_A(V) (((V) & IW_R_A_UNSHIFTED_MASK) << IW_R_A_LSB) + +#define IW_R_B_LSB 22 +#define IW_R_B_SIZE 5 +#define IW_R_B_UNSHIFTED_MASK (0xffffffffu >> (32 - IW_R_B_SIZE)) +#define IW_R_B_SHIFTED_MASK (IW_R_B_UNSHIFTED_MASK << IW_R_B_LSB) +#define GET_IW_R_B(W) (((W) >> IW_R_B_LSB) & IW_R_B_UNSHIFTED_MASK) +#define SET_IW_R_B(V) (((V) & IW_R_B_UNSHIFTED_MASK) << IW_R_B_LSB) + +#define IW_R_C_LSB 17 +#define IW_R_C_SIZE 5 +#define IW_R_C_UNSHIFTED_MASK (0xffffffffu >> (32 - IW_R_C_SIZE)) +#define IW_R_C_SHIFTED_MASK (IW_R_C_UNSHIFTED_MASK << IW_R_C_LSB) +#define GET_IW_R_C(W) (((W) >> IW_R_C_LSB) & IW_R_C_UNSHIFTED_MASK) +#define SET_IW_R_C(V) (((V) & IW_R_C_UNSHIFTED_MASK) << IW_R_C_LSB) + +#define IW_R_OPX_LSB 11 +#define IW_R_OPX_SIZE 6 +#define IW_R_OPX_UNSHIFTED_MASK (0xffffffffu >> (32 - IW_R_OPX_SIZE)) +#define IW_R_OPX_SHIFTED_MASK (IW_R_OPX_UNSHIFTED_MASK << IW_R_OPX_LSB) +#define GET_IW_R_OPX(W) (((W) >> IW_R_OPX_LSB) & IW_R_OPX_UNSHIFTED_MASK) +#define SET_IW_R_OPX(V) (((V) & IW_R_OPX_UNSHIFTED_MASK) << IW_R_OPX_LSB) + +#define IW_R_IMM5_LSB 6 +#define IW_R_IMM5_SIZE 5 +#define IW_R_IMM5_UNSHIFTED_MASK (0xffffffffu >> (32 - IW_R_IMM5_SIZE)) +#define IW_R_IMM5_SHIFTED_MASK (IW_R_IMM5_UNSHIFTED_MASK << IW_R_IMM5_LSB) +#define GET_IW_R_IMM5(W) (((W) >> IW_R_IMM5_LSB) & IW_R_IMM5_UNSHIFTED_MASK) +#define SET_IW_R_IMM5(V) (((V) & IW_R_IMM5_UNSHIFTED_MASK) << IW_R_IMM5_LSB) + +#define IW_J_IMM26_LSB 6 +#define IW_J_IMM26_SIZE 26 +#define IW_J_IMM26_UNSHIFTED_MASK (0xffffffffu >> (32 - IW_J_IMM26_SIZE)) +#define IW_J_IMM26_SHIFTED_MASK (IW_J_IMM26_UNSHIFTED_MASK << IW_J_IMM26_LSB) +#define GET_IW_J_IMM26(W) (((W) >> IW_J_IMM26_LSB) & IW_J_IMM26_UNSHIFTED_MASK) +#define SET_IW_J_IMM26(V) (((V) & IW_J_IMM26_UNSHIFTED_MASK) << IW_J_IMM26_LSB) + +#define IW_CUSTOM_A_LSB 27 +#define IW_CUSTOM_A_SIZE 5 +#define IW_CUSTOM_A_UNSHIFTED_MASK (0xffffffffu >> (32 - IW_CUSTOM_A_SIZE)) +#define IW_CUSTOM_A_SHIFTED_MASK (IW_CUSTOM_A_UNSHIFTED_MASK << IW_CUSTOM_A_LSB) +#define GET_IW_CUSTOM_A(W) (((W) >> IW_CUSTOM_A_LSB) & IW_CUSTOM_A_UNSHIFTED_MASK) +#define SET_IW_CUSTOM_A(V) (((V) & IW_CUSTOM_A_UNSHIFTED_MASK) << IW_CUSTOM_A_LSB) + +#define IW_CUSTOM_B_LSB 22 +#define IW_CUSTOM_B_SIZE 5 +#define IW_CUSTOM_B_UNSHIFTED_MASK (0xffffffffu >> (32 - IW_CUSTOM_B_SIZE)) +#define IW_CUSTOM_B_SHIFTED_MASK (IW_CUSTOM_B_UNSHIFTED_MASK << IW_CUSTOM_B_LSB) +#define GET_IW_CUSTOM_B(W) (((W) >> IW_CUSTOM_B_LSB) & IW_CUSTOM_B_UNSHIFTED_MASK) +#define SET_IW_CUSTOM_B(V) (((V) & IW_CUSTOM_B_UNSHIFTED_MASK) << IW_CUSTOM_B_LSB) + +#define IW_CUSTOM_C_LSB 17 +#define IW_CUSTOM_C_SIZE 5 +#define IW_CUSTOM_C_UNSHIFTED_MASK (0xffffffffu >> (32 - IW_CUSTOM_C_SIZE)) +#define IW_CUSTOM_C_SHIFTED_MASK (IW_CUSTOM_C_UNSHIFTED_MASK << IW_CUSTOM_C_LSB) +#define GET_IW_CUSTOM_C(W) (((W) >> IW_CUSTOM_C_LSB) & IW_CUSTOM_C_UNSHIFTED_MASK) +#define SET_IW_CUSTOM_C(V) (((V) & IW_CUSTOM_C_UNSHIFTED_MASK) << IW_CUSTOM_C_LSB) + +#define IW_CUSTOM_READA_LSB 16 +#define IW_CUSTOM_READA_SIZE 1 +#define IW_CUSTOM_READA_UNSHIFTED_MASK (0xffffffffu >> (32 - IW_CUSTOM_READA_SIZE)) +#define IW_CUSTOM_READA_SHIFTED_MASK (IW_CUSTOM_READA_UNSHIFTED_MASK << IW_CUSTOM_READA_LSB) +#define GET_IW_CUSTOM_READA(W) (((W) >> IW_CUSTOM_READA_LSB) & IW_CUSTOM_READA_UNSHIFTED_MASK) +#define SET_IW_CUSTOM_READA(V) (((V) & IW_CUSTOM_READA_UNSHIFTED_MASK) << IW_CUSTOM_READA_LSB) + +#define IW_CUSTOM_READB_LSB 15 +#define IW_CUSTOM_READB_SIZE 1 +#define IW_CUSTOM_READB_UNSHIFTED_MASK (0xffffffffu >> (32 - IW_CUSTOM_READB_SIZE)) +#define IW_CUSTOM_READB_SHIFTED_MASK (IW_CUSTOM_READB_UNSHIFTED_MASK << IW_CUSTOM_READB_LSB) +#define GET_IW_CUSTOM_READB(W) (((W) >> IW_CUSTOM_READB_LSB) & IW_CUSTOM_READB_UNSHIFTED_MASK) +#define SET_IW_CUSTOM_READB(V) (((V) & IW_CUSTOM_READB_UNSHIFTED_MASK) << IW_CUSTOM_READB_LSB) + +#define IW_CUSTOM_READC_LSB 14 +#define IW_CUSTOM_READC_SIZE 1 +#define IW_CUSTOM_READC_UNSHIFTED_MASK (0xffffffffu >> (32 - IW_CUSTOM_READC_SIZE)) +#define IW_CUSTOM_READC_SHIFTED_MASK (IW_CUSTOM_READC_UNSHIFTED_MASK << IW_CUSTOM_READC_LSB) +#define GET_IW_CUSTOM_READC(W) (((W) >> IW_CUSTOM_READC_LSB) & IW_CUSTOM_READC_UNSHIFTED_MASK) +#define SET_IW_CUSTOM_READC(V) (((V) & IW_CUSTOM_READC_UNSHIFTED_MASK) << IW_CUSTOM_READC_LSB) + +#define IW_CUSTOM_N_LSB 6 +#define IW_CUSTOM_N_SIZE 8 +#define IW_CUSTOM_N_UNSHIFTED_MASK (0xffffffffu >> (32 - IW_CUSTOM_N_SIZE)) +#define IW_CUSTOM_N_SHIFTED_MASK (IW_CUSTOM_N_UNSHIFTED_MASK << IW_CUSTOM_N_LSB) +#define GET_IW_CUSTOM_N(W) (((W) >> IW_CUSTOM_N_LSB) & IW_CUSTOM_N_UNSHIFTED_MASK) +#define SET_IW_CUSTOM_N(V) (((V) & IW_CUSTOM_N_UNSHIFTED_MASK) << IW_CUSTOM_N_LSB) + +/* R1 opcodes. */ +#define R1_OP_CALL 0 +#define R1_OP_JMPI 1 +#define R1_OP_LDBU 3 +#define R1_OP_ADDI 4 +#define R1_OP_STB 5 +#define R1_OP_BR 6 +#define R1_OP_LDB 7 +#define R1_OP_CMPGEI 8 +#define R1_OP_LDHU 11 +#define R1_OP_ANDI 12 +#define R1_OP_STH 13 +#define R1_OP_BGE 14 +#define R1_OP_LDH 15 +#define R1_OP_CMPLTI 16 +#define R1_OP_INITDA 19 +#define R1_OP_ORI 20 +#define R1_OP_STW 21 +#define R1_OP_BLT 22 +#define R1_OP_LDW 23 +#define R1_OP_CMPNEI 24 +#define R1_OP_FLUSHDA 27 +#define R1_OP_XORI 28 +#define R1_OP_BNE 30 +#define R1_OP_CMPEQI 32 +#define R1_OP_LDBUIO 35 +#define R1_OP_MULI 36 +#define R1_OP_STBIO 37 +#define R1_OP_BEQ 38 +#define R1_OP_LDBIO 39 +#define R1_OP_CMPGEUI 40 +#define R1_OP_LDHUIO 43 +#define R1_OP_ANDHI 44 +#define R1_OP_STHIO 45 +#define R1_OP_BGEU 46 +#define R1_OP_LDHIO 47 +#define R1_OP_CMPLTUI 48 +#define R1_OP_CUSTOM 50 +#define R1_OP_INITD 51 +#define R1_OP_ORHI 52 +#define R1_OP_STWIO 53 +#define R1_OP_BLTU 54 +#define R1_OP_LDWIO 55 +#define R1_OP_RDPRS 56 +#define R1_OP_OPX 58 +#define R1_OP_FLUSHD 59 +#define R1_OP_XORHI 60 + +#define R1_OPX_ERET 1 +#define R1_OPX_ROLI 2 +#define R1_OPX_ROL 3 +#define R1_OPX_FLUSHP 4 +#define R1_OPX_RET 5 +#define R1_OPX_NOR 6 +#define R1_OPX_MULXUU 7 +#define R1_OPX_CMPGE 8 +#define R1_OPX_BRET 9 +#define R1_OPX_ROR 11 +#define R1_OPX_FLUSHI 12 +#define R1_OPX_JMP 13 +#define R1_OPX_AND 14 +#define R1_OPX_CMPLT 16 +#define R1_OPX_SLLI 18 +#define R1_OPX_SLL 19 +#define R1_OPX_WRPRS 20 +#define R1_OPX_OR 22 +#define R1_OPX_MULXSU 23 +#define R1_OPX_CMPNE 24 +#define R1_OPX_SRLI 26 +#define R1_OPX_SRL 27 +#define R1_OPX_NEXTPC 28 +#define R1_OPX_CALLR 29 +#define R1_OPX_XOR 30 +#define R1_OPX_MULXSS 31 +#define R1_OPX_CMPEQ 32 +#define R1_OPX_DIVU 36 +#define R1_OPX_DIV 37 +#define R1_OPX_RDCTL 38 +#define R1_OPX_MUL 39 +#define R1_OPX_CMPGEU 40 +#define R1_OPX_INITI 41 +#define R1_OPX_TRAP 45 +#define R1_OPX_WRCTL 46 +#define R1_OPX_CMPLTU 48 +#define R1_OPX_ADD 49 +#define R1_OPX_BREAK 52 +#define R1_OPX_SYNC 54 +#define R1_OPX_SUB 57 +#define R1_OPX_SRAI 58 +#define R1_OPX_SRA 59 + +/* Some convenience macros for R1 encodings, for use in instruction tables. + MATCH_R1_OPX0(NAME) and MASK_R1_OPX0 are used for R-type instructions + with 3 register operands and constant 0 in the immediate field. + The general forms are MATCH_R1_OPX(NAME, A, B, C) where the arguments specify + constant values and MASK_R1_OPX(A, B, C, N) where the arguments are booleans + that are true if the field should be included in the mask. + */ +#define MATCH_R1_OP(NAME) \ + (SET_IW_R1_OP (R1_OP_##NAME)) +#define MASK_R1_OP \ + IW_R1_OP_SHIFTED_MASK + +#define MATCH_R1_OPX0(NAME) \ + (SET_IW_R1_OP (R1_OP_OPX) | SET_IW_R_OPX (R1_OPX_##NAME)) +#define MASK_R1_OPX0 \ + (IW_R1_OP_SHIFTED_MASK | IW_R_OPX_SHIFTED_MASK | IW_R_IMM5_SHIFTED_MASK) + +#define MATCH_R1_OPX(NAME, A, B, C) \ + (MATCH_R1_OPX0 (NAME) | SET_IW_R_A (A) | SET_IW_R_B (B) | SET_IW_R_C (C)) +#define MASK_R1_OPX(A, B, C, N) \ + (IW_R1_OP_SHIFTED_MASK | IW_R_OPX_SHIFTED_MASK \ + | (A ? IW_R_A_SHIFTED_MASK : 0) \ + | (B ? IW_R_B_SHIFTED_MASK : 0) \ + | (C ? IW_R_C_SHIFTED_MASK : 0) \ + | (N ? IW_R_IMM5_SHIFTED_MASK : 0)) + +/* And here's the match/mask macros for the R1 instruction set. */ +#define MATCH_R1_ADD MATCH_R1_OPX0 (ADD) +#define MASK_R1_ADD MASK_R1_OPX0 +#define MATCH_R1_ADDI MATCH_R1_OP (ADDI) +#define MASK_R1_ADDI MASK_R1_OP +#define MATCH_R1_AND MATCH_R1_OPX0 (AND) +#define MASK_R1_AND MASK_R1_OPX0 +#define MATCH_R1_ANDHI MATCH_R1_OP (ANDHI) +#define MASK_R1_ANDHI MASK_R1_OP +#define MATCH_R1_ANDI MATCH_R1_OP (ANDI) +#define MASK_R1_ANDI MASK_R1_OP +#define MATCH_R1_BEQ MATCH_R1_OP (BEQ) +#define MASK_R1_BEQ MASK_R1_OP +#define MATCH_R1_BGE MATCH_R1_OP (BGE) +#define MASK_R1_BGE MASK_R1_OP +#define MATCH_R1_BGEU MATCH_R1_OP (BGEU) +#define MASK_R1_BGEU MASK_R1_OP +#define MATCH_R1_BGT MATCH_R1_OP (BLT) +#define MASK_R1_BGT MASK_R1_OP +#define MATCH_R1_BGTU MATCH_R1_OP (BLTU) +#define MASK_R1_BGTU MASK_R1_OP +#define MATCH_R1_BLE MATCH_R1_OP (BGE) +#define MASK_R1_BLE MASK_R1_OP +#define MATCH_R1_BLEU MATCH_R1_OP (BGEU) +#define MASK_R1_BLEU MASK_R1_OP +#define MATCH_R1_BLT MATCH_R1_OP (BLT) +#define MASK_R1_BLT MASK_R1_OP +#define MATCH_R1_BLTU MATCH_R1_OP (BLTU) +#define MASK_R1_BLTU MASK_R1_OP +#define MATCH_R1_BNE MATCH_R1_OP (BNE) +#define MASK_R1_BNE MASK_R1_OP +#define MATCH_R1_BR MATCH_R1_OP (BR) +#define MASK_R1_BR MASK_R1_OP | IW_I_A_SHIFTED_MASK | IW_I_B_SHIFTED_MASK +#define MATCH_R1_BREAK MATCH_R1_OPX (BREAK, 0, 0, 0x1e) +#define MASK_R1_BREAK MASK_R1_OPX (1, 1, 1, 0) +#define MATCH_R1_BRET MATCH_R1_OPX (BRET, 0x1e, 0, 0) +#define MASK_R1_BRET MASK_R1_OPX (1, 1, 1, 1) +#define MATCH_R1_CALL MATCH_R1_OP (CALL) +#define MASK_R1_CALL MASK_R1_OP +#define MATCH_R1_CALLR MATCH_R1_OPX (CALLR, 0, 0, 0x1f) +#define MASK_R1_CALLR MASK_R1_OPX (0, 1, 1, 1) +#define MATCH_R1_CMPEQ MATCH_R1_OPX0 (CMPEQ) +#define MASK_R1_CMPEQ MASK_R1_OPX0 +#define MATCH_R1_CMPEQI MATCH_R1_OP (CMPEQI) +#define MASK_R1_CMPEQI MASK_R1_OP +#define MATCH_R1_CMPGE MATCH_R1_OPX0 (CMPGE) +#define MASK_R1_CMPGE MASK_R1_OPX0 +#define MATCH_R1_CMPGEI MATCH_R1_OP (CMPGEI) +#define MASK_R1_CMPGEI MASK_R1_OP +#define MATCH_R1_CMPGEU MATCH_R1_OPX0 (CMPGEU) +#define MASK_R1_CMPGEU MASK_R1_OPX0 +#define MATCH_R1_CMPGEUI MATCH_R1_OP (CMPGEUI) +#define MASK_R1_CMPGEUI MASK_R1_OP +#define MATCH_R1_CMPGT MATCH_R1_OPX0 (CMPLT) +#define MASK_R1_CMPGT MASK_R1_OPX0 +#define MATCH_R1_CMPGTI MATCH_R1_OP (CMPGEI) +#define MASK_R1_CMPGTI MASK_R1_OP +#define MATCH_R1_CMPGTU MATCH_R1_OPX0 (CMPLTU) +#define MASK_R1_CMPGTU MASK_R1_OPX0 +#define MATCH_R1_CMPGTUI MATCH_R1_OP (CMPGEUI) +#define MASK_R1_CMPGTUI MASK_R1_OP +#define MATCH_R1_CMPLE MATCH_R1_OPX0 (CMPGE) +#define MASK_R1_CMPLE MASK_R1_OPX0 +#define MATCH_R1_CMPLEI MATCH_R1_OP (CMPLTI) +#define MASK_R1_CMPLEI MASK_R1_OP +#define MATCH_R1_CMPLEU MATCH_R1_OPX0 (CMPGEU) +#define MASK_R1_CMPLEU MASK_R1_OPX0 +#define MATCH_R1_CMPLEUI MATCH_R1_OP (CMPLTUI) +#define MASK_R1_CMPLEUI MASK_R1_OP +#define MATCH_R1_CMPLT MATCH_R1_OPX0 (CMPLT) +#define MASK_R1_CMPLT MASK_R1_OPX0 +#define MATCH_R1_CMPLTI MATCH_R1_OP (CMPLTI) +#define MASK_R1_CMPLTI MASK_R1_OP +#define MATCH_R1_CMPLTU MATCH_R1_OPX0 (CMPLTU) +#define MASK_R1_CMPLTU MASK_R1_OPX0 +#define MATCH_R1_CMPLTUI MATCH_R1_OP (CMPLTUI) +#define MASK_R1_CMPLTUI MASK_R1_OP +#define MATCH_R1_CMPNE MATCH_R1_OPX0 (CMPNE) +#define MASK_R1_CMPNE MASK_R1_OPX0 +#define MATCH_R1_CMPNEI MATCH_R1_OP (CMPNEI) +#define MASK_R1_CMPNEI MASK_R1_OP +#define MATCH_R1_CUSTOM MATCH_R1_OP (CUSTOM) +#define MASK_R1_CUSTOM MASK_R1_OP +#define MATCH_R1_DIV MATCH_R1_OPX0 (DIV) +#define MASK_R1_DIV MASK_R1_OPX0 +#define MATCH_R1_DIVU MATCH_R1_OPX0 (DIVU) +#define MASK_R1_DIVU MASK_R1_OPX0 +#define MATCH_R1_ERET MATCH_R1_OPX (ERET, 0x1d, 0x1e, 0) +#define MASK_R1_ERET MASK_R1_OPX (1, 1, 1, 1) +#define MATCH_R1_FLUSHD MATCH_R1_OP (FLUSHD) | SET_IW_I_B (0) +#define MASK_R1_FLUSHD MASK_R1_OP | IW_I_B_SHIFTED_MASK +#define MATCH_R1_FLUSHDA MATCH_R1_OP (FLUSHDA) | SET_IW_I_B (0) +#define MASK_R1_FLUSHDA MASK_R1_OP | IW_I_B_SHIFTED_MASK +#define MATCH_R1_FLUSHI MATCH_R1_OPX (FLUSHI, 0, 0, 0) +#define MASK_R1_FLUSHI MASK_R1_OPX (0, 1, 1, 1) +#define MATCH_R1_FLUSHP MATCH_R1_OPX (FLUSHP, 0, 0, 0) +#define MASK_R1_FLUSHP MASK_R1_OPX (1, 1, 1, 1) +#define MATCH_R1_INITD MATCH_R1_OP (INITD) | SET_IW_I_B (0) +#define MASK_R1_INITD MASK_R1_OP | IW_I_B_SHIFTED_MASK +#define MATCH_R1_INITDA MATCH_R1_OP (INITDA) | SET_IW_I_B (0) +#define MASK_R1_INITDA MASK_R1_OP | IW_I_B_SHIFTED_MASK +#define MATCH_R1_INITI MATCH_R1_OPX (INITI, 0, 0, 0) +#define MASK_R1_INITI MASK_R1_OPX (0, 1, 1, 1) +#define MATCH_R1_JMP MATCH_R1_OPX (JMP, 0, 0, 0) +#define MASK_R1_JMP MASK_R1_OPX (0, 1, 1, 1) +#define MATCH_R1_JMPI MATCH_R1_OP (JMPI) +#define MASK_R1_JMPI MASK_R1_OP +#define MATCH_R1_LDB MATCH_R1_OP (LDB) +#define MASK_R1_LDB MASK_R1_OP +#define MATCH_R1_LDBIO MATCH_R1_OP (LDBIO) +#define MASK_R1_LDBIO MASK_R1_OP +#define MATCH_R1_LDBU MATCH_R1_OP (LDBU) +#define MASK_R1_LDBU MASK_R1_OP +#define MATCH_R1_LDBUIO MATCH_R1_OP (LDBUIO) +#define MASK_R1_LDBUIO MASK_R1_OP +#define MATCH_R1_LDH MATCH_R1_OP (LDH) +#define MASK_R1_LDH MASK_R1_OP +#define MATCH_R1_LDHIO MATCH_R1_OP (LDHIO) +#define MASK_R1_LDHIO MASK_R1_OP +#define MATCH_R1_LDHU MATCH_R1_OP (LDHU) +#define MASK_R1_LDHU MASK_R1_OP +#define MATCH_R1_LDHUIO MATCH_R1_OP (LDHUIO) +#define MASK_R1_LDHUIO MASK_R1_OP +#define MATCH_R1_LDW MATCH_R1_OP (LDW) +#define MASK_R1_LDW MASK_R1_OP +#define MATCH_R1_LDWIO MATCH_R1_OP (LDWIO) +#define MASK_R1_LDWIO MASK_R1_OP +#define MATCH_R1_MOV MATCH_R1_OPX (ADD, 0, 0, 0) +#define MASK_R1_MOV MASK_R1_OPX (0, 1, 0, 1) +#define MATCH_R1_MOVHI MATCH_R1_OP (ORHI) | SET_IW_I_A (0) +#define MASK_R1_MOVHI MASK_R1_OP | IW_I_A_SHIFTED_MASK +#define MATCH_R1_MOVI MATCH_R1_OP (ADDI) | SET_IW_I_A (0) +#define MASK_R1_MOVI MASK_R1_OP | IW_I_A_SHIFTED_MASK +#define MATCH_R1_MOVUI MATCH_R1_OP (ORI) | SET_IW_I_A (0) +#define MASK_R1_MOVUI MASK_R1_OP | IW_I_A_SHIFTED_MASK +#define MATCH_R1_MUL MATCH_R1_OPX0 (MUL) +#define MASK_R1_MUL MASK_R1_OPX0 +#define MATCH_R1_MULI MATCH_R1_OP (MULI) +#define MASK_R1_MULI MASK_R1_OP +#define MATCH_R1_MULXSS MATCH_R1_OPX0 (MULXSS) +#define MASK_R1_MULXSS MASK_R1_OPX0 +#define MATCH_R1_MULXSU MATCH_R1_OPX0 (MULXSU) +#define MASK_R1_MULXSU MASK_R1_OPX0 +#define MATCH_R1_MULXUU MATCH_R1_OPX0 (MULXUU) +#define MASK_R1_MULXUU MASK_R1_OPX0 +#define MATCH_R1_NEXTPC MATCH_R1_OPX (NEXTPC, 0, 0, 0) +#define MASK_R1_NEXTPC MASK_R1_OPX (1, 1, 0, 1) +#define MATCH_R1_NOP MATCH_R1_OPX (ADD, 0, 0, 0) +#define MASK_R1_NOP MASK_R1_OPX (1, 1, 1, 1) +#define MATCH_R1_NOR MATCH_R1_OPX0 (NOR) +#define MASK_R1_NOR MASK_R1_OPX0 +#define MATCH_R1_OR MATCH_R1_OPX0 (OR) +#define MASK_R1_OR MASK_R1_OPX0 +#define MATCH_R1_ORHI MATCH_R1_OP (ORHI) +#define MASK_R1_ORHI MASK_R1_OP +#define MATCH_R1_ORI MATCH_R1_OP (ORI) +#define MASK_R1_ORI MASK_R1_OP +#define MATCH_R1_RDCTL MATCH_R1_OPX (RDCTL, 0, 0, 0) +#define MASK_R1_RDCTL MASK_R1_OPX (1, 1, 0, 0) +#define MATCH_R1_RDPRS MATCH_R1_OP (RDPRS) +#define MASK_R1_RDPRS MASK_R1_OP +#define MATCH_R1_RET MATCH_R1_OPX (RET, 0x1f, 0, 0) +#define MASK_R1_RET MASK_R1_OPX (1, 1, 1, 1) +#define MATCH_R1_ROL MATCH_R1_OPX0 (ROL) +#define MASK_R1_ROL MASK_R1_OPX0 +#define MATCH_R1_ROLI MATCH_R1_OPX (ROLI, 0, 0, 0) +#define MASK_R1_ROLI MASK_R1_OPX (0, 1, 0, 0) +#define MATCH_R1_ROR MATCH_R1_OPX0 (ROR) +#define MASK_R1_ROR MASK_R1_OPX0 +#define MATCH_R1_SLL MATCH_R1_OPX0 (SLL) +#define MASK_R1_SLL MASK_R1_OPX0 +#define MATCH_R1_SLLI MATCH_R1_OPX (SLLI, 0, 0, 0) +#define MASK_R1_SLLI MASK_R1_OPX (0, 1, 0, 0) +#define MATCH_R1_SRA MATCH_R1_OPX0 (SRA) +#define MASK_R1_SRA MASK_R1_OPX0 +#define MATCH_R1_SRAI MATCH_R1_OPX (SRAI, 0, 0, 0) +#define MASK_R1_SRAI MASK_R1_OPX (0, 1, 0, 0) +#define MATCH_R1_SRL MATCH_R1_OPX0 (SRL) +#define MASK_R1_SRL MASK_R1_OPX0 +#define MATCH_R1_SRLI MATCH_R1_OPX (SRLI, 0, 0, 0) +#define MASK_R1_SRLI MASK_R1_OPX (0, 1, 0, 0) +#define MATCH_R1_STB MATCH_R1_OP (STB) +#define MASK_R1_STB MASK_R1_OP +#define MATCH_R1_STBIO MATCH_R1_OP (STBIO) +#define MASK_R1_STBIO MASK_R1_OP +#define MATCH_R1_STH MATCH_R1_OP (STH) +#define MASK_R1_STH MASK_R1_OP +#define MATCH_R1_STHIO MATCH_R1_OP (STHIO) +#define MASK_R1_STHIO MASK_R1_OP +#define MATCH_R1_STW MATCH_R1_OP (STW) +#define MASK_R1_STW MASK_R1_OP +#define MATCH_R1_STWIO MATCH_R1_OP (STWIO) +#define MASK_R1_STWIO MASK_R1_OP +#define MATCH_R1_SUB MATCH_R1_OPX0 (SUB) +#define MASK_R1_SUB MASK_R1_OPX0 +#define MATCH_R1_SUBI MATCH_R1_OP (ADDI) +#define MASK_R1_SUBI MASK_R1_OP +#define MATCH_R1_SYNC MATCH_R1_OPX (SYNC, 0, 0, 0) +#define MASK_R1_SYNC MASK_R1_OPX (1, 1, 1, 1) +#define MATCH_R1_TRAP MATCH_R1_OPX (TRAP, 0, 0, 0x1d) +#define MASK_R1_TRAP MASK_R1_OPX (1, 1, 1, 0) +#define MATCH_R1_WRCTL MATCH_R1_OPX (WRCTL, 0, 0, 0) +#define MASK_R1_WRCTL MASK_R1_OPX (0, 1, 1, 0) +#define MATCH_R1_WRPRS MATCH_R1_OPX (WRPRS, 0, 0, 0) +#define MASK_R1_WRPRS MASK_R1_OPX (0, 1, 0, 1) +#define MATCH_R1_XOR MATCH_R1_OPX0 (XOR) +#define MASK_R1_XOR MASK_R1_OPX0 +#define MATCH_R1_XORHI MATCH_R1_OP (XORHI) +#define MASK_R1_XORHI MASK_R1_OP +#define MATCH_R1_XORI MATCH_R1_OP (XORI) +#define MASK_R1_XORI MASK_R1_OP + +#endif /* _NIOS2R1_H */ diff --git a/external/gpl3/gdb/dist/include/opcode/np1.h b/external/gpl3/gdb/dist/include/opcode/np1.h index 6dadafde0db5..ff5fc7809442 100644 --- a/external/gpl3/gdb/dist/include/opcode/np1.h +++ b/external/gpl3/gdb/dist/include/opcode/np1.h @@ -1,5 +1,5 @@ /* Print GOULD NPL instructions for GDB, the GNU debugger. - Copyright 1986, 1987, 1989, 1991, 2010 Free Software Foundation, Inc. + Copyright (C) 1986-2015 Free Software Foundation, Inc. This file is part of GDB. diff --git a/external/gpl3/gdb/dist/include/opcode/ns32k.h b/external/gpl3/gdb/dist/include/opcode/ns32k.h index 34c42f87593f..93994065d8d1 100644 --- a/external/gpl3/gdb/dist/include/opcode/ns32k.h +++ b/external/gpl3/gdb/dist/include/opcode/ns32k.h @@ -1,5 +1,5 @@ /* ns32k-opcode.h -- Opcode table for National Semi 32k processor - Copyright 1987, 1991, 1994, 2002, 2010 Free Software Foundation, Inc. + Copyright (C) 1987-2015 Free Software Foundation, Inc. This file is part of GAS, the GNU Assembler. diff --git a/external/gpl3/gdb/dist/include/opcode/pdp11.h b/external/gpl3/gdb/dist/include/opcode/pdp11.h index 24e13b25ae56..d4e67c7d6e51 100644 --- a/external/gpl3/gdb/dist/include/opcode/pdp11.h +++ b/external/gpl3/gdb/dist/include/opcode/pdp11.h @@ -1,5 +1,5 @@ /* PDP-11 opcde list. - Copyright 2001, 2002, 2010 Free Software Foundation, Inc. + Copyright (C) 2001-2015 Free Software Foundation, Inc. This file is part of GDB and GAS. diff --git a/external/gpl3/gdb/dist/include/opcode/pj.h b/external/gpl3/gdb/dist/include/opcode/pj.h index e6ffacc4ba39..aa4a208d1aee 100644 --- a/external/gpl3/gdb/dist/include/opcode/pj.h +++ b/external/gpl3/gdb/dist/include/opcode/pj.h @@ -1,5 +1,5 @@ /* Definitions for decoding the picoJava opcode table. - Copyright 1999, 2002, 2003, 2010 Free Software Foundation, Inc. + Copyright (C) 1999-2015 Free Software Foundation, Inc. Contributed by Steve Chamberlain of Transmeta (sac@pobox.com). This program is free software; you can redistribute it and/or modify diff --git a/external/gpl3/gdb/dist/include/opcode/pn.h b/external/gpl3/gdb/dist/include/opcode/pn.h index 6674030c4fd1..e7dc18e5948d 100644 --- a/external/gpl3/gdb/dist/include/opcode/pn.h +++ b/external/gpl3/gdb/dist/include/opcode/pn.h @@ -1,5 +1,5 @@ /* Print GOULD PN (PowerNode) instructions for GDB, the GNU debugger. - Copyright 1986, 1987, 1989, 1991, 2010 Free Software Foundation, Inc. + Copyright (C) 1986-2015 Free Software Foundation, Inc. This file is part of GDB. diff --git a/external/gpl3/gdb/dist/include/opcode/ppc.h b/external/gpl3/gdb/dist/include/opcode/ppc.h index df9713023238..5dc132ea3830 100644 --- a/external/gpl3/gdb/dist/include/opcode/ppc.h +++ b/external/gpl3/gdb/dist/include/opcode/ppc.h @@ -1,6 +1,5 @@ /* ppc.h -- Header file for PowerPC opcode table - Copyright 1994, 1995, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, - 2007, 2008, 2009, 2010, 2012 Free Software Foundation, Inc. + Copyright (C) 1994-2015 Free Software Foundation, Inc. Written by Ian Lance Taylor, Cygnus Support This file is part of GDB, GAS, and the GNU binutils. diff --git a/external/gpl3/gdb/dist/include/opcode/pyr.h b/external/gpl3/gdb/dist/include/opcode/pyr.h index 2fffd946213b..fa5c4f86648b 100644 --- a/external/gpl3/gdb/dist/include/opcode/pyr.h +++ b/external/gpl3/gdb/dist/include/opcode/pyr.h @@ -1,6 +1,6 @@ /* pyramid.opcode.h -- gdb initial attempt. - Copyright 2001, 2010 Free Software Foundation, Inc. + Copyright (C) 2001-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/opcode/rl78.h b/external/gpl3/gdb/dist/include/opcode/rl78.h index 0f3c64d62728..5495c4cbf21f 100644 --- a/external/gpl3/gdb/dist/include/opcode/rl78.h +++ b/external/gpl3/gdb/dist/include/opcode/rl78.h @@ -1,6 +1,5 @@ /* Opcode decoder for the Renesas RL78 - Copyright 2011 - Free Software Foundation, Inc. + Copyright (C) 2011-2015 Free Software Foundation, Inc. Written by DJ Delorie This file is part of GDB, the GNU Debugger and GAS, the GNU Assembler. diff --git a/external/gpl3/gdb/dist/include/opcode/rx.h b/external/gpl3/gdb/dist/include/opcode/rx.h index aa85fe4a9163..e4fe05deeb38 100644 --- a/external/gpl3/gdb/dist/include/opcode/rx.h +++ b/external/gpl3/gdb/dist/include/opcode/rx.h @@ -1,6 +1,5 @@ /* Opcode decoder for the Renesas RX - Copyright 2008, 2009, 2010 - Free Software Foundation, Inc. + Copyright (C) 2008-2015 Free Software Foundation, Inc. Written by DJ Delorie This file is part of GDB, the GNU Debugger and GAS, the GNU Assembler. diff --git a/external/gpl3/gdb/dist/include/opcode/s390.h b/external/gpl3/gdb/dist/include/opcode/s390.h index 531011e0fa5a..79e9a60a0792 100644 --- a/external/gpl3/gdb/dist/include/opcode/s390.h +++ b/external/gpl3/gdb/dist/include/opcode/s390.h @@ -1,5 +1,5 @@ /* s390.h -- Header file for S390 opcode table - Copyright 2000, 2001, 2003, 2010 Free Software Foundation, Inc. + Copyright (C) 2000-2015 Free Software Foundation, Inc. Contributed by Martin Schwidefsky (schwidefsky@de.ibm.com). This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/opcode/score-datadep.h b/external/gpl3/gdb/dist/include/opcode/score-datadep.h index 10ddf32f67fb..63a56a5730c4 100644 --- a/external/gpl3/gdb/dist/include/opcode/score-datadep.h +++ b/external/gpl3/gdb/dist/include/opcode/score-datadep.h @@ -1,5 +1,5 @@ /* score-datadep.h -- Score Instructions data dependency table - Copyright 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. + Copyright (C) 2006-2015 Free Software Foundation, Inc. Contributed by: Brain.lin (brain.lin@sunplusct.com) Mei Ligang (ligang@sunnorth.com.cn) diff --git a/external/gpl3/gdb/dist/include/opcode/score-inst.h b/external/gpl3/gdb/dist/include/opcode/score-inst.h index ecb18da2a918..75d9fd3fd9dc 100644 --- a/external/gpl3/gdb/dist/include/opcode/score-inst.h +++ b/external/gpl3/gdb/dist/include/opcode/score-inst.h @@ -1,5 +1,5 @@ /* score-inst.h -- Score Instructions Table - Copyright 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. + Copyright (C) 2006-2015 Free Software Foundation, Inc. Contributed by: Brain.lin (brain.lin@sunplusct.com) Mei Ligang (ligang@sunnorth.com.cn) diff --git a/external/gpl3/gdb/dist/include/opcode/sparc.h b/external/gpl3/gdb/dist/include/opcode/sparc.h index f05909feddc5..08e0e447d2a3 100644 --- a/external/gpl3/gdb/dist/include/opcode/sparc.h +++ b/external/gpl3/gdb/dist/include/opcode/sparc.h @@ -1,6 +1,5 @@ /* Definitions for opcode table for the sparc. - Copyright 1989, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 2000, 2002, - 2003, 2005, 2010, 2011 Free Software Foundation, Inc. + Copyright (C) 1989-2015 Free Software Foundation, Inc. This file is part of GAS, the GNU Assembler, GDB, the GNU debugger, and the GNU Binutils. @@ -101,6 +100,7 @@ typedef struct sparc_opcode /* This was called "delayed" in versions before the flags. */ unsigned int flags; unsigned int hwcaps; + unsigned int hwcaps2; short architecture; /* Bitmask of sparc_opcode_arch_val's. */ } sparc_opcode; @@ -116,7 +116,8 @@ typedef struct sparc_opcode #define F_PREF_ALIAS (F_ALIAS|F_PREFERRED) -/* These must match the HWCAP_* values precisely. */ +/* These must match the ELF_SPARC_HWCAP_* and ELF_SPARC_HWCAP2_* + values precisely. See include/elf/sparc.h. */ #define HWCAP_MUL32 0x00000001 /* umul/umulcc/smul/smulcc insns */ #define HWCAP_DIV32 0x00000002 /* udiv/udivcc/sdiv/sdivcc insns */ #define HWCAP_FSMULD 0x00000004 /* 'fsmuld' insn */ @@ -149,6 +150,20 @@ typedef struct sparc_opcode #define HWCAP_CBCOND 0x10000000 /* Compare and Branch insns */ #define HWCAP_CRC32C 0x20000000 /* CRC32C insn */ +#define HWCAP2_FJATHPLUS 0x00000001 /* Fujitsu Athena+ */ +#define HWCAP2_VIS3B 0x00000002 /* Subset of VIS3 present on sparc64 X+. */ +#define HWCAP2_ADP 0x00000004 /* Application Data Protection */ +#define HWCAP2_SPARC5 0x00000008 /* The 29 new fp and sub instructions */ +#define HWCAP2_MWAIT 0x00000010 /* mwait instruction and load/monitor ASIs */ +#define HWCAP2_XMPMUL 0x00000020 /* XOR multiple precision multiply */ +#define HWCAP2_XMONT 0x00000040 /* XOR Montgomery mult/sqr instructions */ +#define HWCAP2_NSEC \ + 0x00000080 /* pause insn with support for nsec timings */ +#define HWCAP2_FJATHHPC 0x00001000 /* Fujitsu HPC instrs */ +#define HWCAP2_FJDES 0x00002000 /* Fujitsu DES instrs */ +#define HWCAP2_FJAES 0x00010000 /* Fujitsu AES instrs */ + + /* All sparc opcodes are 32 bits, except for the `set' instruction (really a macro), which is 64 bits. It is handled as a special case. @@ -174,6 +189,7 @@ typedef struct sparc_opcode g frsd floating point register. H frsd floating point register (double/even). J frsd floating point register (quad/multiple of 4). + } frsd floating point register (double/even) that is == frs2 b crs1 coprocessor register c crs2 coprocessor register D crsd coprocessor register @@ -215,6 +231,7 @@ typedef struct sparc_opcode s %fprs. (v9) P %pc. (v9) W %tick. (v9) + { %mcdper. (v9b) o %asi. (v9) 6 %fcc0. (v9) 7 %fcc1. (v9) diff --git a/external/gpl3/gdb/dist/include/opcode/spu-insns.h b/external/gpl3/gdb/dist/include/opcode/spu-insns.h index d6c260aaeeff..0cf03c1458a3 100644 --- a/external/gpl3/gdb/dist/include/opcode/spu-insns.h +++ b/external/gpl3/gdb/dist/include/opcode/spu-insns.h @@ -1,6 +1,6 @@ /* SPU ELF support for BFD. - Copyright 2006, 2007, 2010 Free Software Foundation, Inc. + Copyright (C) 2006-2015 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/opcode/spu.h b/external/gpl3/gdb/dist/include/opcode/spu.h index c6468303bc0d..df0c2edaba6f 100644 --- a/external/gpl3/gdb/dist/include/opcode/spu.h +++ b/external/gpl3/gdb/dist/include/opcode/spu.h @@ -1,6 +1,6 @@ /* SPU ELF support for BFD. - Copyright 2006, 2010 Free Software Foundation, Inc. + Copyright (C) 2006-2015 Free Software Foundation, Inc. This file is part of GDB, GAS, and the GNU binutils. diff --git a/external/gpl3/gdb/dist/include/opcode/tahoe.h b/external/gpl3/gdb/dist/include/opcode/tahoe.h index 70fcf623ae1c..90ae0c2886cc 100644 --- a/external/gpl3/gdb/dist/include/opcode/tahoe.h +++ b/external/gpl3/gdb/dist/include/opcode/tahoe.h @@ -2,7 +2,7 @@ * Ported by the State University of New York at Buffalo by the Distributed * Computer Systems Lab, Department of Computer Science, 1991. */ -/* Copyright 2012 Free Software Foundation, Inc. +/* Copyright (C) 2012-2015 Free Software Foundation, Inc. This file is part of GDB and BINUTILS. diff --git a/external/gpl3/gdb/dist/include/opcode/tic30.h b/external/gpl3/gdb/dist/include/opcode/tic30.h index 3f4d30715241..a6e9743b1855 100644 --- a/external/gpl3/gdb/dist/include/opcode/tic30.h +++ b/external/gpl3/gdb/dist/include/opcode/tic30.h @@ -1,5 +1,5 @@ /* tic30.h -- Header file for TI TMS320C30 opcode table - Copyright 1998, 2005, 2009, 2010 Free Software Foundation, Inc. + Copyright (C) 1998-2015 Free Software Foundation, Inc. Contributed by Steven Haworth (steve@pm.cse.rmit.edu.au) This file is part of GDB, GAS, and the GNU binutils. diff --git a/external/gpl3/gdb/dist/include/opcode/tic4x.h b/external/gpl3/gdb/dist/include/opcode/tic4x.h index 6f16fcb404ee..af4965eb5e93 100644 --- a/external/gpl3/gdb/dist/include/opcode/tic4x.h +++ b/external/gpl3/gdb/dist/include/opcode/tic4x.h @@ -1,6 +1,6 @@ /* Table of opcodes for the Texas Instruments TMS320C[34]X family. - Copyright (C) 2002, 2003, 2010 Free Software Foundation. + Copyright (C) 2002-2015 Free Software Foundation, Inc. Contributed by Michael P. Hayes (m.hayes@elec.canterbury.ac.nz) diff --git a/external/gpl3/gdb/dist/include/opcode/tic54x.h b/external/gpl3/gdb/dist/include/opcode/tic54x.h index f468714eefd9..9c267c03db0a 100644 --- a/external/gpl3/gdb/dist/include/opcode/tic54x.h +++ b/external/gpl3/gdb/dist/include/opcode/tic54x.h @@ -1,5 +1,5 @@ /* tic54x.h -- Header file for TI TMS320C54X opcode table - Copyright 1999, 2000, 2001, 2005, 2009, 2010 Free Software Foundation, Inc. + Copyright (C) 1999-2015 Free Software Foundation, Inc. Written by Timothy Wall (twall@cygnus.com) This file is part of GDB, GAS, and the GNU binutils. diff --git a/external/gpl3/gdb/dist/include/opcode/tic6x-control-registers.h b/external/gpl3/gdb/dist/include/opcode/tic6x-control-registers.h index b4387779aad7..4e3a893ef204 100644 --- a/external/gpl3/gdb/dist/include/opcode/tic6x-control-registers.h +++ b/external/gpl3/gdb/dist/include/opcode/tic6x-control-registers.h @@ -1,6 +1,5 @@ /* TI C6X control register information. - Copyright 2010 - Free Software Foundation, Inc. + Copyright (C) 2010-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/opcode/tic6x-insn-formats.h b/external/gpl3/gdb/dist/include/opcode/tic6x-insn-formats.h index 80bc9fac159a..43e39a67f5ac 100644 --- a/external/gpl3/gdb/dist/include/opcode/tic6x-insn-formats.h +++ b/external/gpl3/gdb/dist/include/opcode/tic6x-insn-formats.h @@ -1,5 +1,5 @@ /* TI C6X instruction format information. - Copyright 2010-2013 Free Software Foundation, Inc. + Copyright (C) 2010-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/opcode/tic6x-opcode-table.h b/external/gpl3/gdb/dist/include/opcode/tic6x-opcode-table.h index d876c564a2a1..79ee56a10911 100644 --- a/external/gpl3/gdb/dist/include/opcode/tic6x-opcode-table.h +++ b/external/gpl3/gdb/dist/include/opcode/tic6x-opcode-table.h @@ -1,5 +1,5 @@ /* TI C6X opcode table. - Copyright 2010-2013 Free Software Foundation, Inc. + Copyright (C) 2010-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/opcode/tic6x.h b/external/gpl3/gdb/dist/include/opcode/tic6x.h index d76c5e1aab7b..0971b1ce9d11 100644 --- a/external/gpl3/gdb/dist/include/opcode/tic6x.h +++ b/external/gpl3/gdb/dist/include/opcode/tic6x.h @@ -1,5 +1,5 @@ /* TI C6X opcode information. - Copyright 2010-2013 Free Software Foundation, Inc. + Copyright (C) 2010-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/opcode/tic80.h b/external/gpl3/gdb/dist/include/opcode/tic80.h index 43c84be574f5..c27c006f21cb 100644 --- a/external/gpl3/gdb/dist/include/opcode/tic80.h +++ b/external/gpl3/gdb/dist/include/opcode/tic80.h @@ -1,5 +1,5 @@ /* tic80.h -- Header file for TI TMS320C80 (MV) opcode table - Copyright 1996, 1997, 2003, 2010 Free Software Foundation, Inc. + Copyright (C) 1996-2015 Free Software Foundation, Inc. Written by Fred Fish (fnf@cygnus.com), Cygnus Support This file is part of GDB, GAS, and the GNU binutils. diff --git a/external/gpl3/gdb/dist/include/opcode/tilegx.h b/external/gpl3/gdb/dist/include/opcode/tilegx.h index c11fc16615cc..e0d8aee9bbee 100644 --- a/external/gpl3/gdb/dist/include/opcode/tilegx.h +++ b/external/gpl3/gdb/dist/include/opcode/tilegx.h @@ -1,6 +1,6 @@ /* TILE-Gx opcode information. * - * Copyright 2011 Free Software Foundation, Inc. + * Copyright (C) 2011-2015 Free Software Foundation, Inc. * * 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 diff --git a/external/gpl3/gdb/dist/include/opcode/tilepro.h b/external/gpl3/gdb/dist/include/opcode/tilepro.h index 767926bdaf1c..5a5640396f94 100644 --- a/external/gpl3/gdb/dist/include/opcode/tilepro.h +++ b/external/gpl3/gdb/dist/include/opcode/tilepro.h @@ -1,6 +1,6 @@ /* TILEPro opcode information. * - * Copyright 2011 Free Software Foundation, Inc. + * Copyright (C) 2011-2015 Free Software Foundation, Inc. * * 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 diff --git a/external/gpl3/gdb/dist/include/opcode/v850.h b/external/gpl3/gdb/dist/include/opcode/v850.h index 02ef3d4ccbbe..ace5ad7ea646 100644 --- a/external/gpl3/gdb/dist/include/opcode/v850.h +++ b/external/gpl3/gdb/dist/include/opcode/v850.h @@ -1,5 +1,5 @@ /* v850.h -- Header file for NEC V850 opcode table - Copyright 1996-2013 Free Software Foundation, Inc. + Copyright (C) 1996-2015 Free Software Foundation, Inc. Written by J.T. Conklin, Cygnus Support This file is part of GDB, GAS, and the GNU binutils. diff --git a/external/gpl3/gdb/dist/include/opcode/vax.h b/external/gpl3/gdb/dist/include/opcode/vax.h index f5cdd24397f5..e4aad533f19e 100644 --- a/external/gpl3/gdb/dist/include/opcode/vax.h +++ b/external/gpl3/gdb/dist/include/opcode/vax.h @@ -1,5 +1,5 @@ /* Vax opcde list. - Copyright 1989, 1991, 1992, 1995, 2010 Free Software Foundation, Inc. + Copyright (C) 1989-2015 Free Software Foundation, Inc. This file is part of GDB and GAS. diff --git a/external/gpl3/gdb/dist/include/opcode/visium.h b/external/gpl3/gdb/dist/include/opcode/visium.h new file mode 100644 index 000000000000..c6048c9b1bce --- /dev/null +++ b/external/gpl3/gdb/dist/include/opcode/visium.h @@ -0,0 +1,337 @@ +/* Opcode table header for Visium. + + Copyright (C) 2003-2015 Free Software Foundation, Inc. + + This file is part of GDB, GAS, and GNU binutils. + + GDB, GAS and the GNU binutils are free software; you can redistribute + them and/or modify them under the terms of the GNU General Public + License as published by the Free Software Foundation; either version 3, + or (at your option) any later version. + + GDB, GAS, and the GNU binutils are distributed in the hope that they + 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 file; see the file COPYING3. If not, write to the Free + Software Foundation, 51 Franklin Street - Fifth Floor, Boston, + MA 02110-1301, USA. */ + +enum visium_opcode_arch_val +{ + VISIUM_OPCODE_ARCH_DEF = 0, + VISIUM_OPCODE_ARCH_GR5, + VISIUM_OPCODE_ARCH_GR6, + VISIUM_OPCODE_ARCH_BAD +}; + +/* The highest architecture in the table. */ +#define VISIUM_OPCODE_ARCH_MAX (VISIUM_OPCODE_ARCH_BAD - 1) + +/* Given an enum visium_opcode_arch_val, return the bitmask to use in + insn encoding/decoding. */ +#define VISIUM_OPCODE_ARCH_MASK(arch) (1 << (arch)) + +/* Some defines to make life easy. */ +#define MASK_DEF VISIUM_OPCODE_ARCH_MASK (VISIUM_OPCODE_ARCH_DEF) +#define MASK_GR5 VISIUM_OPCODE_ARCH_MASK (VISIUM_OPCODE_ARCH_GR5) +#define MASK_GR6 VISIUM_OPCODE_ARCH_MASK (VISIUM_OPCODE_ARCH_GR6) + +/* Bit masks of architectures supporting the insn. */ +#define def (MASK_DEF | MASK_GR5 | MASK_GR6) +#define gr5 (MASK_GR5 | MASK_GR6) +#define gr6 (MASK_GR6) + +/* The condition code field is not used (zero) for most instructions. + BRR and BRA make normal use of it. Floating point instructions use + it as a sub-opcode. */ +#define CC_MASK (0xf << 27) + +/* It seems a shame not to use these bits in a class 0 instruction, + since they could be used to extend the range of the branch. */ +#define CLASS0_UNUSED_MASK (0x1f << 16) + +/* For class 1 instructions the following bit is unused. */ +#define CLASS1_UNUSED_MASK (1 << 9) + +/* For class 1 instructions this field gives the index for a write + instruction, the specific operation for an EAM instruction, or + the floating point destination register for a floating point + instruction. */ +#define CLASS1_INDEX_MASK (0x1f << 10) + +/* For class 3 instructions the following field gives the destination + general register. */ +#define CLASS3_DEST_MASK (0x1f << 10) + +/* For class 1 and class 3 instructions the following bit selects an + EAM write/read rather than a memory write/read. */ +#define EAM_SELECT_MASK (1 << 15) + +/* Floating point instructions are distinguished from general EAM + instructions by the following bit. */ +#define FP_SELECT_MASK (1 << 3) + +/* For both class 1 and class 3 the following fields give, where + appropriate the srcA and srcB registers whether floating point + or general. */ +#define SRCA_MASK (0x1f << 16) +#define SRCB_MASK (0x1f << 4) + +/* The class 3 interrupt bit. It turns a BRA into a SYS1, and an + RFLAG into a SYS2. This bit should not be set in the user's + class 3 instructions. This bit is also used in class 3 + to distinguish between floating point and other EAM operations. + (see FP_SELECT_MASK). */ +#define CLASS3_INT (1 << 3) + +/* Class 3 shift instructions use this bit to indicate that the + srcB field is a 5 bit immediate shift count rather than a + register number. */ +#define CLASS3_SOURCEB_IMMED (1 << 9) + +#define BMD 0x02630004 +#define BMI 0x82230004 +#define DSI 0x82800004 +#define ENI 0x02a00004 +#define RFI 0x82fe01d4 + +struct reg_entry +{ + char *name; + unsigned char code; +}; + +const struct reg_entry gen_reg_table[] = +{ + {"fp", 0x16}, + {"r0", 0x0}, + {"r1", 0x1}, + {"r10", 0xA}, + {"r11", 0xB}, + {"r12", 0xC}, + {"r13", 0xD}, + {"r14", 0xE}, + {"r15", 0xF}, + {"r16", 0x10}, + {"r17", 0x11}, + {"r18", 0x12}, + {"r19", 0x13}, + {"r2", 0x2}, + {"r20", 0x14}, + {"r21", 0x15}, + {"r22", 0x16}, + {"r23", 0x17}, + {"r24", 0x18}, + {"r25", 0x19}, + {"r26", 0x1a}, + {"r27", 0x1b}, + {"r28", 0x1c}, + {"r29", 0x1d}, + {"r3", 0x3}, + {"r30", 0x1e}, + {"r31", 0x1f}, + {"r4", 0x4}, + {"r5", 0x5}, + {"r6", 0x6}, + {"r7", 0x7}, + {"r8", 0x8}, + {"r9", 0x9}, + {"sp", 0x17}, +}; + +const struct reg_entry fp_reg_table[] = +{ + {"f0", 0x0}, + {"f1", 0x1}, + {"f10", 0xa}, + {"f11", 0xb}, + {"f12", 0xc}, + {"f13", 0xd}, + {"f14", 0xe}, + {"f15", 0xf}, + {"f2", 0x2}, + {"f3", 0x3}, + {"f4", 0x4}, + {"f5", 0x5}, + {"f6", 0x6}, + {"f7", 0x7}, + {"f8", 0x8}, + {"f9", 0x9}, +}; + +const struct cc_entry +{ + char *name; + int code; +} cc_table [] = +{ + {"cc", 6}, + {"cs", 2}, + {"eq", 1}, + {"fa", 0}, + {"ge", 9}, + {"gt", 10}, + {"hi", 11}, + {"le", 12}, + {"ls", 13}, + {"lt", 14}, + {"nc", 8}, + {"ne", 5}, + {"ns", 4}, + {"oc", 7}, + {"os", 3}, + {"tr", 15}, +}; + +enum addressing_mode +{ + mode_d, /* register := */ + mode_a, /* op= register */ + mode_da, /* register := register */ + mode_ab, /* register * register */ + mode_dab, /* register := register * register */ + mode_iab, /* 5-bit immediate * register * register */ + mode_0ab, /* zero * register * register */ + mode_da0, /* register := register * zero */ + mode_cad, /* condition * register * register */ + mode_das, /* register := register * 5-bit immed/register shift count */ + mode_di, /* register := 5-bit immediate */ + mode_ir, /* 5-bit immediate * register */ + mode_ai, /* register 16-bit unsigned immediate */ + mode_i, /* 16-bit unsigned immediate */ + mode_bax, /* register * register * 5-bit immediate */ + mode_dax, /* register := register * 5-bit immediate */ + mode_s, /* special mode */ + mode_sr, /* special mode with register */ + mode_ci, /* condition * 16-bit signed word displacement */ + mode_fdab, /* float := float * float */ + mode_ifdab, /* fpinst: 4-bit immediate * float * float * float */ + mode_idfab, /* fpuread: 4-bit immediate * register * float * float */ + mode_fda, /* float := float */ + mode_fdra, /* float := register */ + mode_rdfab, /* register := float * float */ + mode_rdfa, /* register := float */ + mode_rrr, /* 3 register sources and destinations (block move) */ +}; + +#define class0 (0<<25) +#define class1 (1<<25) +#define class2 (2<<25) +#define class3 (3<<25) + +static const struct opcode_entry +{ + char *mnem; + enum addressing_mode mode; + unsigned code; + char flags; +} +opcode_table[] = +{ + { "adc.b", mode_dab, class3|(1<<21)|(1), def }, + { "adc.l", mode_dab, class3|(1<<21)|(4), def }, + { "adc.w", mode_dab, class3|(1<<21)|(2), def }, + { "add.b", mode_dab, class3|(0<<21)|(1), def }, + { "add.l", mode_dab, class3|(0<<21)|(4), def }, + { "add.w", mode_dab, class3|(0<<21)|(2), def }, + { "addi", mode_ai, class2, def }, + { "and.b", mode_dab, class3|(10<<21)|(1), def}, + { "and.l", mode_dab, class3|(10<<21)|(4), def }, + { "and.w", mode_dab, class3|(10<<21)|(2), def }, + { "asl.b", mode_das, class3|(7<<21)|(1), def }, + { "asl.l", mode_das, class3|(7<<21)|(4), def }, + { "asl.w", mode_das, class3|(7<<21)|(2), def }, + { "asld", mode_a, class1|(15<<21)|(1<<15)|(11<<10)|(4), def }, + { "asr.b", mode_das, class3|(5<<21)|(1), def }, + { "asr.l", mode_das, class3|(5<<21)|(4), def }, + { "asr.w", mode_das, class3|(5<<21)|(2), def }, + { "asrd", mode_a, class1|(15<<21)|(1<<15)|(9<<10)|(4), def }, + { "bmd", mode_rrr, class1|(3<<21)|(3<<16)|(4), gr6 }, + { "bmi", mode_rrr, class1|(1<<21)|(3<<16)|(4), gr6 }, + { "bra", mode_cad, class3|(12<<21)|(4), def }, + { "brr", mode_ci, class0, def }, + { "cmp.b", mode_0ab, class3|(2<<21)|(1), def }, + { "cmp.l", mode_0ab, class3|(2<<21)|(4), def }, + { "cmp.w", mode_0ab, class3|(2<<21)|(2), def }, + { "cmpc.b", mode_0ab, class3|(3<<21)|(1), def }, + { "cmpc.l", mode_0ab, class3|(3<<21)|(4), def }, + { "cmpc.w", mode_0ab, class3|(3<<21)|(2), def }, + { "divds", mode_a, class1|(15<<21)|(1<<15)|(6<<10)|(4), def }, + { "divdu", mode_a, class1|(15<<21)|(1<<15)|(7<<10)|(4), def }, + { "divs", mode_a, class1|(15<<21)|(1<<15)|(2<<10)|(4), def }, + { "divu", mode_a, class1|(15<<21)|(1<<15)|(3<<10)|(4), def }, + { "dsi", mode_s, class1|(4<<21)|(4), def }, + { "eamread", mode_di, class3|(15<<21)|(1<<15)|(1<<9)|(4), def }, + { "eamwrite", mode_iab, class1|(15<<21)|(1<<15)|(4), def }, + { "eni", mode_s, class1|(5<<21)|(4), def }, + { "extb.b", mode_da, class3|(14<<21)|(1), def }, + { "extb.l", mode_da, class3|(14<<21)|(4), def }, + { "extb.w", mode_da, class3|(14<<21)|(2), def }, + { "extw.l", mode_da, class3|(4<<21)|(4), def }, + { "extw.w", mode_da, class3|(4<<21)|(2), def }, + { "fabs", mode_fda, class1|(7<<27)|(15<<21)|(1<<15)|(1<<3)|(4), gr5 }, + { "fadd", mode_fdab, class1|(1<<27)|(15<<21)|(1<<15)|(1<<3)|(4), gr5 }, + { "fcmp", mode_rdfab,class3|(10<<27)|(15<<21)|(1<<15)|(1<<9)|(1<<3)|(4), gr5 }, + { "fcmpe", mode_rdfab,class3|(11<<27)|(15<<21)|(1<<15)|(1<<9)|(1<<3)|(4), gr5 }, + { "fdiv", mode_fdab, class1|(4<<27)|(15<<21)|(1<<15)|(1<<3)|(4), gr5 }, + { "fload", mode_fdra, class1|(15<<21)|(1<<15)|(1<<3)|(4), gr5 }, + { "fmove", mode_fda, class1|(12<<27)|(15<<21)|(1<<15)|(1<<3)|(4), gr5}, + { "fmult", mode_fdab, class1|(3<<27)|(15<<21)|(1<<15)|(1<<3)|(4), gr5 }, + { "fneg", mode_fda, class1|(6<<27)|(15<<21)|(1<<15)|(1<<3)|(4), gr5 }, + { "fpinst", mode_ifdab,class1|(15<<21)|(1<<15)|(1<<3)|(4), gr5 }, + { "fpuread", mode_idfab,class3|(15<<21)|(1<<15)|(1<<9)|(1<<3)|(4), gr5 }, + { "fsqrt", mode_fda, class1|(5<<27)|(15<<21)|(1<<15)|(1<<3)|(4), gr5 }, + { "fstore", mode_rdfa, class3|(15<<21)|(1<<15)|(1<<9)|(1<<3)|(4), gr5 }, + { "fsub", mode_fdab, class1|(2<<27)|(15<<21)|(1<<15)|(1<<3)|(4), gr5 }, + { "ftoi", mode_fda, class1|(8<<27)|(15<<21)|(1<<15)|(1<<3)|(4), gr5 }, + { "itof", mode_fda, class1|(9<<27)|(15<<21)|(1<<15)|(1<<3)|(4), gr5 }, + { "lsr.b", mode_das, class3|(6<<21)|(1), def }, + { "lsr.l", mode_das, class3|(6<<21)|(4), def }, + { "lsr.w", mode_das, class3|(6<<21)|(2), def }, + { "lsrd", mode_a, class1|(15<<21)|(1<<15)|(10<<10)|(4), def }, + { "move.b", mode_da0, class3|(9<<21)|(1), def }, + { "move.l", mode_da0, class3|(9<<21)|(4), def }, + { "move.w", mode_da0, class3|(9<<21)|(2), def }, + { "movil", mode_ai, class2|(4<<21), def }, + { "moviq", mode_ai, class2|(6<<21), def }, + { "moviu", mode_ai, class2|(5<<21), def }, + { "mults", mode_ab, class1|(15<<21)|(1<<15)|(0<<10)|(4), def }, + { "multu", mode_ab, class1|(15<<21)|(1<<15)|(1<<10)|(4), def }, + { "nop", mode_s, class0, def }, + { "not.b", mode_da, class3|(11<<21)|(1), def }, + { "not.l", mode_da, class3|(11<<21)|(4), def }, + { "not.w", mode_da, class3|(11<<21)|(2), def }, + { "or.b", mode_dab, class3|(9<<21)|(1), def }, + { "or.l", mode_dab, class3|(9<<21)|(4), def }, + { "or.w", mode_dab, class3|(9<<21)|(2), def }, + { "read.b", mode_dax, class3|(15<<21)|(1<<9)|(1), def }, + { "read.l", mode_dax, class3|(15<<21)|(1<<9)|(4), def }, + { "read.w", mode_dax, class3|(15<<21)|(1<<9)|(2), def }, + { "readmda", mode_d, class3|(15<<21)|(1<<15)|(1<<9)|(4), def }, + { "readmdb", mode_d, class3|(15<<21)|(1<<15)|(1<<9)|(1<<4)|(4), def }, + { "readmdc", mode_d, class3|(15<<21)|(1<<15)|(1<<9)|(2<<4)|(4), def }, + { "rfi", mode_s, class1|(7<<21)|(30<<16)|(29<<4)|(4), def }, + { "rflag", mode_d, class3|(13<<21)|(4), def }, + { "stop", mode_ir, class1|(0<<21)|(4), def }, + { "sub.b", mode_dab, class3|(2<<21)|(1), def }, + { "sub.l", mode_dab, class3|(2<<21)|(4), def }, + { "sub.w", mode_dab, class3|(2<<21)|(2), def }, + { "subc.b", mode_dab, class3|(3<<21)|(1), def }, + { "subc.l", mode_dab, class3|(3<<21)|(4), def }, + { "subc.w", mode_dab, class3|(3<<21)|(2), def }, + { "subi", mode_ai, class2|(2<<21), def }, + { "trace", mode_ir, class1|(13<<21), def }, + { "write.b", mode_bax, class1|(15<<21)|(1), def }, + { "write.l", mode_bax, class1|(15<<21)|(4), def }, + { "write.w", mode_bax, class1|(15<<21)|(2), def }, + { "writemd", mode_ab, class1|(15<<21)|(1<<15)|(4<<10)|(4), def }, + { "writemdc", mode_a, class1|(15<<21)|(1<<15)|(5<<10)|(4), def }, + { "wrtl", mode_i, class2|(8<<21), gr6 }, + { "wrtu", mode_i, class2|(9<<21), gr6 }, + { "xor.b", mode_dab, class3|(8<<21)|(1), def }, + { "xor.l", mode_dab, class3|(8<<21)|(4), def }, + { "xor.w", mode_dab, class3|(8<<21)|(2), def }, +}; diff --git a/external/gpl3/gdb/dist/include/opcode/xgate.h b/external/gpl3/gdb/dist/include/opcode/xgate.h index 8451e66c4686..cae0d0e231a2 100644 --- a/external/gpl3/gdb/dist/include/opcode/xgate.h +++ b/external/gpl3/gdb/dist/include/opcode/xgate.h @@ -1,5 +1,5 @@ /* xgate.h -- Freescale XGATE opcode list - Copyright 2010, 2011, 2012 Free Software Foundation, Inc. + Copyright (C) 2010-2015 Free Software Foundation, Inc. Written by Sean Keys (skeys@ipdatasys.com) This file is part of the GNU opcodes library. diff --git a/external/gpl3/gdb/dist/include/os9k.h b/external/gpl3/gdb/dist/include/os9k.h index e8baee17f1f5..4329013d2759 100644 --- a/external/gpl3/gdb/dist/include/os9k.h +++ b/external/gpl3/gdb/dist/include/os9k.h @@ -1,5 +1,5 @@ /* os9k.h - OS-9000 i386 module header definitions - Copyright 2000 Free Software Foundation, Inc. + Copyright (C) 2000-2015 Free Software Foundation, Inc. This file is part of GNU CC. diff --git a/external/gpl3/gdb/dist/include/partition.h b/external/gpl3/gdb/dist/include/partition.h index d8b554f8f9a1..53d127eafc39 100644 --- a/external/gpl3/gdb/dist/include/partition.h +++ b/external/gpl3/gdb/dist/include/partition.h @@ -1,5 +1,5 @@ /* List implementation of a partition of consecutive integers. - Copyright (C) 2000, 2001, 2002 Free Software Foundation, Inc. + Copyright (C) 2000-2015 Free Software Foundation, Inc. Contributed by CodeSourcery, LLC. This file is part of GCC. diff --git a/external/gpl3/gdb/dist/include/plugin-api.h b/external/gpl3/gdb/dist/include/plugin-api.h index 5797d4dce93c..1bf1750134a1 100644 --- a/external/gpl3/gdb/dist/include/plugin-api.h +++ b/external/gpl3/gdb/dist/include/plugin-api.h @@ -1,6 +1,6 @@ /* plugin-api.h -- External linker plugin API. */ -/* Copyright 2009, 2010 Free Software Foundation, Inc. +/* Copyright (C) 2009-2015 Free Software Foundation, Inc. Written by Cary Coutant . This file is part of binutils. diff --git a/external/gpl3/gdb/dist/include/progress.h b/external/gpl3/gdb/dist/include/progress.h index 80ffbe24a86e..9a7d1c4e80ba 100644 --- a/external/gpl3/gdb/dist/include/progress.h +++ b/external/gpl3/gdb/dist/include/progress.h @@ -1,5 +1,5 @@ /* Default definitions for progress macros. - Copyright 1994, 2010 Free Software Foundation, Inc. + Copyright (C) 1994-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/safe-ctype.h b/external/gpl3/gdb/dist/include/safe-ctype.h index 0266bf1aa269..a6d163e6e2c6 100644 --- a/external/gpl3/gdb/dist/include/safe-ctype.h +++ b/external/gpl3/gdb/dist/include/safe-ctype.h @@ -1,6 +1,6 @@ /* replacement macros. - Copyright (C) 2000, 2001 Free Software Foundation, Inc. + Copyright (C) 2000-2015 Free Software Foundation, Inc. Contributed by Zack Weinberg . This file is part of the libiberty library. diff --git a/external/gpl3/gdb/dist/include/sha1.h b/external/gpl3/gdb/dist/include/sha1.h index 4da5c37f3867..24f3ab79dc9c 100644 --- a/external/gpl3/gdb/dist/include/sha1.h +++ b/external/gpl3/gdb/dist/include/sha1.h @@ -1,7 +1,6 @@ /* Declarations of functions and data types used for SHA1 sum library functions. - Copyright (C) 2000, 2001, 2003, 2005, 2006, 2008, 2010 - Free Software Foundation, Inc. + Copyright (C) 2000-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/simple-object.h b/external/gpl3/gdb/dist/include/simple-object.h index c4786757a1e7..5bd3d06c1e90 100644 --- a/external/gpl3/gdb/dist/include/simple-object.h +++ b/external/gpl3/gdb/dist/include/simple-object.h @@ -1,5 +1,5 @@ /* simple-object.h -- simple routines to read and write object files - Copyright 2010 Free Software Foundation, Inc. + Copyright (C) 2010-2015 Free Software Foundation, Inc. Written by Ian Lance Taylor, Google. This program is free software; you can redistribute it and/or modify it diff --git a/external/gpl3/gdb/dist/include/som/ChangeLog b/external/gpl3/gdb/dist/include/som/ChangeLog index e1f1ec59a35a..e70771e79f02 100644 --- a/external/gpl3/gdb/dist/include/som/ChangeLog +++ b/external/gpl3/gdb/dist/include/som/ChangeLog @@ -1,3 +1,11 @@ +2015-01-01 Alan Modra + + Update year range in copyright notice of all files. + +2014-03-05 Alan Modra + + Update copyright years. + 2010-06-10 Tristan Gingold * aout.h: New file. @@ -6,7 +14,7 @@ * reloc.h: Likewise. * internal.h: Likewise. -Copyright (C) 2010-2012 Free Software Foundation, Inc. +Copyright (C) 2010-2015 Free Software Foundation, Inc. Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright diff --git a/external/gpl3/gdb/dist/include/som/aout.h b/external/gpl3/gdb/dist/include/som/aout.h index c3845edf630d..bbaeb1c1a847 100644 --- a/external/gpl3/gdb/dist/include/som/aout.h +++ b/external/gpl3/gdb/dist/include/som/aout.h @@ -1,5 +1,5 @@ /* SOM a.out definitions for BFD. - Copyright 2010 Free Software Foundation, Inc. + Copyright (C) 2010-2015 Free Software Foundation, Inc. Contributed by Tristan Gingold , AdaCore. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/som/clock.h b/external/gpl3/gdb/dist/include/som/clock.h index e2a7ba6d4f2c..6e76ad791e84 100644 --- a/external/gpl3/gdb/dist/include/som/clock.h +++ b/external/gpl3/gdb/dist/include/som/clock.h @@ -1,5 +1,5 @@ /* SOM clock definition for BFD. - Copyright 2010 Free Software Foundation, Inc. + Copyright (C) 2010-2015 Free Software Foundation, Inc. Contributed by Tristan Gingold , AdaCore. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/som/internal.h b/external/gpl3/gdb/dist/include/som/internal.h index e3889fb59bce..96e049bda6b7 100644 --- a/external/gpl3/gdb/dist/include/som/internal.h +++ b/external/gpl3/gdb/dist/include/som/internal.h @@ -1,5 +1,5 @@ /* SOM internal definitions for BFD. - Copyright 2010 Free Software Foundation, Inc. + Copyright (C) 2010-2015 Free Software Foundation, Inc. Contributed by Tristan Gingold , AdaCore. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/som/lst.h b/external/gpl3/gdb/dist/include/som/lst.h index 6088b47c4663..92aea782c6e9 100644 --- a/external/gpl3/gdb/dist/include/som/lst.h +++ b/external/gpl3/gdb/dist/include/som/lst.h @@ -1,5 +1,5 @@ /* SOM lst definitions for BFD. - Copyright 2010 Free Software Foundation, Inc. + Copyright (C) 2010-2015 Free Software Foundation, Inc. Contributed by Tristan Gingold , AdaCore. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/som/reloc.h b/external/gpl3/gdb/dist/include/som/reloc.h index 417b5ee1abda..a37ef2c24004 100644 --- a/external/gpl3/gdb/dist/include/som/reloc.h +++ b/external/gpl3/gdb/dist/include/som/reloc.h @@ -1,5 +1,5 @@ /* SOM relocation definitions for BFD. - Copyright 2010 Free Software Foundation, Inc. + Copyright (C) 2010-2015 Free Software Foundation, Inc. Contributed by Tristan Gingold , AdaCore. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/sort.h b/external/gpl3/gdb/dist/include/sort.h index 582af81623b8..23025d431bf0 100644 --- a/external/gpl3/gdb/dist/include/sort.h +++ b/external/gpl3/gdb/dist/include/sort.h @@ -1,5 +1,5 @@ /* Sorting algorithms. - Copyright (C) 2000, 2002 Free Software Foundation, Inc. + Copyright (C) 2000-2015 Free Software Foundation, Inc. Contributed by Mark Mitchell . This file is part of GCC. diff --git a/external/gpl3/gdb/dist/include/splay-tree.h b/external/gpl3/gdb/dist/include/splay-tree.h index a26135a099de..159ea801c1a1 100644 --- a/external/gpl3/gdb/dist/include/splay-tree.h +++ b/external/gpl3/gdb/dist/include/splay-tree.h @@ -1,6 +1,5 @@ /* A splay-tree datatype. - Copyright 1998, 1999, 2000, 2002, 2005, 2007, 2009, 2010 - Free Software Foundation, Inc. + Copyright (C) 1998-2015 Free Software Foundation, Inc. Contributed by Mark Mitchell (mark@markmitchell.com). This file is part of GCC. diff --git a/external/gpl3/gdb/dist/include/symcat.h b/external/gpl3/gdb/dist/include/symcat.h index b46128796be4..95fc9b2c550b 100644 --- a/external/gpl3/gdb/dist/include/symcat.h +++ b/external/gpl3/gdb/dist/include/symcat.h @@ -1,6 +1,6 @@ /* Symbol concatenation utilities. - Copyright (C) 1998, 2000, 2010 Free Software Foundation, Inc. + Copyright (C) 1998-2015 Free Software Foundation, Inc. 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 diff --git a/external/gpl3/gdb/dist/include/timeval-utils.h b/external/gpl3/gdb/dist/include/timeval-utils.h index 1caf9b36d157..adbe8183fe27 100644 --- a/external/gpl3/gdb/dist/include/timeval-utils.h +++ b/external/gpl3/gdb/dist/include/timeval-utils.h @@ -1,5 +1,5 @@ /* Basic struct timeval utilities. - Copyright (C) 2011 Free Software Foundation, Inc. + Copyright (C) 2011-2015 Free Software Foundation, Inc. This file is part of the libiberty library. Libiberty is free software; you can redistribute it and/or diff --git a/external/gpl3/gdb/dist/include/vms/ChangeLog b/external/gpl3/gdb/dist/include/vms/ChangeLog index 8d5e91d31908..6b24be20fe09 100644 --- a/external/gpl3/gdb/dist/include/vms/ChangeLog +++ b/external/gpl3/gdb/dist/include/vms/ChangeLog @@ -1,3 +1,11 @@ +2015-01-01 Alan Modra + + Update year range in copyright notice of all files. + +2014-03-05 Alan Modra + + Update copyright years. + 2012-03-08 Tristan Gingold * lbr.h (struct vms_lhd): Add comments. @@ -73,7 +81,7 @@ * eiaf.h, eicp.h, eiha.h, eihd.h, eihi.h, eihs.h, eihvn.h: Ditto. * eisd.h, emh.h, eobjrec.h, esdf.h, esrf.h, etir.h, shl.h: Ditto. -Copyright (C) 2010-2012 Free Software Foundation, Inc. +Copyright (C) 2010-2015 Free Software Foundation, Inc. Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright diff --git a/external/gpl3/gdb/dist/include/vms/dcx.h b/external/gpl3/gdb/dist/include/vms/dcx.h index b6f373ab5d3d..fe41a7efb66a 100644 --- a/external/gpl3/gdb/dist/include/vms/dcx.h +++ b/external/gpl3/gdb/dist/include/vms/dcx.h @@ -1,6 +1,6 @@ /* Alpha VMS external format for DeCompression. - Copyright 2010 Free Software Foundation, Inc. + Copyright (C) 2010-2015 Free Software Foundation, Inc. Written by Tristan Gingold , AdaCore. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/vms/dmt.h b/external/gpl3/gdb/dist/include/vms/dmt.h index f2aad6e99be5..1fc654e54ad7 100644 --- a/external/gpl3/gdb/dist/include/vms/dmt.h +++ b/external/gpl3/gdb/dist/include/vms/dmt.h @@ -1,6 +1,6 @@ /* Alpha VMS external format of Debug Module Table. - Copyright 2010 Free Software Foundation, Inc. + Copyright (C) 2010-2015 Free Software Foundation, Inc. Written by Tristan Gingold , AdaCore. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/vms/dsc.h b/external/gpl3/gdb/dist/include/vms/dsc.h index 5a1b0e238a85..0d0d9ff28698 100644 --- a/external/gpl3/gdb/dist/include/vms/dsc.h +++ b/external/gpl3/gdb/dist/include/vms/dsc.h @@ -1,6 +1,6 @@ /* Alpha VMS external format of Descriptors. - Copyright 2010 Free Software Foundation, Inc. + Copyright (C) 2010-2015 Free Software Foundation, Inc. Written by Tristan Gingold , AdaCore. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/vms/dst.h b/external/gpl3/gdb/dist/include/vms/dst.h index 231d39708705..ce26e80ebeab 100644 --- a/external/gpl3/gdb/dist/include/vms/dst.h +++ b/external/gpl3/gdb/dist/include/vms/dst.h @@ -1,6 +1,6 @@ /* Alpha VMS external format of Debug Symbol Table. - Copyright 2010 Free Software Foundation, Inc. + Copyright (C) 2010-2015 Free Software Foundation, Inc. Written by Tristan Gingold , AdaCore. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/vms/eeom.h b/external/gpl3/gdb/dist/include/vms/eeom.h index 807e44855e4a..a907946c5891 100644 --- a/external/gpl3/gdb/dist/include/vms/eeom.h +++ b/external/gpl3/gdb/dist/include/vms/eeom.h @@ -1,6 +1,6 @@ /* Alpha VMS external format of Extended End Of Module. - Copyright 2010 Free Software Foundation, Inc. + Copyright (C) 2010-2015 Free Software Foundation, Inc. Written by Tristan Gingold , AdaCore. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/vms/egps.h b/external/gpl3/gdb/dist/include/vms/egps.h index e92df810b04f..5f628233b3e0 100644 --- a/external/gpl3/gdb/dist/include/vms/egps.h +++ b/external/gpl3/gdb/dist/include/vms/egps.h @@ -1,6 +1,6 @@ /* Alpha VMS external format of Extended Program Section Definition. - Copyright 2010 Free Software Foundation, Inc. + Copyright (C) 2010-2015 Free Software Foundation, Inc. Written by Tristan Gingold , AdaCore. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/vms/egsd.h b/external/gpl3/gdb/dist/include/vms/egsd.h index f9be3981aa8a..1c3b1befed72 100644 --- a/external/gpl3/gdb/dist/include/vms/egsd.h +++ b/external/gpl3/gdb/dist/include/vms/egsd.h @@ -1,6 +1,6 @@ /* Alpha VMS external format of Extended Global Symbol Directory. - Copyright 2010 Free Software Foundation, Inc. + Copyright (C) 2010-2015 Free Software Foundation, Inc. Written by Tristan Gingold , AdaCore. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/vms/egst.h b/external/gpl3/gdb/dist/include/vms/egst.h index d4244842e228..4b0429f001d9 100644 --- a/external/gpl3/gdb/dist/include/vms/egst.h +++ b/external/gpl3/gdb/dist/include/vms/egst.h @@ -1,6 +1,6 @@ /* Alpha VMS external format of Extended Global Symbol Definition. - Copyright 2010 Free Software Foundation, Inc. + Copyright (C) 2010-2015 Free Software Foundation, Inc. Written by Tristan Gingold , AdaCore. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/vms/egsy.h b/external/gpl3/gdb/dist/include/vms/egsy.h index dd36ab218c6a..0f0c6fcbd4c4 100644 --- a/external/gpl3/gdb/dist/include/vms/egsy.h +++ b/external/gpl3/gdb/dist/include/vms/egsy.h @@ -1,6 +1,6 @@ /* Alpha VMS external format of Extended Global Symbol. - Copyright 2010 Free Software Foundation, Inc. + Copyright (C) 2010-2015 Free Software Foundation, Inc. Written by Tristan Gingold , AdaCore. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/vms/eiaf.h b/external/gpl3/gdb/dist/include/vms/eiaf.h index c3c39884c230..2fd5b753a70b 100644 --- a/external/gpl3/gdb/dist/include/vms/eiaf.h +++ b/external/gpl3/gdb/dist/include/vms/eiaf.h @@ -1,6 +1,6 @@ /* Alpha VMS external format of Extended Image Activator Fixup section. - Copyright 2010 Free Software Foundation, Inc. + Copyright (C) 2010-2015 Free Software Foundation, Inc. Written by Tristan Gingold , AdaCore. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/vms/eicp.h b/external/gpl3/gdb/dist/include/vms/eicp.h index 9c769f7687ff..fc53c9b5de51 100644 --- a/external/gpl3/gdb/dist/include/vms/eicp.h +++ b/external/gpl3/gdb/dist/include/vms/eicp.h @@ -1,6 +1,6 @@ /* Alpha VMS external format of Extended Image section Change Protection. - Copyright 2010 Free Software Foundation, Inc. + Copyright (C) 2010-2015 Free Software Foundation, Inc. Written by Tristan Gingold , AdaCore. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/vms/eidc.h b/external/gpl3/gdb/dist/include/vms/eidc.h index 987e8c24e0a2..d7b193d2a319 100644 --- a/external/gpl3/gdb/dist/include/vms/eidc.h +++ b/external/gpl3/gdb/dist/include/vms/eidc.h @@ -1,6 +1,6 @@ /* Alpha VMS external format of Ident Consistency check. - Copyright 2010 Free Software Foundation, Inc. + Copyright (C) 2010-2015 Free Software Foundation, Inc. Written by Tristan Gingold , AdaCore. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/vms/eiha.h b/external/gpl3/gdb/dist/include/vms/eiha.h index 5965ef97920c..8cad743e6ea4 100644 --- a/external/gpl3/gdb/dist/include/vms/eiha.h +++ b/external/gpl3/gdb/dist/include/vms/eiha.h @@ -1,6 +1,6 @@ /* Alpha VMS external format of Extended Image Activation. - Copyright 2010 Free Software Foundation, Inc. + Copyright (C) 2010-2015 Free Software Foundation, Inc. Written by Tristan Gingold , AdaCore. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/vms/eihd.h b/external/gpl3/gdb/dist/include/vms/eihd.h index fdb3a6ec7478..35c2cc44728b 100644 --- a/external/gpl3/gdb/dist/include/vms/eihd.h +++ b/external/gpl3/gdb/dist/include/vms/eihd.h @@ -1,6 +1,6 @@ /* Alpha VMS external format of Extended Image Header. - Copyright 2010 Free Software Foundation, Inc. + Copyright (C) 2010-2015 Free Software Foundation, Inc. Written by Tristan Gingold , AdaCore. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/vms/eihi.h b/external/gpl3/gdb/dist/include/vms/eihi.h index 97d3d895883e..a76467cebe14 100644 --- a/external/gpl3/gdb/dist/include/vms/eihi.h +++ b/external/gpl3/gdb/dist/include/vms/eihi.h @@ -1,6 +1,6 @@ /* Alpha VMS external format of Extended Image Identification. - Copyright 2010 Free Software Foundation, Inc. + Copyright (C) 2010-2015 Free Software Foundation, Inc. Written by Tristan Gingold , AdaCore. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/vms/eihs.h b/external/gpl3/gdb/dist/include/vms/eihs.h index cf048b13d34d..b20ff845a5f7 100644 --- a/external/gpl3/gdb/dist/include/vms/eihs.h +++ b/external/gpl3/gdb/dist/include/vms/eihs.h @@ -1,6 +1,6 @@ /* Alpha VMS external format of Extended Image Symbols and debug table. - Copyright 2010 Free Software Foundation, Inc. + Copyright (C) 2010-2015 Free Software Foundation, Inc. Written by Tristan Gingold , AdaCore. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/vms/eihvn.h b/external/gpl3/gdb/dist/include/vms/eihvn.h index 07f9eeed28c7..46fffd31589a 100644 --- a/external/gpl3/gdb/dist/include/vms/eihvn.h +++ b/external/gpl3/gdb/dist/include/vms/eihvn.h @@ -1,6 +1,6 @@ /* Alpha VMS external format of Extended Image Header Version. - Copyright 2010 Free Software Foundation, Inc. + Copyright (C) 2010-2015 Free Software Foundation, Inc. Written by Tristan Gingold , AdaCore. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/vms/eisd.h b/external/gpl3/gdb/dist/include/vms/eisd.h index 7579e72b8296..91a3df4a7bbc 100644 --- a/external/gpl3/gdb/dist/include/vms/eisd.h +++ b/external/gpl3/gdb/dist/include/vms/eisd.h @@ -1,6 +1,6 @@ /* Alpha VMS external format of Extended Image Section Descriptor. - Copyright 2010 Free Software Foundation, Inc. + Copyright (C) 2010-2015 Free Software Foundation, Inc. Written by Tristan Gingold , AdaCore. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/vms/emh.h b/external/gpl3/gdb/dist/include/vms/emh.h index 973d71ea6cf6..5bae43e53ce4 100644 --- a/external/gpl3/gdb/dist/include/vms/emh.h +++ b/external/gpl3/gdb/dist/include/vms/emh.h @@ -1,6 +1,6 @@ /* Alpha VMS external format of Extended Module Header. - Copyright 2010 Free Software Foundation, Inc. + Copyright (C) 2010-2015 Free Software Foundation, Inc. Written by Tristan Gingold , AdaCore. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/vms/eobjrec.h b/external/gpl3/gdb/dist/include/vms/eobjrec.h index 985fda782144..d5ca2c38cf7e 100644 --- a/external/gpl3/gdb/dist/include/vms/eobjrec.h +++ b/external/gpl3/gdb/dist/include/vms/eobjrec.h @@ -1,6 +1,6 @@ /* Alpha VMS external format of Extended Object Records. - Copyright 2010 Free Software Foundation, Inc. + Copyright (C) 2010-2015 Free Software Foundation, Inc. Written by Tristan Gingold , AdaCore. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/vms/esdf.h b/external/gpl3/gdb/dist/include/vms/esdf.h index 79ee3d61091a..05436f2230f1 100644 --- a/external/gpl3/gdb/dist/include/vms/esdf.h +++ b/external/gpl3/gdb/dist/include/vms/esdf.h @@ -1,6 +1,6 @@ /* Alpha VMS external format of Extended GSD Global Symbol Definition. - Copyright 2010 Free Software Foundation, Inc. + Copyright (C) 2010-2015 Free Software Foundation, Inc. Written by Tristan Gingold , AdaCore. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/vms/esdfm.h b/external/gpl3/gdb/dist/include/vms/esdfm.h index e00e44a13450..3224fb7c86ba 100644 --- a/external/gpl3/gdb/dist/include/vms/esdfm.h +++ b/external/gpl3/gdb/dist/include/vms/esdfm.h @@ -1,6 +1,6 @@ /* Alpha VMS external format of Extended Symbol Definition for version Mask. - Copyright 2010 Free Software Foundation, Inc. + Copyright (C) 2010-2015 Free Software Foundation, Inc. Written by Tristan Gingold , AdaCore. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/vms/esdfv.h b/external/gpl3/gdb/dist/include/vms/esdfv.h index fae0dbc1867b..93583b9344e7 100644 --- a/external/gpl3/gdb/dist/include/vms/esdfv.h +++ b/external/gpl3/gdb/dist/include/vms/esdfv.h @@ -1,6 +1,6 @@ /* Alpha VMS external format of Extended Symbol Def for Vectored symbols. - Copyright 2010 Free Software Foundation, Inc. + Copyright (C) 2010-2015 Free Software Foundation, Inc. Written by Tristan Gingold , AdaCore. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/vms/esgps.h b/external/gpl3/gdb/dist/include/vms/esgps.h index e668a8748abe..89e7d18cc3a3 100644 --- a/external/gpl3/gdb/dist/include/vms/esgps.h +++ b/external/gpl3/gdb/dist/include/vms/esgps.h @@ -1,6 +1,6 @@ /* Alpha VMS external format of Extended Shared Program Section Definition. - Copyright 2010 Free Software Foundation, Inc. + Copyright (C) 2010-2015 Free Software Foundation, Inc. Written by Tristan Gingold , AdaCore. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/vms/esrf.h b/external/gpl3/gdb/dist/include/vms/esrf.h index 291250c96fc1..33592e07afd6 100644 --- a/external/gpl3/gdb/dist/include/vms/esrf.h +++ b/external/gpl3/gdb/dist/include/vms/esrf.h @@ -1,6 +1,6 @@ /* Alpha VMS external format of Extended GSD Global Symbol Reference. - Copyright 2010 Free Software Foundation, Inc. + Copyright (C) 2010-2015 Free Software Foundation, Inc. Written by Tristan Gingold , AdaCore. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/vms/etir.h b/external/gpl3/gdb/dist/include/vms/etir.h index 4d922dc3e8d3..6b1e6e02be00 100644 --- a/external/gpl3/gdb/dist/include/vms/etir.h +++ b/external/gpl3/gdb/dist/include/vms/etir.h @@ -1,6 +1,6 @@ /* Alpha VMS external format of Extended Text Information and Relocation. - Copyright 2010 Free Software Foundation, Inc. + Copyright (C) 2010-2015 Free Software Foundation, Inc. Written by Tristan Gingold , AdaCore. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/vms/internal.h b/external/gpl3/gdb/dist/include/vms/internal.h index 1c8c472451e3..dd9ac1844211 100644 --- a/external/gpl3/gdb/dist/include/vms/internal.h +++ b/external/gpl3/gdb/dist/include/vms/internal.h @@ -1,6 +1,6 @@ /* Alpha VMS internal format. - Copyright 2010 Free Software Foundation, Inc. + Copyright (C) 2010-2015 Free Software Foundation, Inc. Written by Tristan Gingold , AdaCore. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/vms/lbr.h b/external/gpl3/gdb/dist/include/vms/lbr.h index fd3c256ad817..77ce64bb4c40 100644 --- a/external/gpl3/gdb/dist/include/vms/lbr.h +++ b/external/gpl3/gdb/dist/include/vms/lbr.h @@ -1,6 +1,6 @@ /* Alpha VMS external format of Libraries. - Copyright 2010 Free Software Foundation, Inc. + Copyright (C) 2010-2015 Free Software Foundation, Inc. Written by Tristan Gingold , AdaCore. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/vms/prt.h b/external/gpl3/gdb/dist/include/vms/prt.h index 8b8d27b56454..4560e99dfba5 100644 --- a/external/gpl3/gdb/dist/include/vms/prt.h +++ b/external/gpl3/gdb/dist/include/vms/prt.h @@ -1,6 +1,6 @@ /* Alpha VMS external format of Protection values. - Copyright 2010 Free Software Foundation, Inc. + Copyright (C) 2010-2015 Free Software Foundation, Inc. Written by Tristan Gingold , AdaCore. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/vms/shl.h b/external/gpl3/gdb/dist/include/vms/shl.h index d1d9fae92dc8..4654a800919f 100644 --- a/external/gpl3/gdb/dist/include/vms/shl.h +++ b/external/gpl3/gdb/dist/include/vms/shl.h @@ -1,6 +1,6 @@ /* Alpha VMS external format of Shareable image List. - Copyright 2010 Free Software Foundation, Inc. + Copyright (C) 2010-2015 Free Software Foundation, Inc. Written by Tristan Gingold , AdaCore. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/vtv-change-permission.h b/external/gpl3/gdb/dist/include/vtv-change-permission.h index 1adcb9745941..92e0a2ee8e9a 100644 --- a/external/gpl3/gdb/dist/include/vtv-change-permission.h +++ b/external/gpl3/gdb/dist/include/vtv-change-permission.h @@ -1,5 +1,4 @@ -/* Copyright (C) 2013 - Free Software Foundation +/* Copyright (C) 2013-2015 Free Software Foundation, Inc. This file is part of GCC. diff --git a/external/gpl3/gdb/dist/include/xregex2.h b/external/gpl3/gdb/dist/include/xregex2.h index d3d0da14a987..05066d4b2802 100644 --- a/external/gpl3/gdb/dist/include/xregex2.h +++ b/external/gpl3/gdb/dist/include/xregex2.h @@ -1,8 +1,7 @@ /* Definitions for data structures and routines for the regular expression library, version 0.12. - Copyright (C) 1985, 1989, 1990, 1991, 1992, 1993, 1995, 1996, 1997, - 1998, 2000, 2005 Free Software Foundation, Inc. + Copyright (C) 1985-2015 Free Software Foundation, Inc. This file is part of the GNU C Library. Its master source is NOT part of the C library, however. The master source lives in /gd/gnu/lib. diff --git a/external/gpl3/gdb/dist/include/xtensa-config.h b/external/gpl3/gdb/dist/include/xtensa-config.h index 30f4f41a2ac2..5ae4c8060b23 100644 --- a/external/gpl3/gdb/dist/include/xtensa-config.h +++ b/external/gpl3/gdb/dist/include/xtensa-config.h @@ -1,6 +1,5 @@ /* Xtensa configuration settings. - Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2010 - Free Software Foundation, Inc. + Copyright (C) 2001-2015 Free Software Foundation, Inc. Contributed by Bob Wilson (bob.wilson@acm.org) at Tensilica. This program is free software; you can redistribute it and/or modify diff --git a/external/gpl3/gdb/dist/include/xtensa-isa-internal.h b/external/gpl3/gdb/dist/include/xtensa-isa-internal.h index 6c727366bb5a..81467cb9b449 100644 --- a/external/gpl3/gdb/dist/include/xtensa-isa-internal.h +++ b/external/gpl3/gdb/dist/include/xtensa-isa-internal.h @@ -1,5 +1,5 @@ /* Internal definitions for configurable Xtensa ISA support. - Copyright 2003, 2004, 2005, 2008, 2010 Free Software Foundation, Inc. + Copyright (C) 2003-2015 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. diff --git a/external/gpl3/gdb/dist/include/xtensa-isa.h b/external/gpl3/gdb/dist/include/xtensa-isa.h index c3c740da42f0..509aa341b1f3 100644 --- a/external/gpl3/gdb/dist/include/xtensa-isa.h +++ b/external/gpl3/gdb/dist/include/xtensa-isa.h @@ -1,5 +1,5 @@ /* Interface definition for configurable Xtensa ISA support. - Copyright 2003, 2004, 2005, 2006, 2008, 2010 Free Software Foundation, Inc. + Copyright (C) 2003-2015 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library.