Back to index

cell-binutils  2.17cvs20070401
iq2000.h
Go to the documentation of this file.
00001 /* IQ2000 ELF support for BFD.
00002    Copyright (C) 2002, 2003 Free Software Foundation, Inc.
00003 
00004 This file is part of BFD, the Binary File Descriptor library.
00005 
00006 This program is free software; you can redistribute it and/or modify
00007 it under the terms of the GNU General Public License as published by
00008 the Free Software Foundation; either version 2 of the License, or
00009 (at your option) any later version.
00010 
00011 This program is distributed in the hope that it will be useful,
00012 but WITHOUT ANY WARRANTY; without even the implied warranty of
00013 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00014 GNU General Public License for more details.
00015 
00016 You should have received a copy of the GNU General Public License
00017 along with this program; if not, write to the Free Software Foundation, Inc.,
00018 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.  */
00019 
00020 #ifndef _ELF_IQ2000_H
00021 #define _ELF_IQ2000_H
00022 
00023 #include "elf/reloc-macros.h"
00024 
00025 /* Relocations.  */
00026 START_RELOC_NUMBERS (elf_iq2000_reloc_type)
00027   RELOC_NUMBER (R_IQ2000_NONE, 0)
00028   RELOC_NUMBER (R_IQ2000_16, 1)
00029   RELOC_NUMBER (R_IQ2000_32, 2)
00030   RELOC_NUMBER (R_IQ2000_26, 3)
00031   RELOC_NUMBER (R_IQ2000_PC16, 4)
00032   RELOC_NUMBER (R_IQ2000_HI16, 5)
00033   RELOC_NUMBER (R_IQ2000_LO16, 6)
00034   RELOC_NUMBER (R_IQ2000_OFFSET_16, 7)
00035   RELOC_NUMBER (R_IQ2000_OFFSET_21, 8)
00036   RELOC_NUMBER (R_IQ2000_UHI16, 9)
00037   RELOC_NUMBER (R_IQ2000_32_DEBUG, 10)
00038   RELOC_NUMBER (R_IQ2000_GNU_VTINHERIT, 200)
00039   RELOC_NUMBER (R_IQ2000_GNU_VTENTRY, 201)
00040 END_RELOC_NUMBERS(R_IQ2000_max)
00041 
00042 #define EF_IQ2000_CPU_IQ2000       0x00000001      /* default */
00043 #define EF_IQ2000_CPU_IQ10      0x00000002      /* IQ10 */
00044 #define EF_IQ2000_CPU_MASK  0x00000003    /* specific cpu bits */
00045 #define EF_IQ2000_ALL_FLAGS (EF_IQ2000_CPU_MASK)
00046 
00047 /* Define the data & instruction memory discriminator.  In a linked
00048    executable, an symbol should be deemed to point to an instruction
00049    if ((address & IQ2000_INSN_MASK) == IQ2000_INSN_VALUE), and similarly
00050    for the data space.  */
00051 
00052 #define IQ2000_DATA_MASK   0x80000000
00053 #define IQ2000_DATA_VALUE  0x00000000
00054 #define IQ2000_INSN_MASK   0x80000000
00055 #define IQ2000_INSN_VALUE  0x80000000
00056 
00057 
00058 #endif /* _ELF_IQ2000_H */