summaryrefslogtreecommitdiff
path: root/gnu/usr.bin/binutils/gas/config
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/usr.bin/binutils/gas/config')
-rw-r--r--gnu/usr.bin/binutils/gas/config/obj-aout.c12
-rw-r--r--gnu/usr.bin/binutils/gas/config/tc-i386.h2
-rw-r--r--gnu/usr.bin/binutils/gas/config/tc-m68k.h2
-rw-r--r--gnu/usr.bin/binutils/gas/config/tc-sparc.h2
-rw-r--r--gnu/usr.bin/binutils/gas/config/te-obsd.h25
-rw-r--r--gnu/usr.bin/binutils/gas/config/te-obsd532.h21
6 files changed, 55 insertions, 9 deletions
diff --git a/gnu/usr.bin/binutils/gas/config/obj-aout.c b/gnu/usr.bin/binutils/gas/config/obj-aout.c
index 36519d58b54..af780bb6f5c 100644
--- a/gnu/usr.bin/binutils/gas/config/obj-aout.c
+++ b/gnu/usr.bin/binutils/gas/config/obj-aout.c
@@ -388,7 +388,7 @@ obj_aout_weak (ignore)
demand_empty_rest_of_line ();
}
-/* Handle .type. On NetBSD, this is used to set the n_other field,
+/* Handle .type. On {Net,Open}BSD, this is used to set the n_other field,
which is then apparently used when doing dynamic linking. Older
versions ogas ignored the .type pseudo-op, so we also ignore it if
we can't parse it. */
@@ -477,8 +477,8 @@ obj_crawl_symbol_chain (headers)
* symbols with no name (stabd's?)
* symbols with debug info in their N_TYPE
- * symbols marked "forceout" (to force out local `L' symbols in NetBSD
- PIC code)
+ * symbols marked "forceout" (to force out local `L' symbols in Net-
+ or OpenBSD PIC code)
Symbols that don't are:
* symbols that are registers
@@ -497,11 +497,11 @@ obj_crawl_symbol_chain (headers)
|| S_IS_EXTERNAL (symbolP)
|| (S_GET_NAME (symbolP)[0] != '\001'
&& (flag_keep_locals || !S_LOCAL_NAME (symbolP))
-#ifdef TE_NetBSD
+#if defined(TE_NetBSD) || defined(TE_OpenBSD)
|| (flag_pic && symbolP->sy_forceout)
#endif
))
-#ifdef TE_NetBSD
+#if defined(TE_NetBSD) || defined(TE_OpenBSD)
&& (!flag_pic || symbolP != GOT_symbol || got_referenced != 0)
#endif
)
@@ -523,7 +523,7 @@ obj_crawl_symbol_chain (headers)
else
{
if (S_IS_EXTERNAL (symbolP) || !S_IS_DEFINED (symbolP)
-#ifdef TE_NetBSD
+#if defined(TE_NetBSD) || TE_OpenBSD)
&& (!flag_pic || symbolP != GOT_symbol || got_referenced != 0)
#endif
)
diff --git a/gnu/usr.bin/binutils/gas/config/tc-i386.h b/gnu/usr.bin/binutils/gas/config/tc-i386.h
index 9f9cd6d2f9f..b347bc1ce1d 100644
--- a/gnu/usr.bin/binutils/gas/config/tc-i386.h
+++ b/gnu/usr.bin/binutils/gas/config/tc-i386.h
@@ -62,7 +62,7 @@
#define TARGET_BYTES_BIG_ENDIAN 0
#ifdef OBJ_AOUT
-#ifdef TE_NetBSD
+#if defined(TE_NetBSD) || defined(TE_OpenBSD)
#define TARGET_FORMAT "a.out-i386-netbsd"
#endif
#ifdef TE_386BSD
diff --git a/gnu/usr.bin/binutils/gas/config/tc-m68k.h b/gnu/usr.bin/binutils/gas/config/tc-m68k.h
index 5ae82056137..e9c03874633 100644
--- a/gnu/usr.bin/binutils/gas/config/tc-m68k.h
+++ b/gnu/usr.bin/binutils/gas/config/tc-m68k.h
@@ -27,7 +27,7 @@
#ifdef TE_SUN3
#define TARGET_FORMAT "a.out-sunos-big"
#endif
-#ifdef TE_NetBSD
+#if defined(TE_NetBSD) || defined(TE_OpenBSD)
#define TARGET_FORMAT "a.out-m68k-netbsd"
#endif
#ifdef TE_LINUX
diff --git a/gnu/usr.bin/binutils/gas/config/tc-sparc.h b/gnu/usr.bin/binutils/gas/config/tc-sparc.h
index 33574d88db8..356747b3480 100644
--- a/gnu/usr.bin/binutils/gas/config/tc-sparc.h
+++ b/gnu/usr.bin/binutils/gas/config/tc-sparc.h
@@ -28,7 +28,7 @@
#define TARGET_BYTES_BIG_ENDIAN 1
#ifdef OBJ_AOUT
-#ifdef TE_NetBSD
+#if defined(TE_NetBSD) || defined(TE_OpenBSD)
#define TARGET_FORMAT "a.out-sparc-netbsd"
#else
#ifdef TE_SPARCAOUT
diff --git a/gnu/usr.bin/binutils/gas/config/te-obsd.h b/gnu/usr.bin/binutils/gas/config/te-obsd.h
new file mode 100644
index 00000000000..04205ecfd3e
--- /dev/null
+++ b/gnu/usr.bin/binutils/gas/config/te-obsd.h
@@ -0,0 +1,25 @@
+/* te-obsd.h -- OpenBSD target environment declarations.
+ Copyright (C) 1996 Free Software Foundation, Inc.
+
+ This file is part of GAS, the GNU Assembler.
+
+ GAS is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2, or (at your option)
+ any later version.
+
+ GAS is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with GAS; see the file COPYING. If not, write to
+ the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+#define TE_OpenBSD 1
+
+/* We want [0-9][bf] style local temporary labels. */
+#define LOCAL_LABELS_FB 1
+
+#include "obj-format.h"
diff --git a/gnu/usr.bin/binutils/gas/config/te-obsd532.h b/gnu/usr.bin/binutils/gas/config/te-obsd532.h
new file mode 100644
index 00000000000..e85134176ae
--- /dev/null
+++ b/gnu/usr.bin/binutils/gas/config/te-obsd532.h
@@ -0,0 +1,21 @@
+/*
+ * This file is te-obsd532.h
+ *
+ * Written by Ian Dall <idall@eleceng.adelaide.edu.au>
+ *
+ * 19-Jun-94
+ *
+ */
+
+#define TARGET_FORMAT "a.out-ns32k-netbsd"
+
+#define LOCAL_LABELS_FB 1
+
+#include "obj-format.h"
+
+/* Maybe these should be more like TC_NS32532 and TC_NS32381 in case
+ * of conflicts. NS32381 is used in opcode/ns32k.h and that is also
+ * used by GDB. Need to check.
+ */
+#define NS32532
+#define NS32381