blob: 5aa3f3c77d459732f1d0d0453283dbb2adeb9869 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
|
/*
* CDDL HEADER START
*
* The contents of this file are subject to the terms of the
* Common Development and Distribution License, Version 1.0 only
* (the "License"). You may not use this file except in compliance
* with the License.
*
* You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
* or http://www.opensolaris.org/os/licensing.
* See the License for the specific language governing permissions
* and limitations under the License.
*
* When distributing Covered Code, include this CDDL HEADER in each
* file and include the License file at usr/src/OPENSOLARIS.LICENSE.
* If applicable, add the following below this CDDL HEADER, with the
* fields enclosed by brackets "[]" replaced with your own identifying
* information: Portions Copyright [yyyy] [name of copyright owner]
*
* CDDL HEADER END
*/
/*
* Copyright (c) 1998-1999 by Sun Microsystems, Inc.
* All rights reserved.
*/
#ifndef _SYS_ELF_IA64_H
#define _SYS_ELF_IA64_H
#pragma ident "%Z%%M% %I% %E% SMI"
#ifdef __cplusplus
extern "C" {
#endif
#define EF_IA_64_MASKOS 0x0000000f /* reserved for OS values */
#define EF_IA_64_ABI64 0x00000010 /* object uses LP64 model */
#define EF_IA_64_ARCH 0xff000000 /* arch. version ident */
/*
* processor specific program headers
*/
#define PT_IA_64_ARCHEXT 0x70000000
#define PT_IA_64_UNWIND 0x70000001 /* stack unwind tables */
#define PF_IA_64_NORECOV 0x80000000
#define R_IA_64_NONE 0 /* relocation type */
#define R_IA_64_IMM14 0x21
#define R_IA_64_IMM22 0x22
#define R_IA_64_IMM64 0x23
#define R_IA_64_DIR32MSB 0x24
#define R_IA_64_DIR32LSB 0x25
#define R_IA_64_DIR64MSB 0x26
#define R_IA_64_DIR64LSB 0x27
#define R_IA_64_GPREL22 0x2a
#define R_IA_64_GPREL64I 0x2b
#define R_IA_64_GPREL64MSB 0x2e
#define R_IA_64_GPREL64LSB 0x2f
#define R_IA_64_LTOFF22 0x32
#define R_IA_64_LTOFF64I 0x33
#define R_IA_64_PLTOFF22 0x3a
#define R_IA_64_PLTOFF64I 0x3b
#define R_IA_64_PLTOFF64MSB 0x3e
#define R_IA_64_PLTOFF64LSB 0x3f
#define R_IA_64_FPTR64I 0x43
#define R_IA_64_FPTR32MSB 0x44
#define R_IA_64_FPTR32LSB 0x45
#define R_IA_64_FPTR64MSB 0x46
#define R_IA_64_FPTR64LSB 0x47
#define R_IA_64_PCREL21B 0x49
#define R_IA_64_PCREL21M 0x4a
#define R_IA_64_PCREL21F 0x4b
#define R_IA_64_PCREL32MSB 0x4c
#define R_IA_64_PCREL32LSB 0x4d
#define R_IA_64_PCREL64MSB 0x4e
#define R_IA_64_PCREL64LSB 0x4f
#define R_IA_64_LTOFF_FPTR22 0x52
#define R_IA_64_LTOFF_FPTR64I 0x53
#define R_IA_64_SEGREL32MSB 0x5c
#define R_IA_64_SEGREL32LSB 0x5d
#define R_IA_64_SEGREL64MSB 0x5e
#define R_IA_64_SEGREL64LSB 0x5f
#define R_IA_64_SECREL32MSB 0x64
#define R_IA_64_SECREL32LSB 0x65
#define R_IA_64_SECREL64MSB 0x66
#define R_IA_64_SECREL64LSB 0x67
#define R_IA_64_REL32MSB 0x6c
#define R_IA_64_REL32LSB 0x6d
#define R_IA_64_REL64MSB 0x6e
#define R_IA_64_REL64LSB 0x6f
#define R_IA_64_LTV32MSB 0x70
#define R_IA_64_LTV32LSB 0x71
#define R_IA_64_LTV64MSB 0x72
#define R_IA_64_LTV64LSB 0x73
#define R_IA_64_IPLTMSB 0x80
#define R_IA_64_IPLTLSB 0x81
#define R_IA_64_NUM 0x82
#define ELF_IA_64_MAXPGSZ 0x100000 /* maximum page size */
#define SHF_ORDERED 0x40000000
#define SHF_EXCLUDE 0x80000000
#define SHN_BEFORE 0xff00
#define SHN_AFTER 0xff01
/*
* processor specific sh_type's
*/
#define SHT_IA_64_EXT 0x70000000
#define SHT_IA_64_UNWIND 0x70000001
/*
* processor specific sh_flags
*/
#define SHF_IA_64_SHORT 0x10000000
#define SHF_IA_64_NORECOV 0x20000000
/*
* Processor specific DT entries
*/
#define DT_IA_64_PLT_RESERVE 0x70000000
#ifdef __cplusplus
}
#endif
#endif /* _SYS_ELF_IA64_H */
|