aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRichard Sandiford <rsandifo@redhat.com>2003-05-19 07:27:45 +0000
committerRichard Sandiford <rsandifo@gcc.gnu.org>2003-05-19 07:27:45 +0000
commitbeb14bd522f5e60f7a2c85f4308a412b18e8e8ce (patch)
tree9f88c7eb72afd9edf67996f1bde505948730ddc5 /gcc
parent7e8f3096dc8d41f9bffec4033d42737a758d8e8d (diff)
downloadgcc-beb14bd522f5e60f7a2c85f4308a412b18e8e8ce.zip
gcc-beb14bd522f5e60f7a2c85f4308a412b18e8e8ce.tar.gz
gcc-beb14bd522f5e60f7a2c85f4308a412b18e8e8ce.tar.bz2
mips.c (override_options): Disable explicit relocs for old ABIs unless using gas.
* config/mips/mips.c (override_options): Disable explicit relocs for old ABIs unless using gas. From-SVN: r66949
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/config/mips/mips.c7
2 files changed, 12 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 849f6b0..8765e3e 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2003-05-19 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.c (override_options): Disable explicit
+ relocs for old ABIs unless using gas.
+
2003-05-18 Eric Christopher <echristo@redhat.com>
* config/mips/mips.h: Remove definition of g_switch_value.
diff --git a/gcc/config/mips/mips.c b/gcc/config/mips/mips.c
index c822f37..8474e47 100644
--- a/gcc/config/mips/mips.c
+++ b/gcc/config/mips/mips.c
@@ -5681,6 +5681,13 @@ override_options ()
target_flags &= ~MASK_EXPLICIT_RELOCS;
}
+ /* Explicit relocations for "old" ABIs are a GNU extension. Unless
+ the user has said otherwise, assume that they are not available
+ with assemblers other than gas. */
+ if (!TARGET_NEWABI && !TARGET_GAS
+ && (target_flags_explicit & MASK_EXPLICIT_RELOCS) == 0)
+ target_flags &= ~MASK_EXPLICIT_RELOCS;
+
/* -mrnames says to use the MIPS software convention for register
names instead of the hardware names (ie, $a0 instead of $4).
We do this by switching the names in mips_reg_names, which the