Subversion Repositories Kolibri OS

Rev

Rev 5191 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
5191 serge 1
/* Meta ELF support for BFD.
6324 serge 2
   Copyright (C) 2013-2015 Free Software Foundation, Inc.
5191 serge 3
   Contributed by Imagination Technologies Ltd.
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 3 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 Foundation,
19
   Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.  */
20
 
21
#ifndef _ELF_METAG_H
22
#define _ELF_METAG_H
23
 
24
#include "elf/reloc-macros.h"
25
 
26
/* Relocation types.  */
27
 
28
START_RELOC_NUMBERS (elf_metag_reloc_type)
29
     RELOC_NUMBER (R_METAG_HIADDR16,      0)
30
     RELOC_NUMBER (R_METAG_LOADDR16,      1)
31
     RELOC_NUMBER (R_METAG_ADDR32,        2)
32
     RELOC_NUMBER (R_METAG_NONE,          3)
33
     RELOC_NUMBER (R_METAG_RELBRANCH,     4)
34
     RELOC_NUMBER (R_METAG_GETSETOFF,     5)
35
 
36
     /* Backward compatability */
37
     RELOC_NUMBER (R_METAG_REG32OP1,      6)
38
     RELOC_NUMBER (R_METAG_REG32OP2,      7)
39
     RELOC_NUMBER (R_METAG_REG32OP3,      8)
40
     RELOC_NUMBER (R_METAG_REG16OP1,      9)
41
     RELOC_NUMBER (R_METAG_REG16OP2,     10)
42
     RELOC_NUMBER (R_METAG_REG16OP3,     11)
43
     RELOC_NUMBER (R_METAG_REG32OP4,     12)
44
 
45
     RELOC_NUMBER (R_METAG_HIOG,         13)
46
     RELOC_NUMBER (R_METAG_LOOG,         14)
47
 
48
     RELOC_NUMBER (R_METAG_REL8,         15)
49
     RELOC_NUMBER (R_METAG_REL16,        16)
50
 
51
     /* GNU */
52
     RELOC_NUMBER (R_METAG_GNU_VTINHERIT,30)
53
     RELOC_NUMBER (R_METAG_GNU_VTENTRY,  31)
54
 
55
     /* PIC relocations */
56
     RELOC_NUMBER (R_METAG_HI16_GOTOFF,  32)
57
     RELOC_NUMBER (R_METAG_LO16_GOTOFF,  33)
58
     RELOC_NUMBER (R_METAG_GETSET_GOTOFF,34)
59
     RELOC_NUMBER (R_METAG_GETSET_GOT,   35)
60
     RELOC_NUMBER (R_METAG_HI16_GOTPC,   36)
61
     RELOC_NUMBER (R_METAG_LO16_GOTPC,   37)
62
     RELOC_NUMBER (R_METAG_HI16_PLT,     38)
63
     RELOC_NUMBER (R_METAG_LO16_PLT,     39)
64
     RELOC_NUMBER (R_METAG_RELBRANCH_PLT,40)
65
     RELOC_NUMBER (R_METAG_GOTOFF,       41)
66
     RELOC_NUMBER (R_METAG_PLT,          42)
67
     RELOC_NUMBER (R_METAG_COPY,         43)
68
     RELOC_NUMBER (R_METAG_JMP_SLOT,     44)
69
     RELOC_NUMBER (R_METAG_RELATIVE,     45)
70
     RELOC_NUMBER (R_METAG_GLOB_DAT,     46)
71
 
72
     /* TLS relocations */
73
     RELOC_NUMBER (R_METAG_TLS_GD,       47)
74
     RELOC_NUMBER (R_METAG_TLS_LDM,      48)
75
     RELOC_NUMBER (R_METAG_TLS_LDO_HI16, 49)
76
     RELOC_NUMBER (R_METAG_TLS_LDO_LO16, 50)
77
     RELOC_NUMBER (R_METAG_TLS_LDO,      51)
78
     RELOC_NUMBER (R_METAG_TLS_IE,       52)
79
     RELOC_NUMBER (R_METAG_TLS_IENONPIC, 53)
80
     RELOC_NUMBER (R_METAG_TLS_IENONPIC_HI16,54)
81
     RELOC_NUMBER (R_METAG_TLS_IENONPIC_LO16,55)
82
     RELOC_NUMBER (R_METAG_TLS_TPOFF,    56)
83
     RELOC_NUMBER (R_METAG_TLS_DTPMOD,   57)
84
     RELOC_NUMBER (R_METAG_TLS_DTPOFF,   58)
85
     RELOC_NUMBER (R_METAG_TLS_LE,       59)
86
     RELOC_NUMBER (R_METAG_TLS_LE_HI16,  60)
87
     RELOC_NUMBER (R_METAG_TLS_LE_LO16,  61)
88
 
89
END_RELOC_NUMBERS (R_METAG_MAX)
90
 
91
#endif /* _ELF_METAG_H */