[PATCH] s390: Add store CPU counter multiple instruction
Andreas Krebbel
krebbel@linux.ibm.com
Tue Jun 23 07:57:05 GMT 2026
On 4/24/26 10:40 AM, Jens Remus wrote:
> IBM z13 introduced the "store CPU counter multiple" (stcctm) instruction
> with the Store-CPU-Counter-Multiple Facility, which is part of the
> CPU-Measurement Facilities (CPUMF) [1].
>
> While at it add a comment to the s390 opcode table for the existing
> CPUMF instructions.
>
> [1]: The Load-Program-Parameter and the CPU-Measurement Facilities,
> SA23-2260-08,
> https://www.ibm.com/docs/en/module_1678991624569/pdf/SA23-2260-08.pdf
>
> opcodes/
> * s390-opc.txt (stcctm): Add store CPU counter multiple
> instruction. Add comment on CPUMF instructions.
>
> gas/testsuite/
> * gas/s390/zarch-z13.d (stcctm): Add test for store CPU counter
> multiple instruction.
> * gas/s390/zarch-z13.s (stcctm): Likewise.
>
> Signed-off-by: Jens Remus <jremus@linux.ibm.com>
Ok, Thanks!
Andreas
> ---
> gas/testsuite/gas/s390/zarch-z13.d | 2 ++
> gas/testsuite/gas/s390/zarch-z13.s | 1 +
> opcodes/s390-opc.txt | 8 ++++++++
> 3 files changed, 11 insertions(+)
>
> diff --git a/gas/testsuite/gas/s390/zarch-z13.d b/gas/testsuite/gas/s390/zarch-z13.d
> index d768e0b9db59..54c42f858f94 100644
> --- a/gas/testsuite/gas/s390/zarch-z13.d
> +++ b/gas/testsuite/gas/s390/zarch-z13.d
> @@ -684,3 +684,5 @@ Disassembly of section .text:
> .*: e7 f6 9f a0 d0 0e [ ]*vst %v15,4000\(%r6,%r9\),13
> .*: e7 f1 6f a0 04 3e [ ]*vstm %v15,%v17,4000\(%r6\)
> .*: e7 f1 6f a0 d4 3e [ ]*vstm %v15,%v17,4000\(%r6\),13
> +.*: eb 13 26 ce 05 17 [ ]*stcctm %r1,3,22222\(%r2\)
> +#?.*: 07 07 [ ]*nopr %r7
> diff --git a/gas/testsuite/gas/s390/zarch-z13.s b/gas/testsuite/gas/s390/zarch-z13.s
> index 8c2fb706e0c0..370aed0830aa 100644
> --- a/gas/testsuite/gas/s390/zarch-z13.s
> +++ b/gas/testsuite/gas/s390/zarch-z13.s
> @@ -678,3 +678,4 @@ foo:
> vst %v15,4000(%r6,%r9),13
> vstm %v15,%v17,4000(%r6)
> vstm %v15,%v17,4000(%r6),13
> + stcctm %r1,3,22222(2)
> diff --git a/opcodes/s390-opc.txt b/opcodes/s390-opc.txt
> index 6511059400b8..d40fa8c70cf4 100644
> --- a/opcodes/s390-opc.txt
> +++ b/opcodes/s390-opc.txt
> @@ -991,6 +991,10 @@ b9a2 ptf RRE_R0 "perform topology function" z10 zarch
> b9af pfmf RRE_RR "perform frame management function" z10 zarch
> b9bf trte RRF_U0RER "translate and test extended" z10 zarch optparm
> b9bd trtre RRF_U0RER "translate and test reverse extended" z10 zarch optparm
> +
> +# CPUMF: CPU-Measurement Counter Facility, CPU-Measurement Sampling Facility,
> +# Load-Program-Parameter Facility
> +
> b2ed ecpga RRE_RR "extract coprocessor-group address" z10 zarch
> b2e4 ecctr RRE_RR "extract cpu counter" z10 zarch
> b2e5 epctr RRE_RR "extract peripheral counter" z10 zarch
> @@ -1713,6 +1717,10 @@ e70000000036 vlm VRS_VVRDU "vector load multiple" z13 zarch optparm,vx
> e7000000000e vst VRX_VRRDU "vector store" z13 zarch optparm,vx
> e7000000003e vstm VRS_VVRDU "vector store multiple" z13 zarch optparm,vx
>
> +# CPUMF: Store-CPU-Counter-Multiple Facility
> +
> +eb0000000017 stcctm RSY_RURD "store cpu counter multiple" z13 zarch
> +
> # arch12 instructions
>
> # Vector Enhancements Facility 1
More information about the Binutils
mailing list