s390: Add support for z17 as CPU name
Checks
Commit Message
So far IBM z17 was identified as arch15. Add the real name, as it has
been announced. [1]
[1]: IBM z17 announcement letter, AD25-0015,
https://www.ibm.com/docs/en/announcements/z17-makes-more-possible
gas/
* config/tc-s390.c (s390_parse_cpu): Add z17 as alternate CPU
name for arch15.
* doc/c-s390.texi: Likewise.
* doc/as.texi: Likewise.
opcodes/
* s390-mkopc.c (main): Add z17 as alternate CPU name for arch15.
Signed-off-by: Jens Remus <jremus@linux.ibm.com>
---
gas/config/tc-s390.c | 2 +-
gas/doc/as.texi | 3 ++-
gas/doc/c-s390.texi | 5 +++--
opcodes/s390-mkopc.c | 3 ++-
4 files changed, 8 insertions(+), 5 deletions(-)
Comments
On 4/8/25 5:00 PM, Jens Remus wrote:
> So far IBM z17 was identified as arch15. Add the real name, as it has
> been announced. [1]
>
> [1]: IBM z17 announcement letter, AD25-0015,
> https://www.ibm.com/docs/en/announcements/z17-makes-more-possible
>
> gas/
> * config/tc-s390.c (s390_parse_cpu): Add z17 as alternate CPU
> name for arch15.
> * doc/c-s390.texi: Likewise.
> * doc/as.texi: Likewise.
>
> opcodes/
> * s390-mkopc.c (main): Add z17 as alternate CPU name for arch15.
>
> Signed-off-by: Jens Remus <jremus@linux.ibm.com>
Ok. Thanks!
Andreas
> ---
> gas/config/tc-s390.c | 2 +-
> gas/doc/as.texi | 3 ++-
> gas/doc/c-s390.texi | 5 +++--
> opcodes/s390-mkopc.c | 3 ++-
> 4 files changed, 8 insertions(+), 5 deletions(-)
>
> diff --git a/gas/config/tc-s390.c b/gas/config/tc-s390.c
> index a0cfeead2535..b84613479725 100644
> --- a/gas/config/tc-s390.c
> +++ b/gas/config/tc-s390.c
> @@ -343,7 +343,7 @@ s390_parse_cpu (const char *arg,
> S390_INSTR_FLAG_HTM | S390_INSTR_FLAG_VX },
> { STRING_COMMA_LEN ("z16"), STRING_COMMA_LEN ("arch14"),
> S390_INSTR_FLAG_HTM | S390_INSTR_FLAG_VX },
> - { STRING_COMMA_LEN (""), STRING_COMMA_LEN ("arch15"),
> + { STRING_COMMA_LEN ("z17"), STRING_COMMA_LEN ("arch15"),
> S390_INSTR_FLAG_HTM | S390_INSTR_FLAG_VX }
> };
> static struct
> diff --git a/gas/doc/as.texi b/gas/doc/as.texi
> index d68a9bc7c733..40d45f75d187 100644
> --- a/gas/doc/as.texi
> +++ b/gas/doc/as.texi
> @@ -1944,7 +1944,8 @@ Specify which s390 processor variant is the target, @samp{g5} (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}), @samp{z14} (or @samp{arch12}), @samp{z15}
> -(or @samp{arch13}), @samp{z16} (or @samp{arch14}), or @samp{arch15}.
> +(or @samp{arch13}), @samp{z16} (or @samp{arch14}), or @samp{z17} (or
> +@samp{arch15}).
> @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 f1a5483c1cae..549922291890 100644
> --- a/gas/doc/c-s390.texi
> +++ b/gas/doc/c-s390.texi
> @@ -18,7 +18,8 @@ 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), z15 (or arch13), z16 (or arch14), or arch15.
> +(or arch11), z14 (or arch12), z15 (or arch13), z16 (or arch14), or
> +z17 (arch15).
>
> @menu
> * s390 Options:: Command-line Options.
> @@ -73,7 +74,7 @@ are recognized:
> @code{z14} (or @code{arch12}),
> @code{z15} (or @code{arch13}),
> @code{z16} (or @code{arch14}), and
> -@code{arch15}.
> +@code{z17} (or @code{arch15}).
>
> 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 87d93bf16751..907f081862e3 100644
> --- a/opcodes/s390-mkopc.c
> +++ b/opcodes/s390-mkopc.c
> @@ -443,7 +443,8 @@ main (void)
> else if (strcmp (cpu_string, "z16") == 0
> || strcmp (cpu_string, "arch14") == 0)
> min_cpu = S390_OPCODE_ARCH14;
> - else if (strcmp (cpu_string, "arch15") == 0)
> + else if (strcmp (cpu_string, "z17") == 0
> + || strcmp (cpu_string, "arch15") == 0)
> min_cpu = S390_OPCODE_ARCH15;
> else {
> print_error ("Mnemonic \"%s\": Couldn't parse CPU string: %s\n",
On 08.04.2025 20:00, Andreas Krebbel wrote:
> On 4/8/25 5:00 PM, Jens Remus wrote:
>> So far IBM z17 was identified as arch15. Add the real name, as it has
>> been announced. [1]
>>
>> [1]: IBM z17 announcement letter, AD25-0015,
>> https://www.ibm.com/docs/en/announcements/z17-makes-more-possible
>>
>> gas/
>> * config/tc-s390.c (s390_parse_cpu): Add z17 as alternate CPU
>> name for arch15.
>> * doc/c-s390.texi: Likewise.
>> * doc/as.texi: Likewise.
>>
>> opcodes/
>> * s390-mkopc.c (main): Add z17 as alternate CPU name for arch15.
>>
>> Signed-off-by: Jens Remus <jremus@linux.ibm.com>
>
> Ok. Thanks!
Committed to mainline as 981fe5fd80fa ("s390: Add support for z17 as CPU
name").
Regards,
Jens
On 09.04.2025 09:03, Jens Remus wrote:
> On 08.04.2025 20:00, Andreas Krebbel wrote:
>> On 4/8/25 5:00 PM, Jens Remus wrote:
>>> So far IBM z17 was identified as arch15. Add the real name, as it has
>>> been announced. [1]
>>>
>>> [1]: IBM z17 announcement letter, AD25-0015,
>>> https://www.ibm.com/docs/en/announcements/z17-makes-more-possible
>>>
>>> gas/
>>> * config/tc-s390.c (s390_parse_cpu): Add z17 as alternate CPU
>>> name for arch15.
>>> * doc/c-s390.texi: Likewise.
>>> * doc/as.texi: Likewise.
>>>
>>> opcodes/
>>> * s390-mkopc.c (main): Add z17 as alternate CPU name for arch15.
>>>
>>> Signed-off-by: Jens Remus <jremus@linux.ibm.com>
>>
>> Ok. Thanks!
>
> Committed to mainline as 981fe5fd80fa ("s390: Add support for z17 as CPU
> name").
With off-list approval from Andreas: Backported to Binutils 2.41, 2.42,
and 2.43 branches, to which we already backported the related s390
arch15 support, as well as the 2.44 branch, which also already has s390
arch15 support.
Regards,
Jens
@@ -343,7 +343,7 @@ s390_parse_cpu (const char *arg,
S390_INSTR_FLAG_HTM | S390_INSTR_FLAG_VX },
{ STRING_COMMA_LEN ("z16"), STRING_COMMA_LEN ("arch14"),
S390_INSTR_FLAG_HTM | S390_INSTR_FLAG_VX },
- { STRING_COMMA_LEN (""), STRING_COMMA_LEN ("arch15"),
+ { STRING_COMMA_LEN ("z17"), STRING_COMMA_LEN ("arch15"),
S390_INSTR_FLAG_HTM | S390_INSTR_FLAG_VX }
};
static struct
@@ -1944,7 +1944,8 @@ Specify which s390 processor variant is the target, @samp{g5} (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}), @samp{z14} (or @samp{arch12}), @samp{z15}
-(or @samp{arch13}), @samp{z16} (or @samp{arch14}), or @samp{arch15}.
+(or @samp{arch13}), @samp{z16} (or @samp{arch14}), or @samp{z17} (or
+@samp{arch15}).
@item -mregnames
@itemx -mno-regnames
Allow or disallow symbolic names for registers.
@@ -18,7 +18,8 @@ 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), z15 (or arch13), z16 (or arch14), or arch15.
+(or arch11), z14 (or arch12), z15 (or arch13), z16 (or arch14), or
+z17 (arch15).
@menu
* s390 Options:: Command-line Options.
@@ -73,7 +74,7 @@ are recognized:
@code{z14} (or @code{arch12}),
@code{z15} (or @code{arch13}),
@code{z16} (or @code{arch14}), and
-@code{arch15}.
+@code{z17} (or @code{arch15}).
Assembling an instruction that is not supported on the target
processor results in an error message.
@@ -443,7 +443,8 @@ main (void)
else if (strcmp (cpu_string, "z16") == 0
|| strcmp (cpu_string, "arch14") == 0)
min_cpu = S390_OPCODE_ARCH14;
- else if (strcmp (cpu_string, "arch15") == 0)
+ else if (strcmp (cpu_string, "z17") == 0
+ || strcmp (cpu_string, "arch15") == 0)
min_cpu = S390_OPCODE_ARCH15;
else {
print_error ("Mnemonic \"%s\": Couldn't parse CPU string: %s\n",