Back to index

cell-binutils  2.17cvs20070401
reloc.h
Go to the documentation of this file.
00001 /* reloc.h -- Header file for relocation information.
00002    Copyright 1989, 1990, 1991 Free Software Foundation, Inc.
00003 
00004 This program is free software; you can redistribute it and/or modify
00005 it under the terms of the GNU General Public License as published by
00006 the Free Software Foundation; either version 2 of the License, or
00007 (at your option) any later version.
00008 
00009 This program is distributed in the hope that it will be useful,
00010 but WITHOUT ANY WARRANTY; without even the implied warranty of
00011 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00012 GNU General Public License for more details.
00013 
00014 You should have received a copy of the GNU General Public License
00015 along with this program; if not, write to the Free Software
00016 Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.  */
00017 
00018 /* Relocation types for a.out files using reloc_info_extended
00019    (SPARC and AMD 29000). */
00020 
00021 #ifndef _RELOC_H_READ_
00022 #define _RELOC_H_READ_ 1
00023 
00024 enum reloc_type
00025   {
00026     RELOC_8,        RELOC_16,        RELOC_32, /* simple relocations */
00027     RELOC_DISP8,    RELOC_DISP16,    RELOC_DISP32, /* pc-rel displacement */
00028     RELOC_WDISP30,  RELOC_WDISP22,
00029     RELOC_HI22,     RELOC_22,
00030     RELOC_13,       RELOC_LO10,
00031     RELOC_SFA_BASE, RELOC_SFA_OFF13,
00032     RELOC_BASE10,   RELOC_BASE13,    RELOC_BASE22, /* P.I.C. (base-relative) */
00033     RELOC_PC10,     RELOC_PC22,    /* for some sort of pc-rel P.I.C. (?) */
00034     RELOC_JMP_TBL,          /* P.I.C. jump table */
00035     RELOC_SEGOFF16,         /* reputedly for shared libraries somehow */
00036     RELOC_GLOB_DAT,  RELOC_JMP_SLOT, RELOC_RELATIVE,
00037     RELOC_11,
00038     RELOC_WDISP2_14,
00039     RELOC_WDISP19,
00040     RELOC_HHI22,
00041     RELOC_HLO10,
00042     
00043     /* 29K relocation types */
00044     RELOC_JUMPTARG, RELOC_CONST,     RELOC_CONSTH,
00045     
00046     RELOC_WDISP14, RELOC_WDISP21,
00047     
00048     NO_RELOC
00049     };
00050 
00051 #define       RELOC_TYPE_NAMES \
00052 "8",          "16",         "32",         "DISP8",      \
00053 "DISP16",     "DISP32",     "WDISP30",    "WDISP22",    \
00054 "HI22",              "22",         "13",         "LO10",              \
00055 "SFA_BASE",   "SFAOFF13",   "BASE10",     "BASE13",     \
00056 "BASE22",     "PC10",              "PC22",              "JMP_TBL",    \
00057 "SEGOFF16",   "GLOB_DAT",   "JMP_SLOT",   "RELATIVE",   \
00058 "11",         "WDISP2_14",  "WDISP19",    "HHI22",      \
00059 "HLO10",                                                \
00060 "JUMPTARG",   "CONST",      "CONSTH",     "WDISP14",    \
00061 "WDISP21",    \
00062 "NO_RELOC"
00063 
00064 #endif /* _RELOC_H_READ_ */
00065 
00066 /* end of reloc.h */