S/390: Add more IBM z13 instructions

opcodes/
2015-03-10  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>

	* s390-opc.c: Add new IBM z13 instructions.
	* s390-opc.txt: Likewise.

gas/testsuite/
2015-03-10  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>

	* gas/s390/zarch-z13.d: Add more z13 instructions.
	* gas/s390/zarch-z13.s: Likewise.
This commit is contained in:
Andreas Krebbel 2015-03-10 12:44:54 +01:00
parent c683726541
commit 6b1d7593a5
6 changed files with 303 additions and 0 deletions

View file

@ -1,3 +1,8 @@
2015-03-10 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
* gas/s390/zarch-z13.d: Add more z13 instructions.
* gas/s390/zarch-z13.s: Likewise.
2015-03-05 Renlin Li <renlin.li@arm.com>
* gas/arm/dis-data.d: Adjust the desired output.

View file

@ -546,3 +546,137 @@ Disassembly of section .text:
.*: e7 f1 ff db c4 4a [ ]*vftci %v15,%v17,4093,12,11
.*: e7 f1 ff d0 34 4a [ ]*vftcidb %v15,%v17,4093
.*: e7 f1 ff d8 34 4a [ ]*wftcidb %v15,%v17,4093
.*: ed fa 6f a0 3c ae [ ]*cdpt %f3,4000\(251,%r6\),12
.*: ed fa 6f a0 1c af [ ]*cxpt %f1,4000\(251,%r6\),12
.*: ed fa 6f a0 3c ac [ ]*cpdt %f3,4000\(251,%r6\),12
.*: ed fa 6f a0 1c ad [ ]*cpxt %f1,4000\(251,%r6\),12
.*: b9 e0 d0 69 [ ]*locfhrnh %r6,%r9
.*: b9 e0 10 69 [ ]*locfhro %r6,%r9
.*: b9 e0 20 69 [ ]*locfhrh %r6,%r9
.*: b9 e0 20 69 [ ]*locfhrh %r6,%r9
.*: b9 e0 30 69 [ ]*locfhrnle %r6,%r9
.*: b9 e0 40 69 [ ]*locfhrl %r6,%r9
.*: b9 e0 40 69 [ ]*locfhrl %r6,%r9
.*: b9 e0 50 69 [ ]*locfhrnhe %r6,%r9
.*: b9 e0 60 69 [ ]*locfhrlh %r6,%r9
.*: b9 e0 70 69 [ ]*locfhrne %r6,%r9
.*: b9 e0 70 69 [ ]*locfhrne %r6,%r9
.*: b9 e0 80 69 [ ]*locfhre %r6,%r9
.*: b9 e0 80 69 [ ]*locfhre %r6,%r9
.*: b9 e0 90 69 [ ]*locfhrnlh %r6,%r9
.*: b9 e0 a0 69 [ ]*locfhrhe %r6,%r9
.*: b9 e0 b0 69 [ ]*locfhrnl %r6,%r9
.*: b9 e0 b0 69 [ ]*locfhrnl %r6,%r9
.*: b9 e0 c0 69 [ ]*locfhrle %r6,%r9
.*: b9 e0 d0 69 [ ]*locfhrnh %r6,%r9
.*: b9 e0 d0 69 [ ]*locfhrnh %r6,%r9
.*: b9 e0 e0 69 [ ]*locfhrno %r6,%r9
.*: eb 6d 98 f0 fd e0 [ ]*locfhnh %r6,-10000\(%r9\)
.*: eb 61 98 f0 fd e0 [ ]*locfho %r6,-10000\(%r9\)
.*: eb 62 98 f0 fd e0 [ ]*locfhh %r6,-10000\(%r9\)
.*: eb 62 98 f0 fd e0 [ ]*locfhh %r6,-10000\(%r9\)
.*: eb 63 98 f0 fd e0 [ ]*locfhnle %r6,-10000\(%r9\)
.*: eb 64 98 f0 fd e0 [ ]*locfhl %r6,-10000\(%r9\)
.*: eb 64 98 f0 fd e0 [ ]*locfhl %r6,-10000\(%r9\)
.*: eb 65 98 f0 fd e0 [ ]*locfhnhe %r6,-10000\(%r9\)
.*: eb 66 98 f0 fd e0 [ ]*locfhlh %r6,-10000\(%r9\)
.*: eb 67 98 f0 fd e0 [ ]*locfhne %r6,-10000\(%r9\)
.*: eb 67 98 f0 fd e0 [ ]*locfhne %r6,-10000\(%r9\)
.*: eb 68 98 f0 fd e0 [ ]*locfhe %r6,-10000\(%r9\)
.*: eb 68 98 f0 fd e0 [ ]*locfhe %r6,-10000\(%r9\)
.*: eb 69 98 f0 fd e0 [ ]*locfhnlh %r6,-10000\(%r9\)
.*: eb 6a 98 f0 fd e0 [ ]*locfhhe %r6,-10000\(%r9\)
.*: eb 6b 98 f0 fd e0 [ ]*locfhnl %r6,-10000\(%r9\)
.*: eb 6b 98 f0 fd e0 [ ]*locfhnl %r6,-10000\(%r9\)
.*: eb 6c 98 f0 fd e0 [ ]*locfhle %r6,-10000\(%r9\)
.*: eb 6d 98 f0 fd e0 [ ]*locfhnh %r6,-10000\(%r9\)
.*: eb 6d 98 f0 fd e0 [ ]*locfhnh %r6,-10000\(%r9\)
.*: eb 6e 98 f0 fd e0 [ ]*locfhno %r6,-10000\(%r9\)
.*: ec 6c 80 03 00 42 [ ]*lochile %r6,-32765
.*: ec 61 80 03 00 42 [ ]*lochio %r6,-32765
.*: ec 62 80 03 00 42 [ ]*lochih %r6,-32765
.*: ec 62 80 03 00 42 [ ]*lochih %r6,-32765
.*: ec 63 80 03 00 42 [ ]*lochinle %r6,-32765
.*: ec 64 80 03 00 42 [ ]*lochil %r6,-32765
.*: ec 64 80 03 00 42 [ ]*lochil %r6,-32765
.*: ec 65 80 03 00 42 [ ]*lochinhe %r6,-32765
.*: ec 66 80 03 00 42 [ ]*lochilh %r6,-32765
.*: ec 67 80 03 00 42 [ ]*lochine %r6,-32765
.*: ec 67 80 03 00 42 [ ]*lochine %r6,-32765
.*: ec 68 80 03 00 42 [ ]*lochie %r6,-32765
.*: ec 68 80 03 00 42 [ ]*lochie %r6,-32765
.*: ec 69 80 03 00 42 [ ]*lochinlh %r6,-32765
.*: ec 6a 80 03 00 42 [ ]*lochihe %r6,-32765
.*: ec 6b 80 03 00 42 [ ]*lochinl %r6,-32765
.*: ec 6b 80 03 00 42 [ ]*lochinl %r6,-32765
.*: ec 6c 80 03 00 42 [ ]*lochile %r6,-32765
.*: ec 6d 80 03 00 42 [ ]*lochinh %r6,-32765
.*: ec 6d 80 03 00 42 [ ]*lochinh %r6,-32765
.*: ec 6e 80 03 00 42 [ ]*lochino %r6,-32765
.*: ec 6c 80 03 00 46 [ ]*locghile %r6,-32765
.*: ec 61 80 03 00 46 [ ]*locghio %r6,-32765
.*: ec 62 80 03 00 46 [ ]*locghih %r6,-32765
.*: ec 62 80 03 00 46 [ ]*locghih %r6,-32765
.*: ec 63 80 03 00 46 [ ]*locghinle %r6,-32765
.*: ec 64 80 03 00 46 [ ]*locghil %r6,-32765
.*: ec 64 80 03 00 46 [ ]*locghil %r6,-32765
.*: ec 65 80 03 00 46 [ ]*locghinhe %r6,-32765
.*: ec 66 80 03 00 46 [ ]*locghilh %r6,-32765
.*: ec 67 80 03 00 46 [ ]*locghine %r6,-32765
.*: ec 67 80 03 00 46 [ ]*locghine %r6,-32765
.*: ec 68 80 03 00 46 [ ]*locghie %r6,-32765
.*: ec 68 80 03 00 46 [ ]*locghie %r6,-32765
.*: ec 69 80 03 00 46 [ ]*locghinlh %r6,-32765
.*: ec 6a 80 03 00 46 [ ]*locghihe %r6,-32765
.*: ec 6b 80 03 00 46 [ ]*locghinl %r6,-32765
.*: ec 6b 80 03 00 46 [ ]*locghinl %r6,-32765
.*: ec 6c 80 03 00 46 [ ]*locghile %r6,-32765
.*: ec 6d 80 03 00 46 [ ]*locghinh %r6,-32765
.*: ec 6d 80 03 00 46 [ ]*locghinh %r6,-32765
.*: ec 6e 80 03 00 46 [ ]*locghino %r6,-32765
.*: ec 6c 80 03 00 4e [ ]*lochhile %r6,-32765
.*: ec 61 80 03 00 4e [ ]*lochhio %r6,-32765
.*: ec 62 80 03 00 4e [ ]*lochhih %r6,-32765
.*: ec 62 80 03 00 4e [ ]*lochhih %r6,-32765
.*: ec 63 80 03 00 4e [ ]*lochhinle %r6,-32765
.*: ec 64 80 03 00 4e [ ]*lochhil %r6,-32765
.*: ec 64 80 03 00 4e [ ]*lochhil %r6,-32765
.*: ec 65 80 03 00 4e [ ]*lochhinhe %r6,-32765
.*: ec 66 80 03 00 4e [ ]*lochhilh %r6,-32765
.*: ec 67 80 03 00 4e [ ]*lochhine %r6,-32765
.*: ec 67 80 03 00 4e [ ]*lochhine %r6,-32765
.*: ec 68 80 03 00 4e [ ]*lochhie %r6,-32765
.*: ec 68 80 03 00 4e [ ]*lochhie %r6,-32765
.*: ec 69 80 03 00 4e [ ]*lochhinlh %r6,-32765
.*: ec 6a 80 03 00 4e [ ]*lochhihe %r6,-32765
.*: ec 6b 80 03 00 4e [ ]*lochhinl %r6,-32765
.*: ec 6b 80 03 00 4e [ ]*lochhinl %r6,-32765
.*: ec 6c 80 03 00 4e [ ]*lochhile %r6,-32765
.*: ec 6d 80 03 00 4e [ ]*lochhinh %r6,-32765
.*: ec 6d 80 03 00 4e [ ]*lochhinh %r6,-32765
.*: ec 6e 80 03 00 4e [ ]*lochhino %r6,-32765
.*: eb 6d 98 f0 fd e1 [ ]*stocfhnh %r6,-10000\(%r9\)
.*: eb 61 98 f0 fd e1 [ ]*stocfho %r6,-10000\(%r9\)
.*: eb 62 98 f0 fd e1 [ ]*stocfhh %r6,-10000\(%r9\)
.*: eb 62 98 f0 fd e1 [ ]*stocfhh %r6,-10000\(%r9\)
.*: eb 63 98 f0 fd e1 [ ]*stocfhnle %r6,-10000\(%r9\)
.*: eb 64 98 f0 fd e1 [ ]*stocfhl %r6,-10000\(%r9\)
.*: eb 64 98 f0 fd e1 [ ]*stocfhl %r6,-10000\(%r9\)
.*: eb 65 98 f0 fd e1 [ ]*stocfhnhe %r6,-10000\(%r9\)
.*: eb 66 98 f0 fd e1 [ ]*stocfhlh %r6,-10000\(%r9\)
.*: eb 67 98 f0 fd e1 [ ]*stocfhne %r6,-10000\(%r9\)
.*: eb 67 98 f0 fd e1 [ ]*stocfhne %r6,-10000\(%r9\)
.*: eb 68 98 f0 fd e1 [ ]*stocfhe %r6,-10000\(%r9\)
.*: eb 68 98 f0 fd e1 [ ]*stocfhe %r6,-10000\(%r9\)
.*: eb 69 98 f0 fd e1 [ ]*stocfhnlh %r6,-10000\(%r9\)
.*: eb 6a 98 f0 fd e1 [ ]*stocfhhe %r6,-10000\(%r9\)
.*: eb 6b 98 f0 fd e1 [ ]*stocfhnl %r6,-10000\(%r9\)
.*: eb 6b 98 f0 fd e1 [ ]*stocfhnl %r6,-10000\(%r9\)
.*: eb 6c 98 f0 fd e1 [ ]*stocfhle %r6,-10000\(%r9\)
.*: eb 6d 98 f0 fd e1 [ ]*stocfhnh %r6,-10000\(%r9\)
.*: eb 6d 98 f0 fd e1 [ ]*stocfhnh %r6,-10000\(%r9\)
.*: eb 6e 98 f0 fd e1 [ ]*stocfhno %r6,-10000\(%r9\)
.*: e3 69 b8 f0 fd 3a [ ]*llzrgf %r6,-10000\(%r9,%r11\)
.*: e3 69 b8 f0 fd 3b [ ]*lzrf %r6,-10000\(%r9,%r11\)
.*: e3 69 b8 f0 fd 2a [ ]*lzrg %r6,-10000\(%r9,%r11\)
.*: b9 ec 00 69 [ ]*ppno %r6,%r9

