From 0d4d5f1a9086e592a1a3011978bddeee06a82227 Mon Sep 17 00:00:00 2001 From: Paul Brook Date: Tue, 31 May 2011 14:07:57 +0000 Subject: [PATCH] 2011-05-31 Paul Brook bfd/ * elf32-arm.c (elf32_arm_final_link_relocate): Only do bl conversion for known functions. (elf32_arm_swap_symbol_in): Only set ST_BRANCH_TO_ARM for function symbols. include/elf/ * arm.h (arm_st_branch_type): Add ST_BRANCH_UNKNOWN. ld/testsuite/ * ld-arm/cortex-a8-far.d: Adjust expected output. * ld-arm/arm-call1.s: Give function symbol correct type. * ld-arm/arm-call2.s: Ditto. * ld-arm/farcall-group4.s: Ditto. * ld-arm/arm-elf.exp (cortex-a8-far): Define far symbols with correct type via assembly file. * ld-arm/cortex-a8-far-3.s: New file. * ld-arm/abs-call-1.s: Add Thumb tests --- include/elf/ChangeLog | 4 ++++ include/elf/arm.h | 3 ++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/include/elf/ChangeLog b/include/elf/ChangeLog index a43b34d91..d0700468b 100644 --- a/include/elf/ChangeLog +++ b/include/elf/ChangeLog @@ -1,3 +1,7 @@ +2011-05-31 Paul Brook + + * arm.h (arm_st_branch_type): Add ST_BRANCH_UNKNOWN. + 2011-04-15 Sergio Durigan Junior * common.h (NT_STAPSDT): New define. diff --git a/include/elf/arm.h b/include/elf/arm.h index 5b01835a7..860fdf77a 100644 --- a/include/elf/arm.h +++ b/include/elf/arm.h @@ -328,7 +328,8 @@ enum enum arm_st_branch_type { ST_BRANCH_TO_ARM, ST_BRANCH_TO_THUMB, - ST_BRANCH_LONG + ST_BRANCH_LONG, + ST_BRANCH_UNKNOWN }; #define ARM_SYM_BRANCH_TYPE(SYM) \