FT32: support for FT32B processor - part 1
authorJames Bowman <jamesb@excamera.com>
Fri, 13 Oct 2017 01:37:40 +0000 (18:37 -0700)
committerJames Bowman <jamesb@excamera.com>
Fri, 13 Oct 2017 01:41:29 +0000 (18:41 -0700)
commit3b4b0a629a972bf80fc0ac6202f89681fab1df37
treec8cde198a64de3a48b1de08dbf65f68dbbc9a13d
parentd268bbaff7da90caf5fbc94456ae58315ffa1802
FT32: support for FT32B processor - part 1

FT32B is a new FT32 family member. It has a code
compression scheme, which requires the use of linker
relaxations. The change is quite large, so submission
is in several parts.

Part 1 adds a 15-bit instruction field, and CPU-specific functions for
the code compression that are used in binutils and GDB.

bfd/ChangeLog:

2017-10-12  James Bowman  <james.bowman@ftdichip.com>

* bfd-in2.h: Regenerate.
* libbfd.h: Regenerate.
* elf32-ft32.c: Add HOWTO R_FT32_15.
* reloc.c: Add BFD_RELOC_FT32_15.

gas/ChangeLog:

2017-10-12  James Bowman  <james.bowman@ftdichip.com>

* config/tc-ft32.c (md_assemble): Replace FT32_FLD_K8 with
K15.
(md_apply_fix, tc_gen_reloc): Add BFD_RELOC_FT32_15.

include/ChangeLog:

2017-10-12  James Bowman  <james.bowman@ftdichip.com>

* elf/ft32.h: Add R_FT32_15.
* opcode/ft32.h: Replace FT32_FLD_K8 with K15.
(ft32_shortcode, sc_compar, ft32_split_shortcode,
ft32_merge_shortcode, ft32_merge_shortcode): New functions.

opcodes/ChangeLog:

2017-10-12  James Bowman  <james.bowman@ftdichip.com>

* opcodes/ft32-dis.c (print_insn_ft32): Replace FT32_FLD_K8 with K15.
* opcodes/ft32-opc.c (ft32_opc_info): Replace FT32_FLD_K8 with
K15. Add jmpix pattern.

sim/ChangeLog:

2017-10-12  James Bowman  <james.bowman@ftdichip.com>

* sim/ft32/interp.c (step_once): Replace FT32_FLD_K8 with K15.
15 files changed:
bfd/ChangeLog
bfd/bfd-in2.h
bfd/elf32-ft32.c
bfd/libbfd.h
bfd/reloc.c
gas/ChangeLog
gas/config/tc-ft32.c
include/ChangeLog
include/elf/ft32.h
include/opcode/ft32.h
opcodes/ChangeLog
opcodes/ft32-dis.c
opcodes/ft32-opc.c
sim/ChangeLog
sim/ft32/interp.c