View file

@ -540,3 +540,137 @@ foo:
vftci %v15,%v17,4093,12,11
vftcidb %v15,%v17,4093
wftcidb %v15,%v17,4093
cdpt %f3,4000(251,%r6),12
cxpt %f1,4000(251,%r6),12
cpdt %f3,4000(251,%r6),12
cpxt %f1,4000(251,%r6),12
locfhr %r6,%r9,13
locfhro %r6,%r9
locfhrh %r6,%r9
locfhrp %r6,%r9
locfhrnle %r6,%r9
locfhrl %r6,%r9
locfhrm %r6,%r9
locfhrnhe %r6,%r9
locfhrlh %r6,%r9
locfhrne %r6,%r9
locfhrnz %r6,%r9
locfhre %r6,%r9
locfhrz %r6,%r9
locfhrnlh %r6,%r9
locfhrhe %r6,%r9
locfhrnl %r6,%r9
locfhrnm %r6,%r9
locfhrle %r6,%r9
locfhrnh %r6,%r9
locfhrnp %r6,%r9
locfhrno %r6,%r9
locfh %r6,-10000(%r9),13
locfho %r6,-10000(%r9)
locfhh %r6,-10000(%r9)
locfhp %r6,-10000(%r9)
locfhnle %r6,-10000(%r9)
locfhl %r6,-10000(%r9)
locfhm %r6,-10000(%r9)
locfhnhe %r6,-10000(%r9)
locfhlh %r6,-10000(%r9)
locfhne %r6,-10000(%r9)
locfhnz %r6,-10000(%r9)
locfhe %r6,-10000(%r9)
locfhz %r6,-10000(%r9)
locfhnlh %r6,-10000(%r9)
locfhhe %r6,-10000(%r9)
locfhnl %r6,-10000(%r9)
locfhnm %r6,-10000(%r9)
locfhle %r6,-10000(%r9)
locfhnh %r6,-10000(%r9)
locfhnp %r6,-10000(%r9)
locfhno %r6,-10000(%r9)
lochi %r6,-32765,12
lochio %r6,-32765
lochih %r6,-32765
lochip %r6,-32765
lochinle %r6,-32765
lochil %r6,-32765
lochim %r6,-32765
lochinhe %r6,-32765
lochilh %r6,-32765
lochine %r6,-32765
lochinz %r6,-32765
lochie %r6,-32765
lochiz %r6,-32765
lochinlh %r6,-32765
lochihe %r6,-32765
lochinl %r6,-32765
lochinm %r6,-32765
lochile %r6,-32765
lochinh %r6,-32765
lochinp %r6,-32765
lochino %r6,-32765
locghi %r6,-32765,12
locghio %r6,-32765
locghih %r6,-32765
locghip %r6,-32765
locghinle %r6,-32765
locghil %r6,-32765
locghim %r6,-32765
locghinhe %r6,-32765
locghilh %r6,-32765
locghine %r6,-32765
locghinz %r6,-32765
locghie %r6,-32765
locghiz %r6,-32765
locghinlh %r6,-32765
locghihe %r6,-32765
locghinl %r6,-32765
locghinm %r6,-32765
locghile %r6,-32765
locghinh %r6,-32765
locghinp %r6,-32765
locghino %r6,-32765
lochhi %r6,-32765,12
lochhio %r6,-32765
lochhih %r6,-32765
lochhip %r6,-32765
lochhinle %r6,-32765
lochhil %r6,-32765
lochhim %r6,-32765
lochhinhe %r6,-32765
lochhilh %r6,-32765
lochhine %r6,-32765
lochhinz %r6,-32765
lochhie %r6,-32765
lochhiz %r6,-32765
lochhinlh %r6,-32765
lochhihe %r6,-32765
lochhinl %r6,-32765
lochhinm %r6,-32765
lochhile %r6,-32765
lochhinh %r6,-32765
lochhinp %r6,-32765
lochhino %r6,-32765
stocfh %r6,-10000(%r9),13
stocfho %r6,-10000(%r9)
stocfhh %r6,-10000(%r9)
stocfhp %r6,-10000(%r9)
stocfhnle %r6,-10000(%r9)
stocfhl %r6,-10000(%r9)
stocfhm %r6,-10000(%r9)
stocfhnhe %r6,-10000(%r9)
stocfhlh %r6,-10000(%r9)
stocfhne %r6,-10000(%r9)
stocfhnz %r6,-10000(%r9)
stocfhe %r6,-10000(%r9)
stocfhz %r6,-10000(%r9)
stocfhnlh %r6,-10000(%r9)
stocfhhe %r6,-10000(%r9)
stocfhnl %r6,-10000(%r9)
stocfhnm %r6,-10000(%r9)
stocfhle %r6,-10000(%r9)
stocfhnh %r6,-10000(%r9)
stocfhnp %r6,-10000(%r9)
stocfhno %r6,-10000(%r9)
llzrgf %r6,-10000(%r9,%r11)
lzrf %r6,-10000(%r9,%r11)
lzrg %r6,-10000(%r9,%r11)
ppno %r6,%r9

