File binutils-add-z15-name.diff of Package binutils.13942

commit 1f656f70098a9acda9bdf4c047cb86fedc007206
Author: Andreas Krebbel <>
Date:   Tue Oct 8 11:23:57 2019 +0200

    S/390: Add support for z15 as CPU name.
    So far z15 was identified as arch13. After the machine has been
    announced we can now add the real name.
    2019-12-17  Andreas Krebbel  <>
    	Backport from mainline
    	2019-10-08  Andreas Krebbel  <>
    	* config/tc-s390.c (s390_parse_cpu): Add z15 as alternate CPU
    	* doc/as.texi: Add z15 to CPU string list.
    	* doc/c-s390.texi: Likewise.
    2019-12-17  Andreas Krebbel  <>
    	Backport from mainline
    	2019-10-08  Andreas Krebbel  <>
    	* s390-mkopc.c (main): Enable z15 as CPU string in the opcode

diff --git a/gas/config/tc-s390.c b/gas/config/tc-s390.c
index f74497a..1395d20 100644
--- a/gas/config/tc-s390.c
+++ b/gas/config/tc-s390.c
@@ -291,7 +291,7 @@ s390_parse_cpu (const char *         arg,
       S390_INSTR_FLAG_HTM | S390_INSTR_FLAG_VX },
     { STRING_COMMA_LEN ("z14"), STRING_COMMA_LEN ("arch12"),
       S390_INSTR_FLAG_HTM | S390_INSTR_FLAG_VX },
-    { STRING_COMMA_LEN (""), STRING_COMMA_LEN ("arch13"),
+    { STRING_COMMA_LEN ("z15"), STRING_COMMA_LEN ("arch13"),
   static struct
diff --git a/gas/doc/as.texi b/gas/doc/as.texi
index e0c6212..4c6db35 100644
--- a/gas/doc/as.texi
+++ b/gas/doc/as.texi
@@ -1816,7 +1816,8 @@ Specify which s390 processor variant is the target, @samp{g5} (or
 @samp{arch3}), @samp{g6}, @samp{z900} (or @samp{arch5}), @samp{z990} (or
 @samp{arch6}), @samp{z9-109}, @samp{z9-ec} (or @samp{arch7}), @samp{z10} (or
 @samp{arch8}), @samp{z196} (or @samp{arch9}), @samp{zEC12} (or @samp{arch10}),
-@samp{z13} (or @samp{arch11}), or @samp{z14} (or @samp{arch12}).
+@samp{z13} (or @samp{arch11}), @samp{z14} (or @samp{arch12}), or @samp{z15}
+(or @samp{arch13}).
 @item -mregnames
 @itemx -mno-regnames
 Allow or disallow symbolic names for registers.
diff --git a/gas/doc/c-s390.texi b/gas/doc/c-s390.texi
index 27fa317..8cb6d6c 100644
--- a/gas/doc/c-s390.texi
+++ b/gas/doc/c-s390.texi
@@ -18,7 +18,7 @@ and eleven chip levels. The architecture modes are the Enterprise System
 Architecture (ESA) and the newer z/Architecture mode. The chip levels
 are g5 (or arch3), g6, z900 (or arch5), z990 (or arch6), z9-109, z9-ec
 (or arch7), z10 (or arch8), z196 (or arch9), zEC12 (or arch10), z13
-(or arch11), z14 (or arch12), and arch13.
+(or arch11), z14 (or arch12), and z15 (or arch13).
 * s390 Options::                Command-line Options.
@@ -71,7 +71,7 @@ are recognized:
 @code{zEC12} (or @code{arch10}),
 @code{z13} (or @code{arch11}),
 @code{z14} (or @code{arch12}), and
+@code{z15} (or @code{arch13}).
 Assembling an instruction that is not supported on the target
 processor results in an error message.
diff --git a/opcodes/s390-mkopc.c b/opcodes/s390-mkopc.c
index 0d07678..fe21ea1 100644
--- a/opcodes/s390-mkopc.c
+++ b/opcodes/s390-mkopc.c
@@ -377,7 +377,8 @@ main (void)
       else if (strcmp (cpu_string, "z14") == 0
 	       || strcmp (cpu_string, "arch12") == 0)
 	min_cpu = S390_OPCODE_ARCH12;
-      else if (strcmp (cpu_string, "arch13") == 0)
+      else if (strcmp (cpu_string, "z15") == 0
+	       || strcmp (cpu_string, "arch13") == 0)
 	min_cpu = S390_OPCODE_ARCH13;
       else {
 	fprintf (stderr, "Couldn't parse cpu string %s\n", cpu_string);