8sa1-binutils-gdb/include/elf
Andrew Burgess 4b0c052e45 arc/nps400 : New cmem instructions and associated relocation
Add support for arc/nps400 cmem instructions, these load and store
instructions are hard-wired to access "0x57f00000 + 16-bit-offset".

Supporting this relocation required some additions to the arc relocation
handling in the bfd library, as well as the standard changes required to
add a new relocation type.

There's a test of the new instructions in the assembler, and a test of
the relocation in the linker.

bfd/ChangeLog:

	* reloc.c: Add BFD_RELOC_ARC_NPS_CMEM16 entry.
	* bfd-in2.h: Regenerate.
	* libbfd.h: Regenerate.
	* elf32-arc.c: Add 'opcode/arc.h' include.
	(struct arc_relocation_data): Add symbol_name.
	(arc_special_overflow_checks): New function.
	(arc_do_relocation): Use arc_special_overflow_checks, reindent as
	required, add an extra comment.
	(elf_arc_relocate_section): Setup symbol_name in reloc_data.

gas/ChangeLog:

	* testsuite/gas/arc/nps400-3.d: New file.
	* testsuite/gas/arc/nps400-3.s: New file.

include/ChangeLog:

	* elf/arc-reloc.def: Add ARC_NPS_CMEM16 reloc.
	* opcode/arc.h (NPS_CMEM_HIGH_VALUE): Define.

ld/ChangeLog:

	* testsuite/ld-arc/arc.exp: New file.
	* testsuite/ld-arc/nps-1.s: New file.
	* testsuite/ld-arc/nps-1a.d: New file.
	* testsuite/ld-arc/nps-1b.d: New file.
	* testsuite/ld-arc/nps-1b.err: New file.

opcodes/ChangeLog:

	* arc-nps400-tbl.h: Add xldb, xldw, xld, xstb, xstw, and xst
	instructions.
	* arc-opc.c (insert_nps_cmem_uimm16): New function.
	(extract_nps_cmem_uimm16): New function.
	(arc_operands): Add NPS_XLDST_UIMM16 operand.
2016-04-14 17:16:46 +01:00
..
aarch64.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
alpha.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
arc-reloc.def arc/nps400 : New cmem instructions and associated relocation 2016-04-14 17:16:46 +01:00
arc.h arc: Add nps400 machine type, and assembler flag. 2016-03-21 16:44:49 +00:00
arm.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
avr.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
bfin.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
ChangeLog-0415 binutils ChangeLog rotation 2016-01-01 22:59:17 +10:30
ChangeLog-9103 Add copyright notices 2012-12-10 12:48:03 +00:00
common.h Fix macro redefinition error on Solaris 2016-02-09 13:11:16 +10:30
cr16.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
cr16c.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
cris.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
crx.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
d10v.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
d30v.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
dlx.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
dwarf.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
epiphany.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
external.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
fr30.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
frv.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
ft32.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
h8.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
hppa.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
i370.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
i386.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
i860.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
i960.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
ia64.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
internal.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
ip2k.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
iq2000.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
lm32.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
m32c.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
m32r.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
m68hc11.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
m68k.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
mcore.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
mep.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
metag.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
microblaze.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
mips.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
mmix.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
mn10200.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
mn10300.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
moxie.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
msp430.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
mt.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
nds32.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
nios2.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
or1k.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
pj.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
ppc64.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
ppc.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
reloc-macros.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
rl78.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
rx.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
s390.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
score.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
sh.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
sparc.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
spu.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
tic6x-attrs.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
tic6x.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
tilegx.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
tilepro.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
v850.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
vax.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
visium.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
vxworks.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
x86-64.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
xc16x.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
xgate.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
xstormy16.h Copyright update for binutils 2016-01-01 23:00:01 +10:30
xtensa.h Copyright update for binutils 2016-01-01 23:00:01 +10:30