about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog8
-rw-r--r--elf/elf.h2
-rw-r--r--sysdeps/s390/dl-machine.h4
3 files changed, 12 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 8efc5888f0..283f33ebcb 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2001-03-09  Andreas Jaeger  <aj@suse.de>
+
+	* sysdeps/s390/dl-machine.h (elf_machine_matches_host): Handle
+	both new and old EM_S390 values.
+	(EM_S390_OLD): New constant.
+
+	* elf/elf.h (EM_S390): Use official value.
+
 2001-03-09  Ulrich Drepper  <drepper@redhat.com>
 
 	* conform/data/sys/socket.h-data: Allow SO* symbols.
diff --git a/elf/elf.h b/elf/elf.h
index 504681b3fb..717afaa6bf 100644
--- a/elf/elf.h
+++ b/elf/elf.h
@@ -177,6 +177,7 @@ typedef struct
 #define EM_960		19		/* Intel 80960 */
 #define EM_PPC		20		/* PowerPC */
 #define EM_PPC64	21		/* PowerPC 64-bit */
+#define EM_S390		22		/* IBM S390 */
 
 #define EM_V800		36		/* NEC V800 series */
 #define EM_FR20		37		/* Fujitsu FR20 */
@@ -223,7 +224,6 @@ typedef struct
    chances of collision with official or non-GNU unofficial values.  */
 
 #define EM_ALPHA	0x9026
-#define EM_S390         0xA390		/* IBM S390 */
 
 /* Legal values for e_version (version).  */
 
diff --git a/sysdeps/s390/dl-machine.h b/sysdeps/s390/dl-machine.h
index fbbecf0245..16892cd3bf 100644
--- a/sysdeps/s390/dl-machine.h
+++ b/sysdeps/s390/dl-machine.h
@@ -28,12 +28,14 @@
 #include <string.h>
 #include <link.h>
 
+/* This is an older, now obsolete value.  */
+#define EM_S390_OLD	0xA390
 
 /* Return nonzero iff ELF header is compatible with the running host.  */
 static inline int
 elf_machine_matches_host (const Elf32_Ehdr *ehdr)
 {
-  return ehdr->e_machine == EM_S390;
+  return (ehdr->e_machine == EM_S390 || ehdr->e_machine == EM_S390_OLD);
 }