return "niai";
}
+static const HChar *
+s390_irgen_PPA(UChar m3, UChar r1, UChar r2)
+{
+ /* Treat as a no-op. m3 could indicate one of the following:
+ 1: transaction-abort assist -- fine, we don't support transactions
+ 15: in-order-execution assist -- we don't claim support */
+ return "ppa";
+}
+
/* New insns are added here.
If an insn is contingent on a facility being installed also
check whether function do_extension_STFLE needs updating. */
case 0xb2e1: /* SPCTR */ goto unimplemented;
case 0xb2e4: /* ECCTR */ goto unimplemented;
case 0xb2e5: /* EPCTR */ goto unimplemented;
- case 0xb2e8: /* PPA */ goto unimplemented;
+ case 0xb2e8: s390_format_RRFa_U0RR(s390_irgen_PPA, RRF2_m3(ovl),
+ RRF2_r1(ovl), RRF2_r2(ovl)); goto ok;
case 0xb2ec: /* ETND */ goto unimplemented;
case 0xb2ed: /* ECPGA */ goto unimplemented;
case 0xb2f8: /* TEND */ goto unimplemented;
/* 44: PFPO, not fully supported */
| S390_SETBITS(45, 47)
/* 48: DFP zoned-conversion, not supported */
- /* 49: includes PPA, not supported */
+ | S390_SETBITS(49, 49)
/* 50: constrained transactional-execution, not supported */
| S390_SETBITS(51, 55)
/* 56: unassigned */
tend,"transaction end","not implemented",zEC12,
bpp,"branch prediction preload",implemented,zEC12,
bprp,"branch prediction relative preload",implemented,zEC12,
-ppa,"perform processor assist","not implemented",zEC12,
+ppa,"perform processor assist",implemented,zEC12,
niai,"next instruction access intent",implemented,zEC12,
crdte,"compare and replace DAT table entry",N/A,"privileged instruction"
lat,"load and trap 32 bit",implemented,zEC12,
msa8 --> message-security-assist extension 8
msa9 --> message-security-assist extension 9
nnpa --> neural-network-processing-assist facility
+ ppa --> processor-assist facility
pfpo --> PFPO facility
popc --> population-count facility == lsc
stckf --> STCKF facility
"pcc", // msa4
// plo not implemented
- // ppa not implemented
+ "ppa r1,r2,m3:{1,15}", // ppa no spec exception for m3
"ppno r1,r2", // msa5
"prno r1,r2", // msa5