View file

@ -1,3 +1,8 @@
2015-03-10 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
* s390-opc.c: Add new IBM z13 instructions.
* s390-opc.txt: Likewise.
2015-03-10 Renlin Li <renlin.li@arm.com>
* aarch64-tbl.h (aarch64_opcode_table): Remove strub, ldurb, ldursb,

View file

@ -311,6 +311,7 @@ const struct s390_operand s390_operands[] =
#define INSTR_RIE_R0I0 6, { R_8,I16_16,0,0,0,0 } /* e.g. citne */
#define INSTR_RIE_R0UU 6, { R_8,U16_16,U4_32,0,0,0 } /* e.g. clfit */
#define INSTR_RIE_R0U0 6, { R_8,U16_16,0,0,0,0 } /* e.g. clfitne */
#define INSTR_RIE_RUI0 6, { R_8,I16_16,U4_12,0,0,0 } /* e.g. lochi */
#define INSTR_RIE_RRUUU 6, { R_8,R_12,U8_16,U8_24,U8_32,0 } /* e.g. rnsbg */
#define INSTR_RIL_0P 6, { J32_16,0,0,0,0 } /* e.g. jg */
#define INSTR_RIL_RP 6, { R_8,J32_16,0,0,0,0 } /* e.g. brasl */
@ -515,6 +516,7 @@ const struct s390_operand s390_operands[] =
#define MASK_RIE_R0I0 { 0xff, 0x0f, 0x00, 0x00, 0xff, 0xff }
#define MASK_RIE_R0UU { 0xff, 0x0f, 0x00, 0x00, 0x0f, 0xff }
#define MASK_RIE_R0U0 { 0xff, 0x0f, 0x00, 0x00, 0xff, 0xff }
#define MASK_RIE_RUI0 { 0xff, 0x00, 0x00, 0x00, 0xff, 0xff }
#define MASK_RIE_RRUUU { 0xff, 0x00, 0x00, 0x00, 0x00, 0xff }
#define MASK_RIL_0P { 0xff, 0xff, 0x00, 0x00, 0x00, 0x00 }
#define MASK_RIL_RP { 0xff, 0x0f, 0x00, 0x00, 0x00, 0x00 }

