summaryrefslogtreecommitdiff
path: root/bfd
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2017-04-27 12:03:39 +0930
committerAlan Modra <amodra@gmail.com>2017-04-27 12:03:39 +0930
commit76c20d54ca5042e11af9ddf5723cc24cf47736ec (patch)
treea14eafe2cdfe94597edefc9ff9ad56131fd90bf3 /bfd
parentd7153c4ac333c9127c18efcf184607d368bb142d (diff)
Constify elf_backend_eh_frame_address_size
* elf-bfd.h (struct elf_backend_data): Make asection param of elf_backend_eh_frame_address_size const. (_bfd_elf_eh_frame_address_size): Likewise. * elf32-m32c.c (_bfd_m32c_elf_eh_frame_address_size): Likewise. * elf32-msp430.c (elf32_msp430_eh_frame_address_size): Likewise. * elfxx-mips.c (_bfd_mips_elf_eh_frame_address_size): Likewise. * elfxx-mips.h (_bfd_mips_elf_eh_frame_address_size): Likewise. * elf-eh-frame.c (_bfd_elf_eh_frame_address_size): Likewise. (next_cie_fde_offset): Constify params. (offset_adjust, adjust_eh_frame_local_symbols): Likewise.
Diffstat (limited to 'bfd')
-rw-r--r--bfd/ChangeLog13
-rw-r--r--bfd/elf-bfd.h4
-rw-r--r--bfd/elf-eh-frame.c12
-rw-r--r--bfd/elf32-m32c.c3
-rw-r--r--bfd/elf32-msp430.c3
-rw-r--r--bfd/elfxx-mips.c2
-rw-r--r--bfd/elfxx-mips.h2
7 files changed, 27 insertions, 12 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 0f08ddd1e3..376f2013cf 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,5 +1,18 @@
2017-04-27 Alan Modra <amodra@gmail.com>
+ * elf-bfd.h (struct elf_backend_data): Make asection param of
+ elf_backend_eh_frame_address_size const.
+ (_bfd_elf_eh_frame_address_size): Likewise.
+ * elf32-m32c.c (_bfd_m32c_elf_eh_frame_address_size): Likewise.
+ * elf32-msp430.c (elf32_msp430_eh_frame_address_size): Likewise.
+ * elfxx-mips.c (_bfd_mips_elf_eh_frame_address_size): Likewise.
+ * elfxx-mips.h (_bfd_mips_elf_eh_frame_address_size): Likewise.
+ * elf-eh-frame.c (_bfd_elf_eh_frame_address_size): Likewise.
+ (next_cie_fde_offset): Constify params.
+ (offset_adjust, adjust_eh_frame_local_symbols): Likewise.
+
+2017-04-27 Alan Modra <amodra@gmail.com>
+
* elf-bfd.h (struct eh_cie_fde): Add aug_str_len and aug_data_len.
(_bfd_elf_adjust_eh_frame_global_symbol): Declare.
* elf-eh-frame.c (_bfd_elf_parse_eh_frame): Set aug_str_len and
diff --git a/bfd/elf-bfd.h b/bfd/elf-bfd.h
index bff6abc669..79f87b233e 100644
--- a/bfd/elf-bfd.h
+++ b/bfd/elf-bfd.h
@@ -1291,7 +1291,7 @@ struct elf_backend_data
that can't be determined for some reason. The default definition
goes by the bfd's EI_CLASS. */
unsigned int (*elf_backend_eh_frame_address_size)
- (bfd *, asection *);
+ (bfd *, const asection *);
/* These functions tell elf-eh-frame whether to attempt to turn
absolute or lsda encodings into pc-relative ones. The default
@@ -1987,7 +1987,7 @@ extern void bfd_elf_print_symbol
(bfd *, void *, asymbol *, bfd_print_symbol_type);
extern unsigned int _bfd_elf_eh_frame_address_size
- (bfd *, asection *);
+ (bfd *, const asection *);
extern bfd_byte _bfd_elf_encode_eh_address
(bfd *abfd, struct bfd_link_info *info, asection *osec, bfd_vma offset,
asection *loc_sec, bfd_vma loc_offset, bfd_vma *encoded);
diff --git a/bfd/elf-eh-frame.c b/bfd/elf-eh-frame.c
index 1af6f30908..52ba9c6213 100644
--- a/bfd/elf-eh-frame.c
+++ b/bfd/elf-eh-frame.c
@@ -326,9 +326,9 @@ size_of_output_cie_fde (struct eh_cie_fde *entry)
/* Return the offset of the FDE or CIE after ENT. */
static unsigned int
-next_cie_fde_offset (struct eh_cie_fde *ent,
- struct eh_cie_fde *last,
- asection *sec)
+next_cie_fde_offset (const struct eh_cie_fde *ent,
+ const struct eh_cie_fde *last,
+ const asection *sec)
{
while (++ent < last)
{
@@ -1334,7 +1334,7 @@ find_merged_cie (bfd *abfd, struct bfd_link_info *info, asection *sec,
after .eh_frame editing. */
static bfd_signed_vma
-offset_adjust (bfd_vma offset, asection *sec)
+offset_adjust (bfd_vma offset, const asection *sec)
{
struct eh_frame_sec_info *sec_info
= (struct eh_frame_sec_info *) elf_section_data (sec)->sec_info;
@@ -1442,7 +1442,7 @@ _bfd_elf_adjust_eh_frame_global_symbol (struct elf_link_hash_entry *h,
if any symbol was changed. */
static int
-adjust_eh_frame_local_symbols (asection *sec,
+adjust_eh_frame_local_symbols (const asection *sec,
struct elf_reloc_cookie *cookie)
{
unsigned int shndx;
@@ -2546,7 +2546,7 @@ _bfd_elf_write_section_eh_frame_hdr (bfd *abfd, struct bfd_link_info *info)
/* Return the width of FDE addresses. This is the default implementation. */
unsigned int
-_bfd_elf_eh_frame_address_size (bfd *abfd, asection *sec ATTRIBUTE_UNUSED)
+_bfd_elf_eh_frame_address_size (bfd *abfd, const asection *sec ATTRIBUTE_UNUSED)
{
return elf_elfheader (abfd)->e_ident[EI_CLASS] == ELFCLASS64 ? 8 : 4;
}
diff --git a/bfd/elf32-m32c.c b/bfd/elf32-m32c.c
index 1944465aac..0ee67b7aeb 100644
--- a/bfd/elf32-m32c.c
+++ b/bfd/elf32-m32c.c
@@ -2107,7 +2107,8 @@ m32c_elf_relax_delete_bytes
/* This is for versions of gcc prior to 4.3. */
static unsigned int
-_bfd_m32c_elf_eh_frame_address_size (bfd *abfd, asection *sec ATTRIBUTE_UNUSED)
+_bfd_m32c_elf_eh_frame_address_size (bfd *abfd,
+ const asection *sec ATTRIBUTE_UNUSED)
{
if ((elf_elfheader (abfd)->e_flags & EF_M32C_CPU_MASK) == EF_M32C_CPU_M16C)
return 2;
diff --git a/bfd/elf32-msp430.c b/bfd/elf32-msp430.c
index 8755280393..25bbdc8e32 100644
--- a/bfd/elf32-msp430.c
+++ b/bfd/elf32-msp430.c
@@ -2552,7 +2552,8 @@ uses_large_model (bfd *abfd)
}
static unsigned int
-elf32_msp430_eh_frame_address_size (bfd *abfd, asection *sec ATTRIBUTE_UNUSED)
+elf32_msp430_eh_frame_address_size (bfd *abfd,
+ const asection *sec ATTRIBUTE_UNUSED)
{
return uses_large_model (abfd) ? 4 : 2;
}
diff --git a/bfd/elfxx-mips.c b/bfd/elfxx-mips.c
index 8f6faad579..70c7f1cc3d 100644
--- a/bfd/elfxx-mips.c
+++ b/bfd/elfxx-mips.c
@@ -7028,7 +7028,7 @@ _bfd_mips_elf_symbol_processing (bfd *abfd, asymbol *asym)
did so. */
unsigned int
-_bfd_mips_elf_eh_frame_address_size (bfd *abfd, asection *sec)
+_bfd_mips_elf_eh_frame_address_size (bfd *abfd, const asection *sec)
{
if (elf_elfheader (abfd)->e_ident[EI_CLASS] == ELFCLASS64)
return 8;
diff --git a/bfd/elfxx-mips.h b/bfd/elfxx-mips.h
index 45eb74fc2d..44ad789371 100644
--- a/bfd/elfxx-mips.h
+++ b/bfd/elfxx-mips.h
@@ -29,7 +29,7 @@ extern bfd_boolean _bfd_mips_elf_new_section_hook
extern void _bfd_mips_elf_symbol_processing
(bfd *, asymbol *);
extern unsigned int _bfd_mips_elf_eh_frame_address_size
- (bfd *, asection *);
+ (bfd *, const asection *);
extern bfd_boolean _bfd_mips_elf_name_local_section_symbols
(bfd *);
extern bfd_boolean _bfd_mips_elf_section_processing