diff options
author | Eric Botcazou <ebotcazou@gcc.gnu.org> | 2014-12-06 16:35:18 +0100 |
---|---|---|
committer | Eric Botcazou <ebotcazou@gcc.gnu.org> | 2014-12-06 16:35:18 +0100 |
commit | d924db559be94e668253a272f70870c85aecc60e (patch) | |
tree | edba5d6308cf015a64370790ef99ed31fe20cfbe /include/elf | |
parent | 1945cfa59de0a6093011891e1974ac2b6d25658f (diff) | |
download | gdb-d924db559be94e668253a272f70870c85aecc60e.zip gdb-d924db559be94e668253a272f70870c85aecc60e.tar.gz gdb-d924db559be94e668253a272f70870c85aecc60e.tar.bz2 |
Add Visium support to bfd
bfd/
* config.bfd: Add Visium support.
* configure.ac: Likewise.
* configure: Regenerate.
* Makefile.am (ALL_MACHINES): Add cpu-visium.lo.
(ALL_MACHINES_CFILES): Add cpu-visium.c.
(BFD32_BACKENDS): Add elf32-visium.lo.
(BFD32_BACKENDS_CFILES): Add elf32-visium.c.
* Makefile.in: Regenerate.
* archures.c (DESCRIPTION): Add Visium support.
(bfd_visium_arch): Declare.
(bfd_archures_list): Add bfd_visium_arch.
* reloc.c: Add Visium relocations.
* targets.c (visium_elf32_vec): Declare.
(_bfd_target_vector): Add visium_elf32_vec.
* bfd-in2.h: Regenerate.
* libbfd.h: Likewise.
* cpu-visium.c: New file.
* elf32-visium.c: Likewise.
* po/SRC-POTFILES.in: Regenerate.
include/elf/
* common.h (EM_VISIUM): Define.
* visium.h: New file.
Diffstat (limited to 'include/elf')
-rw-r--r-- | include/elf/ChangeLog | 5 | ||||
-rw-r--r-- | include/elf/common.h | 1 | ||||
-rw-r--r-- | include/elf/visium.h | 51 |
3 files changed, 57 insertions, 0 deletions
diff --git a/include/elf/ChangeLog b/include/elf/ChangeLog index aaee35d..f4f7107 100644 --- a/include/elf/ChangeLog +++ b/include/elf/ChangeLog @@ -1,3 +1,8 @@ +2014-12-06 Eric Botcazou <ebotcazou@adacore.com> + + * common.h (EM_VISIUM): Define. + * visium.h: New file. + 2014-11-13 H.J. Lu <hongjiu.lu@intel.com> * x86-64.h (R_X86_64_GOTPLT64): Mark it obsolete. diff --git a/include/elf/common.h b/include/elf/common.h index e8ae3ac..1d68f80 100644 --- a/include/elf/common.h +++ b/include/elf/common.h @@ -301,6 +301,7 @@ #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 */ /* If it is necessary to assign new unofficial EM_* values, please pick large random numbers (0x8523, 0xa7f2, etc.) to minimize the chances of collision diff --git a/include/elf/visium.h b/include/elf/visium.h new file mode 100644 index 0000000..8de57a6 --- /dev/null +++ b/include/elf/visium.h @@ -0,0 +1,51 @@ +/* Visium ELF support for BFD. + + Copyright (C) 2002-2014 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 */ |