aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/elf/ChangeLog6
-rw-r--r--include/elf/arm.h9
-rw-r--r--include/elf/internal.h1
3 files changed, 16 insertions, 0 deletions
diff --git a/include/elf/ChangeLog b/include/elf/ChangeLog
index ee88a5c..8fd7c5e 100644
--- a/include/elf/ChangeLog
+++ b/include/elf/ChangeLog
@@ -1,3 +1,9 @@
+2011-03-14 Richard Sandiford <richard.sandiford@linaro.org>
+
+ * internal.h (elf_internal_sym): Add st_target_internal.
+ * arm.h (arm_st_branch_type): New enum.
+ (ARM_SYM_BRANCH_TYPE): New macro.
+
2011-03-10 Nick Clifton <nickc@redhat.com>
* common.h (EM_V850): V850s now supplied by Renesas.
diff --git a/include/elf/arm.h b/include/elf/arm.h
index 18aa559..e3df27f 100644
--- a/include/elf/arm.h
+++ b/include/elf/arm.h
@@ -323,4 +323,13 @@ enum
#define ELF_STRING_ARM_unwind_once ".gnu.linkonce.armexidx."
#define ELF_STRING_ARM_unwind_info_once ".gnu.linkonce.armextab."
+enum arm_st_branch_type {
+ ST_BRANCH_TO_ARM,
+ ST_BRANCH_TO_THUMB,
+ ST_BRANCH_LONG
+};
+
+#define ARM_SYM_BRANCH_TYPE(SYM) \
+ ((enum arm_st_branch_type) (SYM)->st_target_internal)
+
#endif /* _ELF_ARM_H */
diff --git a/include/elf/internal.h b/include/elf/internal.h
index c6e5721..4615037 100644
--- a/include/elf/internal.h
+++ b/include/elf/internal.h
@@ -124,6 +124,7 @@ struct elf_internal_sym {
unsigned long st_name; /* Symbol name, index in string tbl */
unsigned char st_info; /* Type and binding attributes */
unsigned char st_other; /* Visibilty, and target specific */
+ unsigned char st_target_internal; /* Internal-only information */
unsigned int st_shndx; /* Associated section index */
};