summaryrefslogtreecommitdiffstats
path: root/contrib/binutils/gas/config/obj-elf.h
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/binutils/gas/config/obj-elf.h')
-rw-r--r--contrib/binutils/gas/config/obj-elf.h28
1 files changed, 3 insertions, 25 deletions
diff --git a/contrib/binutils/gas/config/obj-elf.h b/contrib/binutils/gas/config/obj-elf.h
index 8e3ce7d..33c5f43 100644
--- a/contrib/binutils/gas/config/obj-elf.h
+++ b/contrib/binutils/gas/config/obj-elf.h
@@ -182,32 +182,10 @@ void elf_obj_symbol_new_hook PARAMS ((symbolS *));
#define obj_symbol_new_hook elf_obj_symbol_new_hook
#endif
-/* When setting one symbol equal to another, by default we probably
- want them to have the same "size", whatever it means in the current
- context. */
+void elf_copy_symbol_attributes PARAMS ((symbolS *, symbolS *));
#ifndef OBJ_COPY_SYMBOL_ATTRIBUTES
-#define OBJ_COPY_SYMBOL_ATTRIBUTES(DEST,SRC) \
-do \
- { \
- struct elf_obj_sy *srcelf = symbol_get_obj (SRC); \
- struct elf_obj_sy *destelf = symbol_get_obj (DEST); \
- if (srcelf->size) \
- { \
- if (destelf->size == NULL) \
- destelf->size = \
- (expressionS *) xmalloc (sizeof (expressionS)); \
- *destelf->size = *srcelf->size; \
- } \
- else \
- { \
- if (destelf->size != NULL) \
- free (destelf->size); \
- destelf->size = NULL; \
- } \
- S_SET_SIZE ((DEST), S_GET_SIZE (SRC)); \
- S_SET_OTHER ((DEST), S_GET_OTHER (SRC)); \
- } \
-while (0)
+#define OBJ_COPY_SYMBOL_ATTRIBUTES(DEST, SRC) \
+ (elf_copy_symbol_attributes (DEST, SRC))
#endif
#ifndef SEPARATE_STAB_SECTIONS
OpenPOWER on IntegriCloud