aboutsummaryrefslogtreecommitdiff
path: root/gas/config
diff options
context:
space:
mode:
authorAlexandre Oliva <aoliva@redhat.com>2000-08-18 18:45:05 +0000
committerAlexandre Oliva <aoliva@redhat.com>2000-08-18 18:45:05 +0000
commit021986386e5aea745ae5b4300b84a3f8ef50e00b (patch)
treec56169e0fd9cdde1109c881ce4aee1c6faeb87a0 /gas/config
parent2ac374c471f9bd364e060cd64a1d65a453877015 (diff)
downloadgdb-021986386e5aea745ae5b4300b84a3f8ef50e00b.zip
gdb-021986386e5aea745ae5b4300b84a3f8ef50e00b.tar.gz
gdb-021986386e5aea745ae5b4300b84a3f8ef50e00b.tar.bz2
* write.c (fixup_segment) [TC_DONT_FIX_NON_ADJUSTABLE]: Use
obj_fix_adjustable() and tc_fix_adjustable() to tell whether to add a symbol's address. Removed all target-specific #ifdefs that used to accomplished the same. * config/tc-v850.h (TC_DONT_FIX_NON_ADJUSTABLE): Define. * config/tc-m68k.h (TC_DONT_FIX_NON_ADJUSTABLE): Define. * config/tc-arm.h (TC_DONT_FIX_NON_ADJUSTABLE): Define. * config/tc-i960.h (TC_DONT_FIX_NON_ADJUSTABLE): Define. * config/tc-i386.h (TC_DONT_FIX_NON_ADJUSTABLE): Define.
Diffstat (limited to 'gas/config')
-rw-r--r--gas/config/tc-arm.h4
-rw-r--r--gas/config/tc-i386.h4
-rw-r--r--gas/config/tc-i960.h4
-rw-r--r--gas/config/tc-m68k.h4
-rw-r--r--gas/config/tc-v850.h6
5 files changed, 21 insertions, 1 deletions
diff --git a/gas/config/tc-arm.h b/gas/config/tc-arm.h
index c5ab887..28d8bc4 100644
--- a/gas/config/tc-arm.h
+++ b/gas/config/tc-arm.h
@@ -116,6 +116,10 @@
#define TC_FIX_TYPE PTR
#define TC_INIT_FIX_DATA(FIXP) ((FIXP)->tc_fix_data = NULL)
+/* This arranges for gas/write.c to not apply a relocation if
+ obj_fix_adjustable() says it is not adjustable. */
+#define TC_DONT_FIX_NON_ADJUSTABLE 1
+
#ifdef OBJ_ELF
#include "write.h" /* For definition of fixS */
#define obj_fix_adjustable(fixP) arm_fix_adjustable (fixP)
diff --git a/gas/config/tc-i386.h b/gas/config/tc-i386.h
index c435690..e4a5731 100644
--- a/gas/config/tc-i386.h
+++ b/gas/config/tc-i386.h
@@ -38,6 +38,10 @@ struct fix;
type. The idea is that if the original type is already some kind of PIC
relocation, we leave it alone, otherwise we give it the desired type */
+/* This arranges for gas/write.c to not apply a relocation if
+ tc_fix_adjustable() says it is not adjustable. */
+#define TC_DONT_FIX_NON_ADJUSTABLE 1
+
#define tc_fix_adjustable(X) tc_i386_fix_adjustable(X)
extern int tc_i386_fix_adjustable PARAMS ((struct fix *));
diff --git a/gas/config/tc-i960.h b/gas/config/tc-i960.h
index 2746ede..dca9d4a 100644
--- a/gas/config/tc-i960.h
+++ b/gas/config/tc-i960.h
@@ -153,6 +153,10 @@ extern int i960_validate_fix PARAMS ((struct fix *, segT, symbolS **));
&& ! S_IS_COMMON ((FIX)->fx_addsy)))
#endif
+/* This arranges for gas/write.c to not apply a relocation if
+ tc_fix_adjustable() says it is not adjustable. */
+#define TC_DONT_FIX_NON_ADJUSTABLE 1
+
#ifndef OBJ_ELF
#define tc_fix_adjustable(FIXP) ((FIXP)->fx_bsr == 0)
#else
diff --git a/gas/config/tc-m68k.h b/gas/config/tc-m68k.h
index b3daf5e..1941e30 100644
--- a/gas/config/tc-m68k.h
+++ b/gas/config/tc-m68k.h
@@ -173,6 +173,10 @@ while (0)
&& S_IS_DEFINED ((FIX)->fx_addsy) \
&& ! S_IS_COMMON ((FIX)->fx_addsy)))
+/* This arranges for gas/write.c to not apply a relocation if
+ tc_fix_adjustable() says it is not adjustable. */
+#define TC_DONT_FIX_NON_ADJUSTABLE 1
+
#define tc_fix_adjustable(X) tc_m68k_fix_adjustable(X)
extern int tc_m68k_fix_adjustable PARAMS ((struct fix *));
#define elf_tc_final_processing m68k_elf_final_processing
diff --git a/gas/config/tc-v850.h b/gas/config/tc-v850.h
index fad4d1c..59fa507 100644
--- a/gas/config/tc-v850.h
+++ b/gas/config/tc-v850.h
@@ -1,5 +1,5 @@
/* tc-v850.h -- Header file for tc-v850.c.
- Copyright (C) 1996, 1997 Free Software Foundation, Inc.
+ Copyright (C) 1996, 1997, 2000 Free Software Foundation, Inc.
This file is part of GAS, the GNU Assembler.
@@ -37,6 +37,10 @@
#define MD_APPLY_FIX3
#define md_operand(x)
+/* This arranges for gas/write.c to not apply a relocation if
+ obj_fix_adjustable() says it is not adjustable. */
+#define TC_DONT_FIX_NON_ADJUSTABLE 1
+
#define obj_fix_adjustable(fixP) v850_fix_adjustable(fixP)
#define TC_FORCE_RELOCATION(fixp) v850_force_relocation(fixp)
extern int v850_force_relocation PARAMS ((struct fix *));