1 /* OR1K ELF support for BFD. Derived from ppc.h. 2 Copyright (C) 2002 Free Software Foundation, Inc. 3 Contributed by Ivan Guzvinec <ivang@opencores.org> 4 5 This file is part of BFD, the Binary File Descriptor library. 6 7 This program is free software; you can redistribute it and/or modify 8 it under the terms of the GNU General Public License as published by 9 the Free Software Foundation; either version 2 of the License, or 10 (at your option) any later version. 11 12 This program is distributed in the hope that it will be useful, 13 but WITHOUT ANY WARRANTY; without even the implied warranty of 14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 GNU General Public License for more details. 16 17 You should have received a copy of the GNU General Public License 18 along with this program; if not, write to the Free Software 19 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ 20 21 #ifndef _ELF_OR1K_H 22 #define _ELF_OR1K_H 23 24 #include "elf/reloc-macros.h" 25 26 /* Relocations. */ 27 START_RELOC_NUMBERS (elf_or32_reloc_type) 28 RELOC_NUMBER (R_OR32_NONE, 0) 29 RELOC_NUMBER (R_OR32_32, 1) 30 RELOC_NUMBER (R_OR32_16, 2) 31 RELOC_NUMBER (R_OR32_8, 3) 32 RELOC_NUMBER (R_OR32_CONST, 4) 33 RELOC_NUMBER (R_OR32_CONSTH, 5) 34 RELOC_NUMBER (R_OR32_JUMPTARG, 6) 35 RELOC_NUMBER (R_OR32_GNU_VTENTRY, 7) 36 RELOC_NUMBER (R_OR32_GNU_VTINHERIT, 8) 37 END_RELOC_NUMBERS (R_OR32_max) 38 39 /* Four bit OR32 machine type field. */ 40 #define EF_OR32_MACH 0x0000000f 41 42 /* Various CPU types. */ 43 #define E_OR32_MACH_BASE 0x00000000 44 #define E_OR32_MACH_UNUSED1 0x00000001 45 #define E_OR32_MACH_UNUSED2 0x00000002 46 #define E_OR32_MACH_UNUSED4 0x00000003 47 48 /* Processor specific section headers, sh_type field */ 49 #define SHT_ORDERED SHT_HIPROC /* Link editor is to sort the \ 50 entries in this section \ 51 based on the address \ 52 specified in the associated \ 53 symbol table entry. */ 54 55 /* Processor specific section flags, sh_flags field */ 56 #define SHF_EXCLUDE 0x80000000 /* Link editor is to exclude \ 57 this section from executable \ 58 and shared objects that it \ 59 builds when those objects \ 60 are not to be furhter \ 61 relocated. */ 62 #endif /* _ELF_OR1K_H */ 63