From 4b2240c2a9f9287fea7f711a7f27c02f51926072 Mon Sep 17 00:00:00 2001 From: Martin Schwidefsky Date: Tue, 24 Apr 2007 14:49:47 +0000 Subject: [PATCH] 2007-04-24 Andreas Krebbel * opcodes/s390-opc.c (MASK_SSF_RRDRD): Fourth nybble belongs to the opcode. * opcodes/s390-opc.txt (pfpo, ectg, csst): New z9-ec instructions added. 2007-04-24 Andreas Krebbel * gas/s390/zarch-z9-ec.d: Add pfpo, ectg and csst. * gas/s390/zarch-z9-ec.s: Likewise. --- gas/testsuite/ChangeLog | 5 +++++ gas/testsuite/gas/s390/zarch-z9-ec.d | 5 +++++ gas/testsuite/gas/s390/zarch-z9-ec.s | 7 +++++++ opcodes/ChangeLog | 5 +++++ opcodes/s390-opc.c | 2 +- opcodes/s390-opc.txt | 3 +++ 6 files changed, 26 insertions(+), 1 deletion(-) diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog index 3eaea078df..4253c44af5 100644 --- a/gas/testsuite/ChangeLog +++ b/gas/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2007-04-24 Andreas Krebbel + + * gas/s390/zarch-z9-ec.d: Add pfpo, ectg and csst. + * gas/s390/zarch-z9-ec.s: Likewise. + 2007-04-23 Nathan Sidwell * gas/m68k/br-isaa.s: New. diff --git a/gas/testsuite/gas/s390/zarch-z9-ec.d b/gas/testsuite/gas/s390/zarch-z9-ec.d index f2bb0bfd00..142ec0db75 100644 --- a/gas/testsuite/gas/s390/zarch-z9-ec.d +++ b/gas/testsuite/gas/s390/zarch-z9-ec.d @@ -69,3 +69,8 @@ Disassembly of section .text: .*: ed 61 20 03 00 51 [ ]*tget %f6,3\(%r1,%r2\) .*: ed 61 20 03 00 55 [ ]*tgdt %f6,3\(%r1,%r2\) .*: ed 61 20 03 00 59 [ ]*tgxt %f6,3\(%r1,%r2\) +.*: 01 0a [ ]*pfpo +.*: c8 31 10 0a 20 14 [ ]*ectg 10\(%r1\),20\(%r2\),%r3 +.*: c8 32 10 0a 20 14 [ ]*csst 10\(%r1\),20\(%r2\),%r3 +# Expect 2 bytes of padding. +.*: 07 07 [ ]*bcr 0,%r7 diff --git a/gas/testsuite/gas/s390/zarch-z9-ec.s b/gas/testsuite/gas/s390/zarch-z9-ec.s index 15435117e5..9139b7543a 100644 --- a/gas/testsuite/gas/s390/zarch-z9-ec.s +++ b/gas/testsuite/gas/s390/zarch-z9-ec.s @@ -63,3 +63,10 @@ foo: tget %f6,3(%r1,%r2) tgdt %f6,3(%r1,%r2) tgxt %f6,3(%r1,%r2) + pfpo + ectg 10(%r1),20(%r2),%r3 + csst 10(%r1),20(%r2),%r3 + /* The following .data section is 4 byte aligned. + So we get 2 additional bytes of 07 07 wherefor + we have to provide an instruction. */ + bcr 0,%r7 diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog index e935f460fb..7a3f514187 100644 --- a/opcodes/ChangeLog +++ b/opcodes/ChangeLog @@ -1,3 +1,8 @@ +2007-04-24 Andreas Krebbel + + * opcodes/s390-opc.c (MASK_SSF_RRDRD): Fourth nybble belongs to the + opcode. + * opcodes/s390-opc.txt (pfpo, ectg, csst): New z9-ec instructions added. 2007-04-24 Nick Clifton * arm-dis.c (print_insn): Initialise type. diff --git a/opcodes/s390-opc.c b/opcodes/s390-opc.c index 8b0b72f222..a443fcfd05 100644 --- a/opcodes/s390-opc.c +++ b/opcodes/s390-opc.c @@ -345,7 +345,7 @@ const struct s390_operand s390_operands[] = #define MASK_SS_RRRDRD3 { 0xff, 0x00, 0x00, 0x00, 0x00, 0x00 } #define MASK_S_00 { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00 } #define MASK_S_RD { 0xff, 0xff, 0x00, 0x00, 0x00, 0x00 } -#define MASK_SSF_RRDRD { 0xff, 0x00, 0x00, 0x00, 0x00, 0x00 } +#define MASK_SSF_RRDRD { 0xff, 0x0f, 0x00, 0x00, 0x00, 0x00 } /* The opcode formats table (blueprints for .insn pseudo mnemonic). */ diff --git a/opcodes/s390-opc.txt b/opcodes/s390-opc.txt index 239b134b14..865e264cf9 100644 --- a/opcodes/s390-opc.txt +++ b/opcodes/s390-opc.txt @@ -926,3 +926,6 @@ ed0000000058 tcxt RXE_FRRD "test data class extended dfp" z9-ec zarch ed0000000051 tget RXE_FRRD "test data group short dfp" z9-ec zarch ed0000000055 tgdt RXE_FRRD "test data group long dfp" z9-ec zarch ed0000000059 tgxt RXE_FRRD "test data group extended dfp" z9-ec zarch +010a pfpo E "perform floating point operation" z9-ec zarch +c801 ectg SSF_RRDRD "extract cpu time" z9-ec zarch +c802 csst SSF_RRDRD "compare and swap and store" z9-ec zarch -- 2.11.0