* config/s390/s390x.mt (GDB_MULTI_ARCH): Change to
GDB_MULTI_ARCH_PARTIAL.
* config/s390/s390.mt (GDB_MULTI_ARCH): Ditto.
* config/s390/tm-linux.h (SKIP_TRAMPOLINE_CODE): Undefine
definition from config/tm-linux.h. Allow gdbarch to override it.
* config/tm-sysv4.h: Revert. Handled by tm-linux.h.
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 86300ac..e34ba30 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,13 @@
+2001-10-13 Andrew Cagney <ac131313@redhat.com>
+
+ * config/s390/s390x.mt (GDB_MULTI_ARCH): Change to
+ GDB_MULTI_ARCH_PARTIAL.
+ * config/s390/s390.mt (GDB_MULTI_ARCH): Ditto.
+
+ * config/s390/tm-linux.h (SKIP_TRAMPOLINE_CODE): Undefine
+ definition from config/tm-linux.h. Allow gdbarch to override it.
+ * config/tm-sysv4.h: Revert. Handled by tm-linux.h.
+
2001-09-26 Andrew Cagney <ac131313@redhat.com>
From 2001-07-09 D.J. Barrow <djbarrow@de.ibm.com>:
diff --git a/gdb/config/s390/s390.mt b/gdb/config/s390/s390.mt
index d1dfe9f..87a5ba3 100644
--- a/gdb/config/s390/s390.mt
+++ b/gdb/config/s390/s390.mt
@@ -3,5 +3,5 @@
TDEPFILES=s390-tdep.o solib.o
# Post 5.0 tdep-files
TDEPFILES+=solib-svr4.o solib-legacy.o
-GDB_MULTI_ARCH=2
+GDB_MULTI_ARCH=GDB_MULTI_ARCH_PARTIAL
GDBSERVER_DEPFILES= low-linux.o s390-tdep.o s390-nat.o
diff --git a/gdb/config/s390/s390x.mt b/gdb/config/s390/s390x.mt
index 632fa52..310021d 100644
--- a/gdb/config/s390/s390x.mt
+++ b/gdb/config/s390/s390x.mt
@@ -3,7 +3,7 @@
TDEPFILES=s390-tdep.o solib.o
# Post 5.0 tdep-files
TDEPFILES+=solib-svr4.o solib-legacy.o
-GDB_MULTI_ARCH=2
+GDB_MULTI_ARCH=GDB_MULTI_ARCH_PARTIAL
GDBSERVER_DEPFILES= low-linux.o s390-tdep.o s390-nat.o
# needed for gdbserver.
MT_CFLAGS= -DCONFIG_ARCH_S390X
diff --git a/gdb/config/s390/tm-linux.h b/gdb/config/s390/tm-linux.h
index bb1e587..e70b117 100644
--- a/gdb/config/s390/tm-linux.h
+++ b/gdb/config/s390/tm-linux.h
@@ -29,6 +29,12 @@
#define TARGET_ELF64 (gdbarch_tdep (current_gdbarch)->intreg_size==8)
#include "config/tm-linux.h"
+
+/* Zap several macros defined in the above header so that multi-arch
+ can safely re-define them. The ``correct fix'' involves
+ eliminating either the above include or even this file. */
+#undef SKIP_TRAMPOLINE_CODE
+
#include "s390/tm-s390.h"
diff --git a/gdb/config/tm-sysv4.h b/gdb/config/tm-sysv4.h
index 1ed6bc3..35b95eb 100644
--- a/gdb/config/tm-sysv4.h
+++ b/gdb/config/tm-sysv4.h
@@ -33,9 +33,9 @@
/* If PC is in a shared library trampoline code, return the PC
where the function itself actually starts. If not, return 0. */
-#if (GDB_MULTI_ARCH <= GDB_MULTI_ARCH_PARTIAL)
+
#define SKIP_TRAMPOLINE_CODE(pc) find_solib_trampoline_target (pc)
-#endif
+
/* It is unknown which, if any, SVR4 assemblers do not accept dollar signs
in identifiers. The default in G++ is to use dots instead, for all SVR4
systems, so we make that our default also. FIXME: There should be some