ELF/BFD: Limit `_bfd_elf_link_renumber_dynsyms' call in section GC
[deliverable/binutils-gdb.git] / bfd / elf32-hppa.h
CommitLineData
252b5132
RH
1/* ELF32/HPPA support
2
3 This file contains ELF32/HPPA relocation support as specified
4 in the Stratus FTX/Golf Object File Format (SED-1762) dated
5 February 1994.
6
2571583a 7 Copyright (C) 1990-2017 Free Software Foundation, Inc.
252b5132
RH
8
9 Written by:
10
11 Center for Software Science
12 Department of Computer Science
13 University of Utah
14
15 This file is part of BFD, the Binary File Descriptor library.
16
17 This program is free software; you can redistribute it and/or modify
18 it under the terms of the GNU General Public License as published by
cd123cb7 19 the Free Software Foundation; either version 3 of the License, or
252b5132
RH
20 (at your option) any later version.
21
22 This program is distributed in the hope that it will be useful,
23 but WITHOUT ANY WARRANTY; without even the implied warranty of
24 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
25 GNU General Public License for more details.
26
27 You should have received a copy of the GNU General Public License
28 along with this program; if not, write to the Free Software
cd123cb7
NC
29 Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston,
30 MA 02110-1301, USA. */
252b5132
RH
31
32#ifndef _ELF32_HPPA_H
33#define _ELF32_HPPA_H
34
35#include "elf-bfd.h"
36#include "libhppa.h"
37#include "elf/hppa.h"
38
1fe0971e
TS
39#ifdef __cplusplus
40extern "C" {
41#endif
42
a464198b
AM
43void elf32_hppa_init_stub_bfd
44 (bfd *, struct bfd_link_info *);
45
b4655ea9 46int elf32_hppa_setup_section_lists
c39a58e6 47 (bfd *, struct bfd_link_info *);
b4655ea9
AM
48
49void elf32_hppa_next_input_section
c39a58e6 50 (struct bfd_link_info *, asection *);
b4655ea9 51
b34976b6 52bfd_boolean elf32_hppa_size_stubs
c39a58e6
AM
53 (bfd *, bfd *, struct bfd_link_info *, bfd_boolean, bfd_signed_vma,
54 asection * (*) (const char *, asection *), void (*) (void));
9e103c9c 55
b34976b6 56bfd_boolean elf32_hppa_set_gp
c39a58e6 57 (bfd *, struct bfd_link_info *);
252b5132 58
b34976b6 59bfd_boolean elf32_hppa_build_stubs
c39a58e6 60 (struct bfd_link_info *);
30667bf3 61
189c6563 62elf_hppa_reloc_type elf32_hppa_reloc_final_type
c39a58e6 63 (bfd *, elf_hppa_reloc_type, int, unsigned int);
189c6563 64
735c91d8 65extern elf_hppa_reloc_type ** _bfd_elf32_hppa_gen_reloc_type
c39a58e6 66 (bfd *, elf_hppa_reloc_type, int, unsigned int, int, asymbol *);
0d571602 67
252b5132
RH
68/* Define groups of basic relocations. FIXME: These should
69 be the only basic relocations created by GAS. The rest
9e103c9c 70 should be internal to the BFD backend.
252b5132
RH
71
72 The idea is both SOM and ELF define these basic relocation
9e103c9c 73 types so they map into a SOM or ELF specific relocation
252b5132
RH
74 as appropriate. This allows GAS to share much more code
75 between the two target object formats. */
76
77#define R_HPPA_NONE R_PARISC_NONE
9e103c9c
JL
78#define R_HPPA R_PARISC_DIR32
79#define R_HPPA_GOTOFF R_PARISC_DPREL21L
80#define R_HPPA_PCREL_CALL R_PARISC_PCREL21L
252b5132
RH
81#define R_HPPA_ABS_CALL R_PARISC_DIR17F
82#define R_HPPA_COMPLEX R_PARISC_UNIMPLEMENTED
83
1fe0971e
TS
84#ifdef __cplusplus
85}
86#endif
87
252b5132 88#endif /* _ELF32_HPPA_H */
This page took 0.874256 seconds and 4 git commands to generate.