ld --gc-sections fail with __tls_get_addr_opt
[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
6f2750fe 7 Copyright (C) 1990-2016 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
b4655ea9 39int elf32_hppa_setup_section_lists
c39a58e6 40 (bfd *, struct bfd_link_info *);
b4655ea9
AM
41
42void elf32_hppa_next_input_section
c39a58e6 43 (struct bfd_link_info *, asection *);
b4655ea9 44
b34976b6 45bfd_boolean elf32_hppa_size_stubs
c39a58e6
AM
46 (bfd *, bfd *, struct bfd_link_info *, bfd_boolean, bfd_signed_vma,
47 asection * (*) (const char *, asection *), void (*) (void));
9e103c9c 48
b34976b6 49bfd_boolean elf32_hppa_set_gp
c39a58e6 50 (bfd *, struct bfd_link_info *);
252b5132 51
b34976b6 52bfd_boolean elf32_hppa_build_stubs
c39a58e6 53 (struct bfd_link_info *);
30667bf3 54
189c6563 55elf_hppa_reloc_type elf32_hppa_reloc_final_type
c39a58e6 56 (bfd *, elf_hppa_reloc_type, int, unsigned int);
189c6563 57
735c91d8 58extern elf_hppa_reloc_type ** _bfd_elf32_hppa_gen_reloc_type
c39a58e6 59 (bfd *, elf_hppa_reloc_type, int, unsigned int, int, asymbol *);
0d571602 60
252b5132
RH
61/* Define groups of basic relocations. FIXME: These should
62 be the only basic relocations created by GAS. The rest
9e103c9c 63 should be internal to the BFD backend.
252b5132
RH
64
65 The idea is both SOM and ELF define these basic relocation
9e103c9c 66 types so they map into a SOM or ELF specific relocation
252b5132
RH
67 as appropriate. This allows GAS to share much more code
68 between the two target object formats. */
69
70#define R_HPPA_NONE R_PARISC_NONE
9e103c9c
JL
71#define R_HPPA R_PARISC_DIR32
72#define R_HPPA_GOTOFF R_PARISC_DPREL21L
73#define R_HPPA_PCREL_CALL R_PARISC_PCREL21L
252b5132
RH
74#define R_HPPA_ABS_CALL R_PARISC_DIR17F
75#define R_HPPA_COMPLEX R_PARISC_UNIMPLEMENTED
76
252b5132 77#endif /* _ELF32_HPPA_H */
This page took 1.215186 seconds and 4 git commands to generate.