189857Sobrien/* XSTORMY16 ELF support for BFD.
2130561Sobrien   Copyright (C) 2001, 2002 Free Software Foundation, Inc.
389857Sobrien
489857SobrienThis file is part of BFD, the Binary File Descriptor library.
589857Sobrien
689857SobrienThis program is free software; you can redistribute it and/or modify
789857Sobrienit under the terms of the GNU General Public License as published by
889857Sobrienthe Free Software Foundation; either version 2 of the License, or
989857Sobrien(at your option) any later version.
1089857Sobrien
1189857SobrienThis program is distributed in the hope that it will be useful,
1289857Sobrienbut WITHOUT ANY WARRANTY; without even the implied warranty of
1389857SobrienMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
1489857SobrienGNU General Public License for more details.
1589857Sobrien
1689857SobrienYou should have received a copy of the GNU General Public License
1789857Sobrienalong with this program; if not, write to the Free Software Foundation, Inc.,
18218822Sdim51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.  */
1989857Sobrien
2089857Sobrien#ifndef _ELF_XSTORMY16_H
2189857Sobrien#define _ELF_XSTORMY16_H
2289857Sobrien
2389857Sobrien#include "elf/reloc-macros.h"
2489857Sobrien
2589857Sobrien/* Relocations.  */
2689857SobrienSTART_RELOC_NUMBERS (elf_xstormy16_reloc_type)
2789857Sobrien  RELOC_NUMBER (R_XSTORMY16_NONE, 0)
2889857Sobrien
2989857Sobrien  RELOC_NUMBER (R_XSTORMY16_32, 1)
3089857Sobrien  RELOC_NUMBER (R_XSTORMY16_16, 2)
3189857Sobrien  RELOC_NUMBER (R_XSTORMY16_8, 3)
3289857Sobrien  RELOC_NUMBER (R_XSTORMY16_PC32, 4)
3389857Sobrien  RELOC_NUMBER (R_XSTORMY16_PC16, 5)
3489857Sobrien  RELOC_NUMBER (R_XSTORMY16_PC8, 6)
3589857Sobrien
3689857Sobrien  RELOC_NUMBER (R_XSTORMY16_REL_12, 7)
3789857Sobrien  RELOC_NUMBER (R_XSTORMY16_24, 8)
3889857Sobrien  RELOC_NUMBER (R_XSTORMY16_FPTR16, 9)
3989857Sobrien
40130561Sobrien  RELOC_NUMBER (R_XSTORMY16_LO16, 10)
41130561Sobrien  RELOC_NUMBER (R_XSTORMY16_HI16, 11)
42130561Sobrien  RELOC_NUMBER (R_XSTORMY16_12, 12)
43130561Sobrien
4489857Sobrien  RELOC_NUMBER (R_XSTORMY16_GNU_VTINHERIT, 128)
4589857Sobrien  RELOC_NUMBER (R_XSTORMY16_GNU_VTENTRY, 129)
4689857SobrienEND_RELOC_NUMBERS (R_XSTORMY16_max)
4789857Sobrien
4889857Sobrien/* Define the data & instruction memory discriminator.  In a linked
4989857Sobrien   executable, an symbol should be deemed to point to an instruction
5089857Sobrien   if ((address & XSTORMY16_INSN_MASK) == XSTORMY16_INSN_VALUE), and similarly
5189857Sobrien   for the data space.  See also `ld/emulparams/elf32xstormy16.sh'.  */
5289857Sobrien#define XSTORMY16_DATA_MASK   0xffc00000
5389857Sobrien#define XSTORMY16_DATA_VALUE  0x00000000
5489857Sobrien#define XSTORMY16_INSN_MASK   0xffc00000
5589857Sobrien#define XSTORMY16_INSN_VALUE  0x00400000
5689857Sobrien
5789857Sobrien#endif /* _ELF_XSTORMY16_H */
58