View file

@ -1656,3 +1656,26 @@ e700000830e2 wfsdb VRR_VVV "vector fp subtract" z13 zarch
e7000000004a vftci VRI_VVUUU "vector fp test data class immediate" z13 zarch
e7000000304a vftcidb VRI_VVU2 "vector fp test data class immediate" z13 zarch
e7000008304a wftcidb VRI_VVU2 "vector fp test data class immediate" z13 zarch
ed00000000ae cdpt RSL_LRDFU "convert from packed to long dfp" z13 zarch
ed00000000af cxpt RSL_LRDFEU "convert from packed to extended dfp" z13 zarch
ed00000000ac cpdt RSL_LRDFU "convert from long dfp to packed" z13 zarch
ed00000000ad cpxt RSL_LRDFEU "convert from extended dfp to packed" z13 zarch
b9e0 locfhr RRF_U0RR "load high on condition from gpr" z13 zarch
b9e000000000 locfhr*16 RRF_00RR "load high on condition from gpr" z13 zarch
eb00000000e0 locfh RSY_RURD2 "load high on condition from memory" z13 zarch
eb00000000e0 locfh*12 RSY_R0RD "load high on condition from memory" z13 zarch
ec0000000042 lochi RIE_RUI0 "load halfword immediate on condition into 32 bit gpr" z13 zarch
ec0000000042 lochi*12 RIE_R0I0 "load halfword immediate on condition into 32 bit gpr" z13 zarch
ec0000000046 locghi RIE_RUI0 "load halfword immediate on condition into 64 bit gpr" z13 zarch
ec0000000046 locghi*12 RIE_R0I0 "load halfword immediate on condition into 64 bit gpr" z13 zarch
ec000000004e lochhi RIE_RUI0 "load halfword high immediate on condition" z13 zarch
ec000000004e lochhi*12 RIE_R0I0 "load halfword high immediate on condition" z13 zarch
eb00000000e1 stocfh RSY_RURD2 "store high on condition" z13 zarch
eb00000000e1 stocfh*12 RSY_R0RD "store high on condition" z13 zarch
e3000000003a llzrgf RXY_RRRD "load logical and zero rightmost bytes 32->64" z13 zarch
e3000000003b lzrf RXY_RRRD "load and zero rightmost byte 32->32" z13 zarch
e3000000002a lzrg RXY_RRRD "load and zero rightmost byte 64->64" z13 zarch
b9ec ppno RRE_RR "perform pseudorandom number operation" z13 zarch