aboutsummaryrefslogtreecommitdiff
path: root/gas
diff options
context:
space:
mode:
authorDavid O'Brien <obrien@FreeBSD.org>2002-09-17 02:24:40 +0000
committerDavid O'Brien <obrien@FreeBSD.org>2002-09-17 02:24:40 +0000
commit4ada7262d0ae846b2ece141e6c8e091d7b350832 (patch)
treeb39dc8a5acedf43aaf393b002446936c19b875ac /gas
parentf184d8167ce62203049fda398042409cb4d83ef2 (diff)
downloadgdb-4ada7262d0ae846b2ece141e6c8e091d7b350832.zip
gdb-4ada7262d0ae846b2ece141e6c8e091d7b350832.tar.gz
gdb-4ada7262d0ae846b2ece141e6c8e091d7b350832.tar.bz2
2002-09-16 Bruno Haible <bruno@clisp.org>
* elf32-i386.c: Don't defined ELF_ARCH etc. if this file is included by a target variant implementation. * elf64-alpha.c: Likewise. * elf32-i386-fbsd.c: New file. * elf64-alpha-fbsd.c: New file. * targets.c: Support bfd_elf32_i386_freebsd_vec and bfd_elf64_alpha_freebsd_vec. * configure.in: Accept the vectors bfd_elf32_i386_freebsd_vec, bfd_elf64_alpha_freebsd_vec. * Makefile.am (BFD32_BACKENDS): Add elf32-i386-fbsd.lo. (BFD32_BACKENDS_CFILES): Add elf32-i386-fbsd.c. (BFD64_BACKENDS): Add elf64-alpha-fbsd.lo. (BFD64_BACKENDS_CFILES): Add elf64-alpha-fbsd.c. (elf32-i386-fbsd.lo, elf64-alpha-fbsd.lo): Add dependencies. * config.bfd: For FreeBSD targets, set targ_defvec to a FreeBSD specific targets. Define OLD_FREEBSD_ABI_LABEL if appropriate. * config/tc-i386.h (ELF_TARGET_FORMAT): New macro. (TARGET_FORMAT): Use ELF_TARGET_FORMAT instead of "elf32-i386". * config/tc-i386.c (i386_target_format): Likewise. * config/tc-alpha.h (ELF_TARGET_FORMAT): New macro. (TARGET_FORMAT): Use ELF_TARGET_FORMAT instead of "elf64-alpha". * emulparams/elf_i386_fbsd.sh: Set OUTPUT_FORMAT to elf32-i386-freebsd. * emulparams/elf64alpha_fbsd.sh: Set OUTPUT_FORMAT to elf64-alpha-freebsd. Approved by: Alan Modra <amodra@bigpond.net.au> Message-ID: <20020715021113.GJ30362@bubble.sa.bigpond.net.au>
Diffstat (limited to 'gas')
-rw-r--r--gas/ChangeLog8
-rw-r--r--gas/config/tc-alpha.h9
-rw-r--r--gas/config/tc-i386.c2
-rw-r--r--gas/config/tc-i386.h9
4 files changed, 25 insertions, 3 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index ad807bd..972096d 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,11 @@
+2002-09-16 Bruno Haible <bruno@clisp.org>
+
+ * config/tc-i386.h (ELF_TARGET_FORMAT): New macro.
+ (TARGET_FORMAT): Use ELF_TARGET_FORMAT instead of "elf32-i386".
+ * config/tc-i386.c (i386_target_format): Likewise.
+ * config/tc-alpha.h (ELF_TARGET_FORMAT): New macro.
+ (TARGET_FORMAT): Use ELF_TARGET_FORMAT instead of "elf64-alpha".
+
2002-09-13 Nick Clifton <nickc@redhat.com>
* config/tc-ppc.c (md_assemble): Do not count FAKE operands
diff --git a/gas/config/tc-alpha.h b/gas/config/tc-alpha.h
index d6a8842..50e4389 100644
--- a/gas/config/tc-alpha.h
+++ b/gas/config/tc-alpha.h
@@ -28,10 +28,17 @@
#define TARGET_ARCH bfd_arch_alpha
+#ifdef TE_FreeBSD
+#define ELF_TARGET_FORMAT "elf64-alpha-freebsd"
+#endif
+#ifndef ELF_TARGET_FORMAT
+#define ELF_TARGET_FORMAT "elf64-alpha"
+#endif
+
#define TARGET_FORMAT (OUTPUT_FLAVOR == bfd_target_ecoff_flavour \
? "ecoff-littlealpha" \
: OUTPUT_FLAVOR == bfd_target_elf_flavour \
- ? "elf64-alpha" \
+ ? ELF_TARGET_FORMAT \
: OUTPUT_FLAVOR == bfd_target_evax_flavour \
? "vms-alpha" \
: "unknown-format")
diff --git a/gas/config/tc-i386.c b/gas/config/tc-i386.c
index 2a676d7..1a9a30e 100644
--- a/gas/config/tc-i386.c
+++ b/gas/config/tc-i386.c
@@ -4953,7 +4953,7 @@ i386_target_format ()
{
if (flag_code == CODE_64BIT)
use_rela_relocations = 1;
- return flag_code == CODE_64BIT ? "elf64-x86-64" : "elf32-i386";
+ return flag_code == CODE_64BIT ? "elf64-x86-64" : ELF_TARGET_FORMAT;
}
#endif
default:
diff --git a/gas/config/tc-i386.h b/gas/config/tc-i386.h
index 2c4cd16..7aba695 100644
--- a/gas/config/tc-i386.h
+++ b/gas/config/tc-i386.h
@@ -60,13 +60,20 @@ extern unsigned long i386_mach PARAMS ((void));
#define AOUT_TARGET_FORMAT "a.out-i386"
#endif
+#ifdef TE_FreeBSD
+#define ELF_TARGET_FORMAT "elf32-i386-freebsd"
+#endif
+#ifndef ELF_TARGET_FORMAT
+#define ELF_TARGET_FORMAT "elf32-i386"
+#endif
+
#if ((defined (OBJ_MAYBE_COFF) && defined (OBJ_MAYBE_AOUT)) \
|| defined (OBJ_ELF) || defined (OBJ_MAYBE_ELF))
extern const char *i386_target_format PARAMS ((void));
#define TARGET_FORMAT i386_target_format ()
#else
#ifdef OBJ_ELF
-#define TARGET_FORMAT "elf32-i386"
+#define TARGET_FORMAT ELF_TARGET_FORMAT
#endif
#ifdef OBJ_AOUT
#define TARGET_FORMAT AOUT_TARGET_FORMAT