From cac153277184781566fe0da208c79e1b7661f876 Mon Sep 17 00:00:00 2001 From: Nick Clifton Date: Fri, 4 May 2001 08:32:21 +0000 Subject: [PATCH] Set EF_ARM_HASENTRY if the start address is set. --- bfd/ChangeLog | 5 +++++ bfd/elf32-arm.h | 12 ++++++++++++ 2 files changed, 17 insertions(+) diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 3aa478f..5241b81 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,8 @@ +2001-05-04 Nick Clifton + + * elf32-arm.h (elf32_arm_final_link_relocate): Set + EF_ARM_HASENTRY if the start address is set. + 2001-05-03 Nick Clifton * targets.c (_bfd_target_vector_entries): Compute value based on diff --git a/bfd/elf32-arm.h b/bfd/elf32-arm.h index 089d9d4..013054a 100644 --- a/bfd/elf32-arm.h +++ b/bfd/elf32-arm.h @@ -1019,6 +1019,18 @@ elf32_arm_final_link_relocate (howto, input_bfd, output_bfd, bfd_signed_vma signed_addend; struct elf32_arm_link_hash_table * globals; + /* If the start address has been set, then set the EF_ARM_HASENTRY + flag. Setting this more than once is redundant, but the cost is + not too high, and it keeps the code simple. + + The test is done here, rather than somewhere else, because the + start address is only set just before the final link commences. + + Note - if the user deliberately sets a start address of 0, the + flag will not be set. */ + if (bfd_get_start_address (output_bfd) != 0) + elf_elfheader (output_bfd)->e_flags |= EF_ARM_HASENTRY; + globals = elf32_arm_hash_table (info); dynobj = elf_hash_table (info)->dynobj; -- 2.7.4