|
|
4a80f0 |
From FEDORA_PATCHES Mon Sep 17 00:00:00 2001
|
|
|
4a80f0 |
From: Andreas Krebbel <krebbel@linux.ibm.com>
|
|
|
4a80f0 |
Date: Mon, 15 Feb 2021 14:20:00 +0100
|
|
|
4a80f0 |
Subject: gdb-rhbz2012819-ibmz-update-3of5.patch
|
|
|
4a80f0 |
|
|
|
4a80f0 |
;; IBM Z: Implement instruction set extensions
|
|
|
4a80f0 |
;; (Andreas Krebbel, RHBZ 2012819)
|
|
|
4a80f0 |
|
|
|
4a80f0 |
opcodes/
|
|
|
4a80f0 |
|
|
|
4a80f0 |
* s390-mkopc.c (main): Accept arch14 as cpu string.
|
|
|
4a80f0 |
* s390-opc.txt: Add new arch14 instructions.
|
|
|
4a80f0 |
|
|
|
4a80f0 |
include/
|
|
|
4a80f0 |
|
|
|
4a80f0 |
* opcode/s390.h (enum s390_opcode_cpu_val): Add
|
|
|
4a80f0 |
S390_OPCODE_ARCH14.
|
|
|
4a80f0 |
|
|
|
4a80f0 |
gas/
|
|
|
4a80f0 |
|
|
|
4a80f0 |
* config/tc-s390.c (s390_parse_cpu): New entry for arch14.
|
|
|
4a80f0 |
* doc/c-s390.texi: Document arch14 march option.
|
|
|
4a80f0 |
* testsuite/gas/s390/s390.exp: Run the arch14 related tests.
|
|
|
4a80f0 |
* testsuite/gas/s390/zarch-arch14.d: New test.
|
|
|
4a80f0 |
* testsuite/gas/s390/zarch-arch14.s: New test.
|
|
|
4a80f0 |
|
|
|
4a80f0 |
diff --git a/include/opcode/s390.h b/include/opcode/s390.h
|
|
|
4a80f0 |
--- a/include/opcode/s390.h
|
|
|
4a80f0 |
+++ b/include/opcode/s390.h
|
|
|
4a80f0 |
@@ -44,6 +44,7 @@ enum s390_opcode_cpu_val
|
|
|
4a80f0 |
S390_OPCODE_Z13,
|
|
|
4a80f0 |
S390_OPCODE_ARCH12,
|
|
|
4a80f0 |
S390_OPCODE_ARCH13,
|
|
|
4a80f0 |
+ S390_OPCODE_ARCH14,
|
|
|
4a80f0 |
S390_OPCODE_MAXCPU
|
|
|
4a80f0 |
};
|
|
|
4a80f0 |
|
|
|
4a80f0 |
diff --git a/opcodes/s390-mkopc.c b/opcodes/s390-mkopc.c
|
|
|
4a80f0 |
--- a/opcodes/s390-mkopc.c
|
|
|
4a80f0 |
+++ b/opcodes/s390-mkopc.c
|
|
|
4a80f0 |
@@ -381,6 +381,8 @@ main (void)
|
|
|
4a80f0 |
else if (strcmp (cpu_string, "z15") == 0
|
|
|
4a80f0 |
|| strcmp (cpu_string, "arch13") == 0)
|
|
|
4a80f0 |
min_cpu = S390_OPCODE_ARCH13;
|
|
|
4a80f0 |
+ else if (strcmp (cpu_string, "arch14") == 0)
|
|
|
4a80f0 |
+ min_cpu = S390_OPCODE_ARCH14;
|
|
|
4a80f0 |
else {
|
|
|
4a80f0 |
fprintf (stderr, "Couldn't parse cpu string %s\n", cpu_string);
|
|
|
4a80f0 |
exit (1);
|
|
|
4a80f0 |
diff --git a/opcodes/s390-opc.txt b/opcodes/s390-opc.txt
|
|
|
4a80f0 |
--- a/opcodes/s390-opc.txt
|
|
|
4a80f0 |
+++ b/opcodes/s390-opc.txt
|
|
|
4a80f0 |
@@ -2016,3 +2016,31 @@ e60000000052 vcvbg VRR_RV0UU "vector convert to binary 64 bit" arch13 zarch optp
|
|
|
4a80f0 |
# Message Security Assist Extension 9
|
|
|
4a80f0 |
|
|
|
4a80f0 |
b93a kdsa RRE_RR "compute digital signature authentication" arch13 zarch
|
|
|
4a80f0 |
+
|
|
|
4a80f0 |
+
|
|
|
4a80f0 |
+# arch14 instructions
|
|
|
4a80f0 |
+
|
|
|
4a80f0 |
+e60000000074 vschp VRR_VVV0U0U " " arch14 zarch
|
|
|
4a80f0 |
+e60000002074 vschsp VRR_VVV0U0 " " arch14 zarch
|
|
|
4a80f0 |
+e60000003074 vschdp VRR_VVV0U0 " " arch14 zarch
|
|
|
4a80f0 |
+e60000004074 vschxp VRR_VVV0U0 " " arch14 zarch
|
|
|
4a80f0 |
+e6000000007c vscshp VRR_VVV " " arch14 zarch
|
|
|
4a80f0 |
+e6000000007d vcsph VRR_VVV0U0 " " arch14 zarch
|
|
|
4a80f0 |
+e60000000051 vclzdp VRR_VV0U2 " " arch14 zarch
|
|
|
4a80f0 |
+e60000000070 vpkzr VRI_VVV0UU2 " " arch14 zarch
|
|
|
4a80f0 |
+e60000000072 vsrpr VRI_VVV0UU2 " " arch14 zarch
|
|
|
4a80f0 |
+e60000000054 vupkzh VRR_VV0U2 " " arch14 zarch
|
|
|
4a80f0 |
+e6000000005c vupkzl VRR_VV0U2 " " arch14 zarch
|
|
|
4a80f0 |
+
|
|
|
4a80f0 |
+b93b nnpa RRE_00 " " arch14 zarch
|
|
|
4a80f0 |
+e60000000056 vclfnh VRR_VV0UU2 " " arch14 zarch
|
|
|
4a80f0 |
+e6000000005e vclfnl VRR_VV0UU2 " " arch14 zarch
|
|
|
4a80f0 |
+e60000000075 vcrnf VRR_VVV0UU " " arch14 zarch
|
|
|
4a80f0 |
+e6000000005d vcfn VRR_VV0UU2 " " arch14 zarch
|
|
|
4a80f0 |
+e60000000055 vcnf VRR_VV0UU2 " " arch14 zarch
|
|
|
4a80f0 |
+
|
|
|
4a80f0 |
+b98B rdp RRF_RURR2 " " arch14 zarch optparm
|
|
|
4a80f0 |
+
|
|
|
4a80f0 |
+eb0000000071 lpswey SIY_URD " " arch14 zarch
|
|
|
4a80f0 |
+b200 lbear S_RD " " arch14 zarch
|
|
|
4a80f0 |
+b201 stbear S_RD " " arch14 zarch
|