aboutsummaryrefslogtreecommitdiff
path: root/include/elf
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2015-01-28 15:36:43 +1030
committerAlan Modra <amodra@gmail.com>2015-01-28 16:25:18 +1030
commit3f8107ab38095bb3db840f9f14a0fd339f55e06e (patch)
tree0b19ae4fcd667e7661da8adb99acca4e5a461253 /include/elf
parentcc9ad334a71b0c032f711e86885fb73821f3be16 (diff)
downloadgdb-3f8107ab38095bb3db840f9f14a0fd339f55e06e.zip
gdb-3f8107ab38095bb3db840f9f14a0fd339f55e06e.tar.gz
gdb-3f8107ab38095bb3db840f9f14a0fd339f55e06e.tar.bz2
FT32 initial support
FT32 is a new 32-bit RISC core developed by FTDI for embedded applications. * configure.ac: Add FT32 support. * configure: Regenerate. bfd/ * Makefile.am: Add FT32 files. * archures.c (enum bfd_architecture): Add bfd_arch_ft32. (bfd_mach_ft32): Define. (bfd_ft32_arch): Declare. (bfd_archures_list): Add bfd_ft32_arch. * config.bfd: Handle FT32. * configure.ac: Likewise. * cpu-ft32.c: New file. * elf32-ft32.c: New file. * reloc.c (BFD_RELOC_FT32_10, BFD_RELOC_FT32_20, BFD_RELOC_FT32_17, BFD_RELOC_FT32_18): Define. * targets.c (_bfd_target_vector): Add ft32_elf32_vec. * bfd-in2.h: Regenerate. * libbfd.h: Regenerate. * Makefile.in: Regenerate. * configure: Regenerate. * po/SRC-POTFILES.in: Regenerate. binutils/ * readelf.c: Add FT32 support. gas/ * Makefile.am: Add FT32 files. * config/tc-ft32.c: New file. * config/tc-ft32.h: New file. * configure.tgt: Add FT32 support. * Makefile.in: Regenerate. * po/POTFILES.in: Regenerate. gas/testsuite/ * gas/ft32/ft32.exp: New file. * gas/ft32/insn.d: New file. * gas/ft32/insn.s: New file. include/ * dis-asm.h (print_insn_ft32): Declare. include/elf/ * common.h (EM_FT32): Define. * ft32.h: New file. include/opcode/ * ft32.h: New file. ld/ * Makefile.am: Add FT32 files. * configure.tgt: Handle FT32 target. * emulparams/elf32ft32.sh: New file. * scripttempl/ft32.sc: New file. * Makefile.in: Regenerate. opcodes/ * Makefile.am: Add FT32 files. * configure.ac: Handle FT32. * disassemble.c (disassembler): Call print_insn_ft32. * ft32-dis.c: New file. * ft32-opc.c: New file. * Makefile.in: Regenerate. * configure: Regenerate. * po/POTFILES.in: Regenerate.
Diffstat (limited to 'include/elf')
-rw-r--r--include/elf/ChangeLog5
-rw-r--r--include/elf/common.h1
-rw-r--r--include/elf/ft32.h37
3 files changed, 43 insertions, 0 deletions
diff --git a/include/elf/ChangeLog b/include/elf/ChangeLog
index 6eb7b8f..99bc4ff 100644
--- a/include/elf/ChangeLog
+++ b/include/elf/ChangeLog
@@ -1,3 +1,8 @@
+2015-01-28 James Bowman <james.bowman@ftdichip.com>
+
+ * common.h (EM_FT32): Define.
+ * ft32.h: New file.
+
2015-01-09 Anthony Green <green@moxielogic.com>
* common.h (EM_MOXIE): Redefine to official number.
diff --git a/include/elf/common.h b/include/elf/common.h
index f584e34..ae7b5f81 100644
--- a/include/elf/common.h
+++ b/include/elf/common.h
@@ -302,6 +302,7 @@
#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_FT32 222 /* FTDI Chip FT32 high performance 32-bit RISC architecture */
#define EM_MOXIE 223 /* Moxie processor family */
/* If it is necessary to assign new unofficial EM_* values, please pick large
diff --git a/include/elf/ft32.h b/include/elf/ft32.h
new file mode 100644
index 0000000..2d06a58
--- /dev/null
+++ b/include/elf/ft32.h
@@ -0,0 +1,37 @@
+/* ft32 ELF support for BFD.
+ Copyright (C) 2009-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_FT32_H
+#define _ELF_FT32_H
+
+#include "elf/reloc-macros.h"
+
+/* Relocation types. */
+START_RELOC_NUMBERS (elf_ft32_reloc_type)
+ RELOC_NUMBER (R_FT32_NONE, 0)
+ RELOC_NUMBER (R_FT32_32, 1)
+ RELOC_NUMBER (R_FT32_16, 2)
+ RELOC_NUMBER (R_FT32_8, 3)
+ RELOC_NUMBER (R_FT32_10, 4)
+ RELOC_NUMBER (R_FT32_20, 5)
+ RELOC_NUMBER (R_FT32_17, 6)
+ RELOC_NUMBER (R_FT32_18, 7)
+END_RELOC_NUMBERS (R_FT32_max)
+
+#endif /* _ELF_FT32_H */