i386.h revision 60484
152284Sobrien/* ix86 ELF support for BFD. 252284Sobrien Copyright (C) 1998 Free Software Foundation, Inc. 352284Sobrien 452284Sobrien This file is part of BFD, the Binary File Descriptor library. 5132718Skan 652284Sobrien This program is free software; you can redistribute it and/or modify 7132718Skan it under the terms of the GNU General Public License as published by 852284Sobrien the Free Software Foundation; either version 2 of the License, or 952284Sobrien (at your option) any later version. 1052284Sobrien 1152284Sobrien This program is distributed in the hope that it will be useful, 12132718Skan but WITHOUT ANY WARRANTY; without even the implied warranty of 1352284Sobrien MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 1452284Sobrien GNU General Public License for more details. 1552284Sobrien 1652284Sobrien You should have received a copy of the GNU General Public License 1752284Sobrien along with this program; if not, write to the Free Software Foundation, 18132718Skan Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ 19169689Skan 20169689Skan#ifndef _ELF_I386_H 2152284Sobrien#define _ELF_I386_H 2252284Sobrien 2352284Sobrien#include "elf/reloc-macros.h" 2452284Sobrien 2552284SobrienSTART_RELOC_NUMBERS (elf_i386_reloc_type) 2652284Sobrien RELOC_NUMBER (R_386_NONE, 0) /* No reloc */ 2752284Sobrien RELOC_NUMBER (R_386_32, 1) /* Direct 32 bit */ 2852284Sobrien RELOC_NUMBER (R_386_PC32, 2) /* PC relative 32 bit */ 2952284Sobrien RELOC_NUMBER (R_386_GOT32, 3) /* 32 bit GOT entry */ 3090075Sobrien RELOC_NUMBER (R_386_PLT32, 4) /* 32 bit PLT address */ 3190075Sobrien RELOC_NUMBER (R_386_COPY, 5) /* Copy symbol at runtime */ 3252284Sobrien RELOC_NUMBER (R_386_GLOB_DAT, 6) /* Create GOT entry */ 3352284Sobrien RELOC_NUMBER (R_386_JUMP_SLOT, 7) /* Create PLT entry */ 34117395Skan RELOC_NUMBER (R_386_RELATIVE, 8) /* Adjust by program base */ 35 RELOC_NUMBER (R_386_GOTOFF, 9) /* 32 bit offset to GOT */ 36 RELOC_NUMBER (R_386_GOTPC, 10) /* 32 bit PC relative offset to GOT */ 37 FAKE_RELOC (FIRST_INVALID_RELOC, 11) 38 FAKE_RELOC (LAST_INVALID_RELOC, 19) 39 RELOC_NUMBER (R_386_16, 20) 40 RELOC_NUMBER (R_386_PC16, 21) 41 RELOC_NUMBER (R_386_8, 22) 42 RELOC_NUMBER (R_386_PC8, 23) 43 RELOC_NUMBER (R_386_max, 24) 44 /* These are GNU extensions to enable C++ vtable garbage collection. */ 45 RELOC_NUMBER (R_386_GNU_VTINHERIT, 250) 46 RELOC_NUMBER (R_386_GNU_VTENTRY, 251) 47END_RELOC_NUMBERS 48 49#endif 50