aboutsummaryrefslogtreecommitdiff
path: root/gas/config/tc-ppc.h
diff options
context:
space:
mode:
authorGeoffrey Keating <geoffk@geoffk.org>2000-01-31 19:13:47 +0000
committerGeoffrey Keating <geoffk@geoffk.org>2000-01-31 19:13:47 +0000
commit2c1c4c62197bd77d2c801e6bd6fe1d210a7ec68a (patch)
treea15099f6a3e0759829258ea3d733329d290a0931 /gas/config/tc-ppc.h
parent2d473ce9c07d69823e1d13baa595590b78c1bfa8 (diff)
downloadgdb-2c1c4c62197bd77d2c801e6bd6fe1d210a7ec68a.zip
gdb-2c1c4c62197bd77d2c801e6bd6fe1d210a7ec68a.tar.gz
gdb-2c1c4c62197bd77d2c801e6bd6fe1d210a7ec68a.tar.bz2
* config/obj-coff.h (OBJ_COPY_SYMBOL_ATTRIBUTES): Don't define if
already defined. * config/tc-ppc.h [OBJ_XCOFF] (OBJ_COPY_SYMBOL_ATTRIBUTES): New macro. * config/tc-ppc.c (ppc_fix_adjustable): Don't look at the frag of a symbol when we really care about its value.
Diffstat (limited to 'gas/config/tc-ppc.h')
-rw-r--r--gas/config/tc-ppc.h16
1 files changed, 15 insertions, 1 deletions
diff --git a/gas/config/tc-ppc.h b/gas/config/tc-ppc.h
index 436b975..783a215 100644
--- a/gas/config/tc-ppc.h
+++ b/gas/config/tc-ppc.h
@@ -1,5 +1,6 @@
/* tc-ppc.h -- Header file for tc-ppc.c.
- Copyright (C) 1994, 95, 96, 97, 98, 1999 Free Software Foundation, Inc.
+ Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000
+ Free Software Foundation, Inc.
Written by Ian Lance Taylor, Cygnus Support.
This file is part of GAS, the GNU Assembler.
@@ -187,6 +188,19 @@ extern void ppc_adjust_symtab PARAMS ((void));
/* Niclas Andersson <nican@ida.liu.se> says this is needed. */
#define SUB_SEGMENT_ALIGN(SEG) 2
+/* We also need to copy, in particular, the class of the symbol,
+ over what obj-coff would otherwise have copied. */
+#define OBJ_COPY_SYMBOL_ATTRIBUTES(dest,src) \
+do { \
+ if (SF_GET_GET_SEGMENT (dest)) \
+ S_SET_SEGMENT (dest, S_GET_SEGMENT (src)); \
+ symbol_get_tc (dest)->size = symbol_get_tc (src)->size; \
+ symbol_get_tc (dest)->align = symbol_get_tc (src)->align; \
+ symbol_get_tc (dest)->class = symbol_get_tc (src)->class; \
+ symbol_get_tc (dest)->within = symbol_get_tc (src)->within; \
+} while (0)
+
+
#endif /* OBJ_XCOFF */
#ifdef OBJ_ELF